diff --git a/configure b/configure index 662dd77e..f3f19158 100755 --- a/configure +++ b/configure @@ -10480,7 +10480,7 @@ LIBS="$SAVE_LIBS" CPPFLAGS="$SAVE_CPPFLAGS" - if test "x$pac_cv_have_cuda" == "xyes"; then + if test "x$pac_cv_have_cuda" == "xyes"; then ac_ext=c ac_cpp='$CPP $CPPFLAGS' @@ -10613,19 +10613,38 @@ ac_compiler_gnu=$ac_cv_c_compiler_gnu LIBS="$SAVE_LIBS" CPPFLAGS="$SAVE_CPPFLAGS" - PSB_HAVE_CUDA="yes"; - PSB_CUDA_VERSION="$pac_cv_cuda_version"; - PSB_CUDA_SHORT_VERSION=$(expr $pac_cv_cuda_version / 1000); - CUDA_DEFINES="-DPSB_HAVE_CUDA -DPSB_CUDA_SHORT_VERSION=${PSB_CUDA_SHORT_VERSION} -DPSB_CUDA_VERSION=${PSB_CUDA_VERSION}"; - CHAVECUDA="#define PSB_HAVE_CUDA" - CSHORTVCUDA="#define PSB_CUDA_SHORT_VERSION ${PSB_CUDA_SHORT_VERSION}" - CVERSIONCUDA="#define PSB_CUDA_VERSION ${PSB_CUDA_VERSION}" - SPGPU_LIBS="-lspgpu"; - CUDAD=cudad; - CUDALD=cudald; - LCUDA="-lpsb_cuda"; - EXTRALDLIBS="-lstdc++"; - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: At this point GPUTARGET is $CUDAD $CUDALD" >&5 + PSB_CUDA_VERSION="$pac_cv_cuda_version"; + if (( ${PSB_CUDA_VERSION} > 12080 )); then + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: Unsupported CUDA version ${PSB_CUDA_VERSION} disabling CUDA" >&5 +printf "%s\n" "$as_me: Unsupported CUDA version ${PSB_CUDA_VERSION} disabling CUDA" >&6;} + pac_cv_cuda="no"; + PSB_HAVE_CUDA="no"; + CUDA_CC=""; + SPGPU_LIBS=""; + CUDAD=""; + CUDALD=""; + CUDEFINES=""; + CUDA_DEFINES=""; + CUDA_INCLUDES=""; + CUDA_LIBS=""; + FCUDEFINES=""; + CCUDEFINES=""; + CXXCUDEFINES=""; + else + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: CUDA version ${PSB_CUDA_VERSION}" >&5 +printf "%s\n" "$as_me: CUDA version ${PSB_CUDA_VERSION}" >&6;} + PSB_HAVE_CUDA="yes"; + PSB_CUDA_SHORT_VERSION=$(expr $pac_cv_cuda_version / 1000); + CUDA_DEFINES="-DPSB_HAVE_CUDA -DPSB_CUDA_SHORT_VERSION=${PSB_CUDA_SHORT_VERSION} -DPSB_CUDA_VERSION=${PSB_CUDA_VERSION}"; + CHAVECUDA="#define PSB_HAVE_CUDA" + CSHORTVCUDA="#define PSB_CUDA_SHORT_VERSION ${PSB_CUDA_SHORT_VERSION}" + CVERSIONCUDA="#define PSB_CUDA_VERSION ${PSB_CUDA_VERSION}" + SPGPU_LIBS="-lspgpu"; + CUDAD=cudad; + CUDALD=cudald; + LCUDA="-lpsb_cuda"; + EXTRALDLIBS="-lstdc++"; + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: At this point GPUTARGET is $CUDAD $CUDALD" >&5 printf "%s\n" "$as_me: At this point GPUTARGET is $CUDAD $CUDALD" >&6;} @@ -10639,21 +10658,22 @@ else $as_nop fi - if test "x$pac_cv_cudacc" == "x"; then - pac_cv_cudacc="50,60,70,75,80,86"; - CUDA_CC="$pac_cv_cudacc"; - fi - if (( $pac_cv_cuda_version >= 11070 )) - then - CUDEFINES="--dopt=on"; - fi - for cc in `echo $pac_cv_cudacc|sed 's/,/ /gi'` - do - CUDEFINES="$CUDEFINES -gencode arch=compute_$cc,code=sm_$cc"; - done - if test "x$pac_cv_cuda_version" != "xunknown"; then - FCUDEFINES=" ${CUDA_DEFINES}" - fi + if test "x$pac_cv_cudacc" == "x"; then + pac_cv_cudacc="50,60,70,75,80,86"; + CUDA_CC="$pac_cv_cudacc"; + fi + if (( $pac_cv_cuda_version >= 11070 )) + then + CUDEFINES="--dopt=on"; + fi + for cc in `echo $pac_cv_cudacc|sed 's/,/ /gi'` + do + CUDEFINES="$CUDEFINES -gencode arch=compute_$cc,code=sm_$cc"; + done + if test "x$pac_cv_cuda_version" != "xunknown"; then + FCUDEFINES=" ${CUDA_DEFINES}" + fi + fi fi fi fi diff --git a/configure.ac b/configure.ac index d30c33f1..3e43913a 100644 --- a/configure.ac +++ b/configure.ac @@ -844,44 +844,62 @@ if test "x$pac_cv_ipk_size" != "x4"; then CXXCUDEFINES=""; else - PAC_CHECK_CUDA() - - if test "x$pac_cv_have_cuda" == "xyes"; then + PAC_CHECK_CUDA() + + if test "x$pac_cv_have_cuda" == "xyes"; then PAC_CHECK_CUDA_VERSION() dnl PAC_CHECK_SPGPU() - PSB_HAVE_CUDA="yes"; PSB_CUDA_VERSION="$pac_cv_cuda_version"; - PSB_CUDA_SHORT_VERSION=$(expr $pac_cv_cuda_version / 1000); - CUDA_DEFINES="-DPSB_HAVE_CUDA -DPSB_CUDA_SHORT_VERSION=${PSB_CUDA_SHORT_VERSION} -DPSB_CUDA_VERSION=${PSB_CUDA_VERSION}"; - CHAVECUDA="#define PSB_HAVE_CUDA" - CSHORTVCUDA="#define PSB_CUDA_SHORT_VERSION ${PSB_CUDA_SHORT_VERSION}" - CVERSIONCUDA="#define PSB_CUDA_VERSION ${PSB_CUDA_VERSION}" - SPGPU_LIBS="-lspgpu"; - CUDAD=cudad; - CUDALD=cudald; - LCUDA="-lpsb_cuda"; - EXTRALDLIBS="-lstdc++"; - AC_MSG_NOTICE([At this point GPUTARGET is $CUDAD $CUDALD]) - - PAC_ARG_WITH_CUDACC() - if test "x$pac_cv_cudacc" == "x"; then - pac_cv_cudacc="50,60,70,75,80,86"; - CUDA_CC="$pac_cv_cudacc"; - fi - if (( $pac_cv_cuda_version >= 11070 )) - then - CUDEFINES="--dopt=on"; - fi - for cc in `echo $pac_cv_cudacc|sed 's/,/ /gi'` - do - CUDEFINES="$CUDEFINES -gencode arch=compute_$cc,code=sm_$cc"; - done - if test "x$pac_cv_cuda_version" != "xunknown"; then - dnl CUDEFINES="$CUDEFINES ${CUDA_DEFINES}" - FCUDEFINES=" ${CUDA_DEFINES}" - dnl CCUDEFINES=" ${CUDA_DEFINES}" - dnl CXXCUDEFINES=" ${CUDA_DEFINES}" + if (( ${PSB_CUDA_VERSION} > 12080 )); then + AC_MSG_NOTICE([Unsupported CUDA version ${PSB_CUDA_VERSION} disabling CUDA]) + pac_cv_cuda="no"; + PSB_HAVE_CUDA="no"; + CUDA_CC=""; + SPGPU_LIBS=""; + CUDAD=""; + CUDALD=""; + CUDEFINES=""; + CUDA_DEFINES=""; + CUDA_INCLUDES=""; + CUDA_LIBS=""; + FCUDEFINES=""; + CCUDEFINES=""; + CXXCUDEFINES=""; + else + AC_MSG_NOTICE([CUDA version ${PSB_CUDA_VERSION}]) + PSB_HAVE_CUDA="yes"; + PSB_CUDA_SHORT_VERSION=$(expr $pac_cv_cuda_version / 1000); + CUDA_DEFINES="-DPSB_HAVE_CUDA -DPSB_CUDA_SHORT_VERSION=${PSB_CUDA_SHORT_VERSION} -DPSB_CUDA_VERSION=${PSB_CUDA_VERSION}"; + CHAVECUDA="#define PSB_HAVE_CUDA" + CSHORTVCUDA="#define PSB_CUDA_SHORT_VERSION ${PSB_CUDA_SHORT_VERSION}" + CVERSIONCUDA="#define PSB_CUDA_VERSION ${PSB_CUDA_VERSION}" + SPGPU_LIBS="-lspgpu"; + CUDAD=cudad; + CUDALD=cudald; + LCUDA="-lpsb_cuda"; + EXTRALDLIBS="-lstdc++"; + AC_MSG_NOTICE([At this point GPUTARGET is $CUDAD $CUDALD]) + + PAC_ARG_WITH_CUDACC() + if test "x$pac_cv_cudacc" == "x"; then + pac_cv_cudacc="50,60,70,75,80,86"; + CUDA_CC="$pac_cv_cudacc"; + fi + if (( $pac_cv_cuda_version >= 11070 )) + then + CUDEFINES="--dopt=on"; + fi + for cc in `echo $pac_cv_cudacc|sed 's/,/ /gi'` + do + CUDEFINES="$CUDEFINES -gencode arch=compute_$cc,code=sm_$cc"; + done + if test "x$pac_cv_cuda_version" != "xunknown"; then + dnl CUDEFINES="$CUDEFINES ${CUDA_DEFINES}" + FCUDEFINES=" ${CUDA_DEFINES}" + dnl CCUDEFINES=" ${CUDA_DEFINES}" + dnl CXXCUDEFINES=" ${CUDA_DEFINES}" + fi fi fi fi