Added H100 support for CUDA 11.8 precompiled binaries.
This commit is contained in:
parent
817bdf6325
commit
7b6cfe1738
|
@ -258,3 +258,9 @@ Bug fixes:
|
|||
|
||||
Deprecated:
|
||||
- Binaries for CUDA 11.2, 11.6 no longer ship with `pip install bitsandbytes` and need to be compiled from source.
|
||||
|
||||
|
||||
### 0.40.1
|
||||
|
||||
Features:
|
||||
- Added precompiled CUDA 11.8 binaries to support H100 GPUs without compilation #571
|
||||
|
|
10
Makefile
10
Makefile
|
@ -80,6 +80,11 @@ cuda11x_nomatmul: $(BUILD_DIR) env
|
|||
$(NVCC) $(COMPUTE_CAPABILITY) $(CC_CUDA11x) -Xcompiler '-fPIC' -dlink $(BUILD_DIR)/ops.o $(BUILD_DIR)/kernels.o -o $(BUILD_DIR)/link.o
|
||||
$(GPP) -std=c++14 -DBUILD_CUDA -shared -fPIC $(INCLUDE) $(BUILD_DIR)/ops.o $(BUILD_DIR)/kernels.o $(BUILD_DIR)/link.o $(FILES_CPP) -o ./bitsandbytes/libbitsandbytes_cuda$(CUDA_VERSION)_nocublaslt.so $(LIB)
|
||||
|
||||
cuda118_nomatmul: $(BUILD_DIR) env
|
||||
$(NVCC) $(COMPUTE_CAPABILITY) $(CC_CUDA11x) $(CC_ADA_HOPPER) -Xcompiler '-fPIC' --use_fast_math -Xptxas=-v -dc $(FILES_CUDA) $(INCLUDE) $(LIB) --output-directory $(BUILD_DIR) -D NO_CUBLASLT
|
||||
$(NVCC) $(COMPUTE_CAPABILITY) $(CC_CUDA11x) $(CC_ADA_HOPPER) -Xcompiler '-fPIC' -dlink $(BUILD_DIR)/ops.o $(BUILD_DIR)/kernels.o -o $(BUILD_DIR)/link.o
|
||||
$(GPP) -std=c++14 -DBUILD_CUDA -shared -fPIC $(INCLUDE) $(BUILD_DIR)/ops.o $(BUILD_DIR)/kernels.o $(BUILD_DIR)/link.o $(FILES_CPP) -o ./bitsandbytes/libbitsandbytes_cuda$(CUDA_VERSION)_nocublaslt.so $(LIB)
|
||||
|
||||
cuda12x_nomatmul: $(BUILD_DIR) env
|
||||
$(NVCC) $(COMPUTE_CAPABILITY) $(CC_CUDA11x) $(CC_ADA_HOPPER) -Xcompiler '-fPIC' --use_fast_math -Xptxas=-v -dc $(FILES_CUDA) $(INCLUDE) $(LIB) --output-directory $(BUILD_DIR) -D NO_CUBLASLT
|
||||
$(NVCC) $(COMPUTE_CAPABILITY) $(CC_CUDA11x) $(CC_ADA_HOPPER) -Xcompiler '-fPIC' -dlink $(BUILD_DIR)/ops.o $(BUILD_DIR)/kernels.o -o $(BUILD_DIR)/link.o
|
||||
|
@ -95,6 +100,11 @@ cuda11x: $(BUILD_DIR) env
|
|||
$(NVCC) $(CC_cublasLt111) -Xcompiler '-fPIC' -dlink $(BUILD_DIR)/ops.o $(BUILD_DIR)/kernels.o -o $(BUILD_DIR)/link.o
|
||||
$(GPP) -std=c++14 -DBUILD_CUDA -shared -fPIC $(INCLUDE) $(BUILD_DIR)/ops.o $(BUILD_DIR)/kernels.o $(BUILD_DIR)/link.o $(FILES_CPP) -o ./bitsandbytes/libbitsandbytes_cuda$(CUDA_VERSION).so $(LIB)
|
||||
|
||||
cuda118: $(BUILD_DIR) env
|
||||
$(NVCC) $(CC_cublasLt111) $(CC_ADA_HOPPER) -Xcompiler '-fPIC' --use_fast_math -Xptxas=-v -dc $(FILES_CUDA) $(INCLUDE) $(LIB) --output-directory $(BUILD_DIR)
|
||||
$(NVCC) $(CC_cublasLt111) $(CC_ADA_HOPPER) -Xcompiler '-fPIC' -dlink $(BUILD_DIR)/ops.o $(BUILD_DIR)/kernels.o -o $(BUILD_DIR)/link.o
|
||||
$(GPP) -std=c++14 -DBUILD_CUDA -shared -fPIC $(INCLUDE) $(BUILD_DIR)/ops.o $(BUILD_DIR)/kernels.o $(BUILD_DIR)/link.o $(FILES_CPP) -o ./bitsandbytes/libbitsandbytes_cuda$(CUDA_VERSION).so $(LIB)
|
||||
|
||||
cuda12x: $(BUILD_DIR) env
|
||||
$(NVCC) $(CC_cublasLt111) $(CC_ADA_HOPPER) -Xcompiler '-fPIC' --use_fast_math -Xptxas=-v -dc $(FILES_CUDA) $(INCLUDE) $(LIB) --output-directory $(BUILD_DIR)
|
||||
$(NVCC) $(CC_cublasLt111) $(CC_ADA_HOPPER) -Xcompiler '-fPIC' -dlink $(BUILD_DIR)/ops.o $(BUILD_DIR)/kernels.o -o $(BUILD_DIR)/link.o
|
||||
|
|
138
deploy.sh
138
deploy.sh
|
@ -10,77 +10,77 @@ if [[ ! -z "${LD_LIBRARY_PATH}" ]]; then
|
|||
fi
|
||||
|
||||
|
||||
#module unload cuda && echo "no module function available. Probably not on a slurm cluster."
|
||||
#module unload gcc && echo "no module function available. Probably not on a slurm cluster."
|
||||
#
|
||||
#rm -rf dist build
|
||||
#make cleaneggs
|
||||
#make cleanlibs
|
||||
#
|
||||
#make clean
|
||||
#export CUDA_HOME=
|
||||
#export CUDA_VERSION=
|
||||
#make cpuonly CUDA_VERSION="CPU"
|
||||
#
|
||||
#if [ ! -f "./bitsandbytes/libbitsandbytes_cpu.so" ]; then
|
||||
# # Control will enter here if $DIRECTORY doesn't exist.
|
||||
# echo "Compilation unsuccessul!" 1>&2
|
||||
# exit 64
|
||||
#fi
|
||||
#
|
||||
#make clean
|
||||
#export CUDA_HOME=$BASE_PATH/cuda-11.0
|
||||
#make cuda110 CUDA_VERSION=110
|
||||
#
|
||||
#if [ ! -f "./bitsandbytes/libbitsandbytes_cuda110.so" ]; then
|
||||
# # Control will enter here if $DIRECTORY doesn't exist.
|
||||
# echo "Compilation unsuccessul!" 1>&2
|
||||
# exit 64
|
||||
#fi
|
||||
#
|
||||
#make clean
|
||||
#export CUDA_HOME=$BASE_PATH/cuda-11.1
|
||||
#make cuda11x CUDA_VERSION=111
|
||||
#
|
||||
#if [ ! -f "./bitsandbytes/libbitsandbytes_cuda111.so" ]; then
|
||||
# # Control will enter here if $DIRECTORY doesn't exist.
|
||||
# echo "Compilation unsuccessul!" 1>&2
|
||||
# exit 64
|
||||
#fi
|
||||
#
|
||||
#make clean
|
||||
#export CUDA_HOME=$BASE_PATH/cuda-11.4
|
||||
#make cuda11x CUDA_VERSION=114
|
||||
#
|
||||
#if [ ! -f "./bitsandbytes/libbitsandbytes_cuda114.so" ]; then
|
||||
# # Control will enter here if $DIRECTORY doesn't exist.
|
||||
# echo "Compilation unsuccessul!" 1>&2
|
||||
# exit 64
|
||||
#fi
|
||||
#
|
||||
#make clean
|
||||
#export CUDA_HOME=$BASE_PATH/cuda-11.5
|
||||
#make cuda11x CUDA_VERSION=115
|
||||
#
|
||||
#if [ ! -f "./bitsandbytes/libbitsandbytes_cuda115.so" ]; then
|
||||
# # Control will enter here if $DIRECTORY doesn't exist.
|
||||
# echo "Compilation unsuccessul!" 1>&2
|
||||
# exit 64
|
||||
#fi
|
||||
#
|
||||
#make clean
|
||||
#export CUDA_HOME=$BASE_PATH/cuda-11.7
|
||||
#make cuda11x CUDA_VERSION=117
|
||||
#
|
||||
#if [ ! -f "./bitsandbytes/libbitsandbytes_cuda117.so" ]; then
|
||||
# # Control will enter here if $DIRECTORY doesn't exist.
|
||||
# echo "Compilation unsuccessul!" 1>&2
|
||||
# exit 64
|
||||
#fi
|
||||
module unload cuda && echo "no module function available. Probably not on a slurm cluster."
|
||||
module unload gcc && echo "no module function available. Probably not on a slurm cluster."
|
||||
|
||||
rm -rf dist build
|
||||
make cleaneggs
|
||||
make cleanlibs
|
||||
|
||||
make clean
|
||||
export CUDA_HOME=
|
||||
export CUDA_VERSION=
|
||||
make cpuonly CUDA_VERSION="CPU"
|
||||
|
||||
if [ ! -f "./bitsandbytes/libbitsandbytes_cpu.so" ]; then
|
||||
# Control will enter here if $DIRECTORY doesn't exist.
|
||||
echo "Compilation unsuccessul!" 1>&2
|
||||
exit 64
|
||||
fi
|
||||
|
||||
make clean
|
||||
export CUDA_HOME=$BASE_PATH/cuda-11.0
|
||||
make cuda110 CUDA_VERSION=110
|
||||
|
||||
if [ ! -f "./bitsandbytes/libbitsandbytes_cuda110.so" ]; then
|
||||
# Control will enter here if $DIRECTORY doesn't exist.
|
||||
echo "Compilation unsuccessul!" 1>&2
|
||||
exit 64
|
||||
fi
|
||||
|
||||
make clean
|
||||
export CUDA_HOME=$BASE_PATH/cuda-11.1
|
||||
make cuda11x CUDA_VERSION=111
|
||||
|
||||
if [ ! -f "./bitsandbytes/libbitsandbytes_cuda111.so" ]; then
|
||||
# Control will enter here if $DIRECTORY doesn't exist.
|
||||
echo "Compilation unsuccessul!" 1>&2
|
||||
exit 64
|
||||
fi
|
||||
|
||||
make clean
|
||||
export CUDA_HOME=$BASE_PATH/cuda-11.4
|
||||
make cuda11x CUDA_VERSION=114
|
||||
|
||||
if [ ! -f "./bitsandbytes/libbitsandbytes_cuda114.so" ]; then
|
||||
# Control will enter here if $DIRECTORY doesn't exist.
|
||||
echo "Compilation unsuccessul!" 1>&2
|
||||
exit 64
|
||||
fi
|
||||
|
||||
make clean
|
||||
export CUDA_HOME=$BASE_PATH/cuda-11.5
|
||||
make cuda11x CUDA_VERSION=115
|
||||
|
||||
if [ ! -f "./bitsandbytes/libbitsandbytes_cuda115.so" ]; then
|
||||
# Control will enter here if $DIRECTORY doesn't exist.
|
||||
echo "Compilation unsuccessul!" 1>&2
|
||||
exit 64
|
||||
fi
|
||||
|
||||
make clean
|
||||
export CUDA_HOME=$BASE_PATH/cuda-11.7
|
||||
make cuda11x CUDA_VERSION=117
|
||||
|
||||
if [ ! -f "./bitsandbytes/libbitsandbytes_cuda117.so" ]; then
|
||||
# Control will enter here if $DIRECTORY doesn't exist.
|
||||
echo "Compilation unsuccessul!" 1>&2
|
||||
exit 64
|
||||
fi
|
||||
|
||||
make clean
|
||||
export CUDA_HOME=$BASE_PATH/cuda-11.8
|
||||
make cuda12x CUDA_VERSION=118
|
||||
make cuda118 CUDA_VERSION=118
|
||||
|
||||
if [ ! -f "./bitsandbytes/libbitsandbytes_cuda118.so" ]; then
|
||||
# Control will enter here if $DIRECTORY doesn't exist.
|
||||
|
@ -172,7 +172,7 @@ fi
|
|||
|
||||
make clean
|
||||
export CUDA_HOME=$BASE_PATH/cuda-11.8
|
||||
make cuda12x_nomatmul CUDA_VERSION=118
|
||||
make cuda118_nomatmul CUDA_VERSION=118
|
||||
|
||||
if [ ! -f "./bitsandbytes/libbitsandbytes_cuda118_nocublaslt.so" ]; then
|
||||
# Control will enter here if $DIRECTORY doesn't exist.
|
||||
|
|
Loading…
Reference in New Issue
Block a user