identifier "cudaGraphExecKernelNodeSetParams" is undefined
Nobody has claimed this yet.
- Dominant language
- C++
- Stars
- 25
- Forks
- 9
- PR merge metrics
- No merged PRs in 30d
Description
Hi,
I want to compile the CUDA version, and I get some trouble during `make`.
I have change the script in `./scripts/ubuntu-builds/ubuntu_nvcc10_gcc8.sh` and `./host-configs/ubuntu-builds/nvcc_gcc_X.cmake` respectively according to my system environment. What needs to be mentioned is that I add `-std=c++11` to `COMB_NVCC_FLAGS` in `nvcc_gcc_X.cmake`. Otherwise, it will has the errors as bellow.
```
/app/compiler/gcc/4.9.4/include/c++/4.9.4/bits/c++0x_warning.h:32:2: error:#error This file requires compiler and library support for the ISO C++ 2011 standard. This support is currently experimental, and must be enabled with the -std=c++11 or -std=gnu++11 compiler options.
#error This file requires compiler and library support for the \
^
make[2]: *** [CMakeFiles/comb.dir/src/comb.cpp.o] error 1
make[1]: *** [CMakeFiles/comb.dir/all] error 2
```
After that, I run the script and get below.
```
loading initial cache file ../host-configs/ubuntu-builds/nvcc_gcc_X.cmake
-- The CXX compiler identification is GNU 4.9.4
-- Check for working CXX compiler: /app/compiler/gcc/4.9.4/bin/g++
-- Check for working CXX compiler: /app/compiler/gcc/4.9.4/bin/g++ -- works
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- BLT Version: 0.3.0
-- CMake Version: 3.10.2
-- CMake Executable: /GPUFS/app_GPU/application/cmake/3.10.2/bin/cmake
-- Found Git: /usr/bin/git (found version "1.8.3.1")
-- Git Support is ON
-- Git Executable: /usr/bin/git
-- Git Version: 1.8.3.1
-- MPI Support is ON
-- Enable FindMPI: ON
-- Found MPI_CXX: /app/compiler/intel/15.0.1/impi/5.0.2.044/intel64/lib/libmpicxx.so (found version "3.0")
-- Found MPI: TRUE (found version "3.0")
-- BLT MPI Compile Flags:
-- BLT MPI Include Paths: /app/compiler/intel/15.0.1/impi/5.0.2.044/intel64/include
-- BLT MPI Libraries: /app/compiler/intel/15.0.1/impi/5.0.2.044/intel64/lib/libmpicxx.so;/app/compiler/intel/15.0.1/impi/5.0.2.044/intel64/lib/libmpifor
t.so;/app/compiler/intel/15.0.1/impi/5.0.2.044/intel64/lib/release_mt/libmpi.so;/app/compiler/intel/15.0.1/impi/5.0.2.044/intel64/lib/libmpigi.a;/lib64/libdl
.so;/lib64/librt.so;/lib64/libpthread.so
-- BLT MPI Link Flags: -Xlinker --enable-new-dtags -Xlinker -rpath -Xlinker /app/compiler/intel/15.0.1//impi/5.0.2.044/intel64/lib/release_mt -Xlinker -r
path -Xlinker /app/compiler/intel/15.0.1//impi/5.0.2.044/intel64/lib -Xlinker -rpath -Xlinker /opt/intel/mpi-rt/5.0/intel64/lib/release_mt -Xlinker -rpath -X
linker /opt/intel/mpi-rt/5.0/intel64/lib
-- MPI Executable: /app/compiler/intel/15.0.1/impi/5.0.2.044/intel64/bin/mpiexec
-- MPI Num Proc Flag: -n
-- MPI Command Append:
-- OpenMP Support is ON
-- Found OpenMP_CXX: -fopenmp (found version "4.0")
-- Found OpenMP: TRUE (found version "4.0")
-- OpenMP Compile Flags: $<$>:-fopenmp>;$<$:-Xcompiler=-fopenmp>
-- OpenMP Link Flags: -fopenmp
-- CUDA Support is ON
-- The CUDA compiler identification is NVIDIA 10.0.130
-- Check for working CUDA compiler: /GPUFS/app_GPU/compiler/CUDA/10.0.1/bin/nvcc
-- Check for working CUDA compiler: /GPUFS/app_GPU/compiler/CUDA/10.0.1/bin/nvcc -- works
-- Detecting CUDA compiler ABI info
-- Detecting CUDA compiler ABI info - done
-- Looking for C++ include pthread.h
-- Looking for C++ include pthread.h - found
-- Looking for pthread_create
-- Looking for pthread_create - not found
-- Looking for pthread_create in pthreads
-- Looking for pthread_create in pthreads - not found
-- Looking for pthread_create in pthread
-- Looking for pthread_create in pthread - found
-- Found Threads: TRUE
-- Found CUDA: /GPUFS/app_GPU/compiler/CUDA/10.0.1 (found version "10.0")
-- CUDA Version: 10.0
-- CUDA Compiler: /GPUFS/app_GPU/compiler/CUDA/10.0.1/bin/nvcc
-- CUDA Host Compiler: /app/compiler/gcc/4.9.4/bin/g++
-- CUDA Include Path: /GPUFS/app_GPU/compiler/CUDA/10.0.1/include
-- CUDA Libraries: /GPUFS/app_GPU/compiler/CUDA/10.0.1/lib64/libcudart_static.a;-lpthread;dl;/usr/lib64/librt.so
-- CUDA Compile Flags:
-- CUDA Link Flags:
-- CUDA Separable Compilation: ON
-- CUDA Link with NVCC:
-- HIP Support is OFF
-- HCC Support is OFF
-- Found Doxygen: /usr/bin/doxygen (found version "1.8.5") found components: doxygen dot
-- Sphinx support is ON
-- Failed to locate Sphinx executable (missing: SPHINX_EXECUTABLE)
-- Valgrind support is ON
-- Found Valgrind: /usr/bin/valgrind
-- Uncrustify support is ON
-- Failed to locate Uncrustify executable (missing: UNCRUSTIFY_EXECUTABLE)
-- AStyle support is ON
-- Failed to locate AStyle executable (missing: ASTYLE_EXECUTABLE)
-- Cppcheck support is ON
-- Failed to locate Cppcheck executable (missing: CPPCHECK_EXECUTABLE)
-- ClangQuery support is ON
-- Failed to locate ClangQuery executable (missing: CLANGQUERY_EXECUTABLE)
-- C Compiler family is GNU
-- Adding optional BLT definitions and compiler flags
-- Enabling all compiler warnings on all targets.
-- Fortran support disabled.
-- CMAKE_C_FLAGS flags are: -Wall -Wextra
-- CMAKE_CXX_FLAGS flags are: -Wall -Wextra
-- CMAKE_EXE_LINKER_FLAGS flags are:
-- Google Test Support is ON
-- Google Mock Support is OFF
-- The C compiler identification is GNU 4.9.4
-- Check for working C compiler: /app/compiler/gcc/4.9.4/bin/gcc
-- Check for working C compiler: /app/compiler/gcc/4.9.4/bin/gcc -- works
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Detecting C compile features
-- Detecting C compile features - done
-- Found PythonInterp: /usr/bin/python (found version "2.7.5")
-- MPI Enabled
-- OpenMP Enabled
-- Cuda Enabled
-- Configuring done
-- Generating done
-- Build files have been written to: /GPUFS/demo/benchmark/comb/build_ubuntu-nvcc10-gcc8
```
When I `make`, I get the errors.
```
/GPUFS/demo/benchmark/comb/include/graph_launch.hpp(154): error: identifier "cudaGraphExecKernelNodeSetParams" is undefined
/GPUFS/demo/benchmark/comb/include/graph_launch.hpp(174): error: argument of type "const cudaGraphNode_t *" is incompatible with parameter of type "cudaGraphNode_t *"
2 errors detected in the compilation of "/tmp/tmpxft_0004aa35_00000000-6_comb.cpp1.ii".
make[2]: *** [CMakeFiles/comb.dir/src/comb.cpp.o] error 1
make[1]: *** [CMakeFiles/comb.dir/all] error 2
make: *** [all] error 2
```
I cannot find `cudaGraphExecKernelNodeSetParams` in the code except `graph_launch.hpp(154)`. Is it the bug or something I do wrong (like add the `-std=c++11`)
` error: argument of type "const cudaGraphNode_t *" is incompatible with parameter of type "cudaGraphNode_t *"` is also a problem about the code. How can I fix it?
Thanks for your attention. Looking forward to your reply.
Contributor guide
No contributing guide indexed for this repository
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Reproduce the CUDA build with scripts/ubuntu-builds/ubuntu_nvcc10_gcc8.sh and host-configs/ubuntu-builds/nvcc_gcc_X.cmake. Inspect include/graph_launch.hpp at lines 154 and 174, then compare the reported CUDA API and pointer-type errors with the surrounding call sites. Done means the CUDA configuration builds successfully with make.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- cmake, cpp
- Domain
- build-system, hpc, performance
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100