Skip to content

Commit f217c6a

Browse files
authored
Enable nightly CUDA 11.8 builds (#1206)
* enable nightly builds for CUDA 11.8 * add CUDA 11.8 version to manywheel, remove 11.3 and 11.5
1 parent 5ad0c99 commit f217c6a

File tree

2 files changed

+62
-1
lines changed

2 files changed

+62
-1
lines changed

conda/pytorch-nightly/build.sh

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -69,6 +69,13 @@ if [[ -n "$build_with_cuda" ]]; then
6969
export USE_STATIC_CUDNN=0
7070
#for cuda 11.7 include all dynamic loading libraries
7171
DEPS_LIST=(/usr/local/cuda/lib64/libcudnn*.so.8 /usr/local/cuda-11.7/extras/CUPTI/lib64/libcupti.so.11.7)
72+
elif [[ $CUDA_VERSION == 11.8* ]]; then
73+
export TORCH_CUDA_ARCH_LIST="$TORCH_CUDA_ARCH_LIST;6.0;6.1;7.0;7.5;8.0;8.6"
74+
#for cuda 11.8 we use cudnn 8.5
75+
#which does not have single static libcudnn_static.a deliverable to link with
76+
export USE_STATIC_CUDNN=0
77+
#for cuda 11.8 include all dynamic loading libraries
78+
DEPS_LIST=(/usr/local/cuda/lib64/libcudnn*.so.8 /usr/local/cuda-11.8/extras/CUPTI/lib64/libcupti.so.11.8)
7279
fi
7380
export NCCL_ROOT_DIR=/usr/local/cuda
7481
export USE_STATIC_NCCL=1 # links nccl statically (driven by tools/setup_helpers/nccl.py, some of the NCCL cmake files such as FindNCCL.cmake and gloo/FindNCCL.cmake)

manywheel/build_cuda.sh

Lines changed: 55 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -58,7 +58,7 @@ cuda_version_nodot=$(echo $CUDA_VERSION | tr -d '.')
5858

5959
TORCH_CUDA_ARCH_LIST="3.7;5.0;6.0;7.0"
6060
case ${CUDA_VERSION} in
61-
11.[3567])
61+
11.[678])
6262
TORCH_CUDA_ARCH_LIST="${TORCH_CUDA_ARCH_LIST};7.5;8.0;8.6"
6363
EXTRA_CAFFE2_CMAKE_FLAGS+=("-DATEN_NO_TEST=ON")
6464
;;
@@ -196,6 +196,60 @@ elif [[ $CUDA_VERSION == "11.7" ]]; then
196196
export LIB_SO_RPATH=$CUDA_RPATHS':$ORIGIN'
197197
export FORCE_RPATH="--force-rpath"
198198
fi
199+
elif [[ $CUDA_VERSION == "11.8" ]]; then
200+
export USE_STATIC_CUDNN=0
201+
# Try parallelizing nvcc as well
202+
export TORCH_NVCC_FLAGS="-Xfatbin -compress-all --threads 2"
203+
DEPS_LIST=(
204+
"/usr/local/cuda/lib64/libcudart.so.11.0"
205+
"/usr/local/cuda/lib64/libnvToolsExt.so.1"
206+
"/usr/local/cuda/lib64/libnvrtc.so.11.2" # this is not a mistake for 11.8, it links to 11.8.89
207+
"/usr/local/cuda/lib64/libnvrtc-builtins.so.11.8"
208+
"$LIBGOMP_PATH"
209+
)
210+
DEPS_SONAME=(
211+
"libcudart.so.11.0"
212+
"libnvToolsExt.so.1"
213+
"libnvrtc.so.11.2"
214+
"libnvrtc-builtins.so.11.8"
215+
"libgomp.so.1"
216+
)
217+
218+
if [[ -z "$PYTORCH_EXTRA_INSTALL_REQUIREMENTS" ]]; then
219+
echo "Bundling with cudnn and cublas."
220+
DEPS_LIST+=(
221+
"/usr/local/cuda/lib64/libcudnn_adv_infer.so.8"
222+
"/usr/local/cuda/lib64/libcudnn_adv_train.so.8"
223+
"/usr/local/cuda/lib64/libcudnn_cnn_infer.so.8"
224+
"/usr/local/cuda/lib64/libcudnn_cnn_train.so.8"
225+
"/usr/local/cuda/lib64/libcudnn_ops_infer.so.8"
226+
"/usr/local/cuda/lib64/libcudnn_ops_train.so.8"
227+
"/usr/local/cuda/lib64/libcudnn.so.8"
228+
"/usr/local/cuda/lib64/libcublas.so.11"
229+
"/usr/local/cuda/lib64/libcublasLt.so.11"
230+
)
231+
DEPS_SONAME+=(
232+
"libcudnn_adv_infer.so.8"
233+
"libcudnn_adv_train.so.8"
234+
"libcudnn_cnn_infer.so.8"
235+
"libcudnn_cnn_train.so.8"
236+
"libcudnn_ops_infer.so.8"
237+
"libcudnn_ops_train.so.8"
238+
"libcudnn.so.8"
239+
"libcublas.so.11"
240+
"libcublasLt.so.11"
241+
)
242+
else
243+
echo "Using cudnn and cublas from pypi."
244+
CUDA_RPATHS=(
245+
'$ORIGIN/../../nvidia/cublas/lib'
246+
'$ORIGIN/../../nvidia/cudnn/lib'
247+
)
248+
CUDA_RPATHS=$(IFS=: ; echo "${CUDA_RPATHS[*]}")
249+
export C_SO_RPATH=$CUDA_RPATHS':$ORIGIN:$ORIGIN/lib'
250+
export LIB_SO_RPATH=$CUDA_RPATHS':$ORIGIN'
251+
export FORCE_RPATH="--force-rpath"
252+
fi
199253
else
200254
echo "Unknown cuda version $CUDA_VERSION"
201255
exit 1

0 commit comments

Comments
 (0)