When I try to compile cudaglmnet, I get the following error sequence. I include outputs of ./configure and system information after the error log.
What gives? What's going wrong, and how to fix? I'm not an expert on configuration issues with CUDA/nvcc, so I haven't much of a clue here, and any pointers would be helpful.
Thanks!
Paul Deane
Starting after cloning sudaglmnet and cding to the installation directory:
sudo R CMD INSTALL ./
installing to library ‘/usr/local/lib/R/site-library’
installing source package ‘cudaglmnet’ ...
using staged installation
configure: checking for critical tools used by configure
checking "environment variable COMPILER_BINDIR"... "COMPILER_BINDIR not set; using user's default path"
checking "environment variable CUDA_HOME"... "CUDA_HOME not set; using default /usr/local/cuda"
checking "environment variable CULA_HOME"... "CULA_HOME not set; using default /usr/local/cula"
checking for /usr/local/cuda/bin/nvcc... yes
"nvcc found"
checking "whether this is the 64 bit linux version of CUDA"... checking for /usr/local/cuda/lib64/libcublas.so... yes
"yes -- using /usr/local/cuda/lib64 for CUDA libs"
"using -I/usr/share/R/include for R header files"
"using -Wl,--export-dynamic -fopenmp -Wl,-Bsymbolic-functions -Wl,-z,relro -L/usr/lib/R/lib -lR -lpcre2-8 -llzma -lbz2 -lz -lrt -ldl -lm -licuuc -licui18n for R shared libraries"
checking "whether this is the 64 bit version of CULA"... checking for /usr/local/cula/lib64/libcula.so... no
checking for /usr/local/cula/lib64/libcula.dylib... no
"no"
checking "checking whether cula is present at all"... checking for /usr/local/cula/lib/libcula.so... no
checking for /usr/local/cula/lib/libcula.dylib... no
"cula is not installed"
configure: determining host platform
checking build system type... x86_64-unknown-linux-gnu
checking host system type... x86_64-unknown-linux-gnu
configure: creating ./config.status
config.status: creating src/Makefile
libs
** arch -
/usr/local/cuda/bin/nvcc -O2 -shared -Xlinker -Wl,--export-dynamic -fopenmp -Wl,-Bsymbolic-functions -Wl,-z,relro -L/usr/lib/R/lib -lR -lpcre2-8 -llzma -lbz2 -lz -lrt -ldl -lm -licuuc -licui18n -L/usr/local/cuda/lib64 -lcublas main.o -o cudaglmnet.so
nvcc fatal : Unknown option '-fopenmp'
make: *** [Makefile:24: cudaglmnet.so] Error 1
ERROR: compilation failed for package ‘cudaglmnet’
./configure
configure: checking for critical tools used by configure
checking "environment variable COMPILER_BINDIR"... "COMPILER_BINDIR not set; using user's default path"
checking "environment variable CUDA_HOME"... "using CUDA_HOME=/usr/local/cuda-12.0"
checking "environment variable CULA_HOME"... "CULA_HOME not set; using default /usr/local/cula"
checking for /usr/local/cuda-12.0/bin/nvcc... yes
"nvcc found"
checking "whether this is the 64 bit linux version of CUDA"... checking for /usr/local/cuda-12.0/lib64/libcublas.so... yes
"yes -- using /usr/local/cuda-12.0/lib64 for CUDA libs"
"using -I/usr/share/R/include for R header files"
"using -L/usr/local/R/lib -lR for R shared libraries"
checking "whether this is the 64 bit version of CULA"... checking for /usr/local/cula/lib64/libcula.so... no
checking for /usr/local/cula/lib64/libcula.dylib... no
"no"
checking "checking whether cula is present at all"... checking for /usr/local/cula/lib/libcula.so... no
checking for /usr/local/cula/lib/libcula.dylib... no
"cula is not installed"
configure: determining host platform
checking build system type... x86_64-unknown-linux-gnu
checking host system type... x86_64-unknown-linux-gnu
configure: creating ./config.status
config.status: creating src/Makefile
/usr/local/cuda-12.0/bin/nvcc --version
nvcc: NVIDIA (R) Cuda compiler driver
Copyright (c) 2005-2022 NVIDIA Corporation
Built on Mon_Oct_24_19:12:58_PDT_2022
Cuda compilation tools, release 12.0, V12.0.76
Build cuda_12.0.r12.0/compiler.31968024_0
When I try to compile cudaglmnet, I get the following error sequence. I include outputs of ./configure and system information after the error log.
What gives? What's going wrong, and how to fix? I'm not an expert on configuration issues with CUDA/nvcc, so I haven't much of a clue here, and any pointers would be helpful.
Thanks!
Paul Deane
Starting after cloning sudaglmnet and cding to the installation directory:
sudo R CMD INSTALL ./
SYSTEM INFORMATION
Description: Ubuntu 20.04 LTS Release: 20.04 Codename: focal
GPU: NVIDIA GeForce RTX 3070 R version: 4.2.2 Patched (2022-11-10 r83330)
./configure configure: checking for critical tools used by configure checking "environment variable COMPILER_BINDIR"... "COMPILER_BINDIR not set; using user's default path" checking "environment variable CUDA_HOME"... "using CUDA_HOME=/usr/local/cuda-12.0" checking "environment variable CULA_HOME"... "CULA_HOME not set; using default /usr/local/cula" checking for /usr/local/cuda-12.0/bin/nvcc... yes "nvcc found" checking "whether this is the 64 bit linux version of CUDA"... checking for /usr/local/cuda-12.0/lib64/libcublas.so... yes "yes -- using /usr/local/cuda-12.0/lib64 for CUDA libs" "using -I/usr/share/R/include for R header files" "using -L/usr/local/R/lib -lR for R shared libraries" checking "whether this is the 64 bit version of CULA"... checking for /usr/local/cula/lib64/libcula.so... no checking for /usr/local/cula/lib64/libcula.dylib... no "no" checking "checking whether cula is present at all"... checking for /usr/local/cula/lib/libcula.so... no checking for /usr/local/cula/lib/libcula.dylib... no "cula is not installed" configure: determining host platform checking build system type... x86_64-unknown-linux-gnu checking host system type... x86_64-unknown-linux-gnu configure: creating ./config.status config.status: creating src/Makefile
/usr/local/cuda-12.0/bin/nvcc --version nvcc: NVIDIA (R) Cuda compiler driver Copyright (c) 2005-2022 NVIDIA Corporation Built on Mon_Oct_24_19:12:58_PDT_2022 Cuda compilation tools, release 12.0, V12.0.76 Build cuda_12.0.r12.0/compiler.31968024_0
cat /usr/local/cuda-12.0/version.json { "cuda" : { "name" : "CUDA SDK", "version" : "12.0.20221203" }, "cuda_cccl" : { "name" : "CUDA C++ Core Compute Libraries", "version" : "12.0.90" }, "cuda_cudart" : { "name" : "CUDA Runtime (cudart)", "version" : "12.0.107" }, "cuda_cuobjdump" : { "name" : "cuobjdump", "version" : "12.0.76" }, "cuda_cupti" : { "name" : "CUPTI", "version" : "12.0.90" }, "cuda_cuxxfilt" : { "name" : "CUDA cu++ filt", "version" : "12.0.76" }, "cuda_demo_suite" : { "name" : "CUDA Demo Suite", "version" : "12.0.76" }, "cuda_gdb" : { "name" : "CUDA GDB", "version" : "12.0.90" }, "cuda_nsight" : { "name" : "Nsight Eclipse Plugins", "version" : "12.0.78" }, "cuda_nvcc" : { "name" : "CUDA NVCC", "version" : "12.0.76" }, "cuda_nvdisasm" : { "name" : "CUDA nvdisasm", "version" : "12.0.76" }, "cuda_nvml_dev" : { "name" : "CUDA NVML Headers", "version" : "12.0.76" }, "cuda_nvprof" : { "name" : "CUDA nvprof", "version" : "12.0.90" }, "cuda_nvprune" : { "name" : "CUDA nvprune", "version" : "12.0.76" }, "cuda_nvrtc" : { "name" : "CUDA NVRTC", "version" : "12.0.76" }, "cuda_nvtx" : { "name" : "CUDA NVTX", "version" : "12.0.76" }, "cuda_nvvp" : { "name" : "CUDA NVVP", "version" : "12.0.90" }, "cuda_opencl" : { "name" : "CUDA OpenCL", "version" : "12.0.76" }, "cuda_sanitizer_api" : { "name" : "CUDA Compute Sanitizer API", "version" : "12.0.90" }, "libcublas" : { "name" : "CUDA cuBLAS", "version" : "12.0.1.189" }, "libcufft" : { "name" : "CUDA cuFFT", "version" : "11.0.0.21" }, "libcufile" : { "name" : "GPUDirect Storage (cufile)", "version" : "1.5.0.59" }, "libcurand" : { "name" : "CUDA cuRAND", "version" : "10.3.1.50" }, "libcusolver" : { "name" : "CUDA cuSOLVER", "version" : "11.4.2.57" }, "libcusparse" : { "name" : "CUDA cuSPARSE", "version" : "12.0.0.76" }, "libnpp" : { "name" : "CUDA NPP", "version" : "12.0.0.30" }, "libnvjitlink" : { "name" : "JIT Linker Library", "version" : "12.0.76" }, "libnvjpeg" : { "name" : "CUDA nvJPEG", "version" : "12.0.0.28" }, "libnvvm_samples" : { "name" : "NVVM Samples", "version" : "12.0.94" }, "nsight_compute" : { "name" : "Nsight Compute", "version" : "2022.4.0.15" }, "nsight_systems" : { "name" : "Nsight Systems", "version" : "2022.4.2.18" }, "nvidia_driver" : { "name" : "NVIDIA Linux Driver", "version" : "525.60.13" }, "nvidia_fs" : { "name" : "NVIDIA file-system", "version" : "2.14.12" } }