Error in compiliation on GPU


Just Got Here
_Rb_tree_node<void*> >::deallocate(std::_Rb_tree_node<void*>*, unsigned long)':
tmpxft_00022d18_00000000-4_memory.cudafe1.cpp.text._ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeIPvEE10deallocateEPS3_m[_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeIPvEE10deallocateEPS3_m]+0x1c): undefined reference to `operator delete(void*)'
/home/prasanthi/nwchem/nwchem-6.6/lib/LINUX64/libtce.a(memory.o): In function `__gnu_cxx::new_allocator<std::_Rb_tree_node<void*> >::allocate(unsigned long, void const*)':
tmpxft_00022d18_00000000-4_memory.cudafe1.cpp.text._ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeIPvEE8allocateEmPKv[_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeIPvEE8allocateEmPKv]+0x2c): undefined reference to `std::__throw_bad_alloc()'
tmpxft_00022d18_00000000-4_memory.cudafe1.cpp.text._ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeIPvEE8allocateEmPKv[_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeIPvEE8allocateEmPKv]+0x46): undefined reference to `operator new(unsigned long)'
/home/prasanthi/nwchem/nwchem-6.6/lib/LINUX64/libtce.a(memory.o): In function `__gnu_cxx::new_allocator<std::_Rb_tree_node<std::pair<void* const, int> > >::allocate(unsigned long, void const*)':
tmpxft_00022d18_00000000-4_memory.cudafe1.cpp.text._ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISt4pairIKPviEEE8allocateEmPKv[_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISt4pairIKPviEEE8allocateEmPKv]+0x2c): undefined reference to `std::__throw_bad_alloc()'
tmpxft_00022d18_00000000-4_memory.cudafe1.cpp.text._ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISt4pairIKPviEEE8allocateEmPKv[_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISt4pairIKPviEEE8allocateEmPKv]+0x45): undefined reference to `operator new(unsigned long)'
/home/prasanthi/nwchem/nwchem-6.6/lib/LINUX64/libtce.a(memory.o): In function `__gnu_cxx::new_allocator<std::_Rb_tree_node<std::pair<int const, std::set<void*, std::less<void*>, std::allocator<void*> > > > >::allocate(unsigned long, void const*)':
tmpxft_00022d18_00000000-4_memory.cudafe1.cpp.text._ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISt4pairIKiSt3setIPvSt4lessIS5_ESaIS5_EEEEE8allocateEmPKv[_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISt4pairIKiSt3setIPvSt4lessIS5_ESaIS5_EEEEE8allocateEmPKv]+0x2c): undefined reference to `std::__throw_bad_alloc()'
tmpxft_00022d18_00000000-4_memory.cudafe1.cpp.text._ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISt4pairIKiSt3setIPvSt4lessIS5_ESaIS5_EEEEE8allocateEmPKv[_ZN9__gnu_cxx13new_allocatorISt13_Rb_tree_nodeISt4pairIKiSt3setIPvSt4lessIS5_ESaIS5_EEEEE8allocateEmPKv]+0x4c): undefined reference to `operator new(unsigned long)'
/home/prasanthi/nwchem/nwchem-6.6/lib/LINUX64/libtce.a(memory.o).eh_frame+0x4cb): undefined reference to `__gxx_personality_v0'
make: *** [all] Error 1




My nwchem.sh script for GPU

export NWCHEM_TOP=/home/prasanthi/nwchem/nwchem-5.6
export NWCHEM_TARGET=LINUX64
export ARCMI_NETWORK=OPENIB
export NWCHEM_MODULES=all
export LARGE_FILES=TRUE
export USE_NOFSCHECK=TRUE

export USE_MPI=y
export USE_MPIF=y
export USE_MPIF4=y
export LIB_MPI="-lmpifort -lmpi -lmpigf -lmpi_ilp64"
export MPI_LOC=/opt/ohpc/pub/syssoftware/intel/compilers_and_libraries_2017.2.174/linux/mpi/intel64
export MPI_LIB=/opt/ohpc/pub/syssoftware/intel/compilers_and_libraries_2017.2.174/linux/mpi/intel64/lib
export MPI_INClUDE=/opt/ohpc/pub/syssoftware/intel/compilers_and_libraries_2017.2.174/linux/mpi/intel64/include
export USE_OPENMP=1
export USE_INTERNALBLAS=y
export USE_PYTHONCONFIG=y
export PYTHONLIBTYPE so
export USE_64TO32=y
export PYTHONHOME=/home/prasanthi/Python-2.7.5

export BLAS_SIZE=8
export HAS_BLAS=yes
export BLASOPT="-L/opt/ohpc/pub/syssoftware/intel/compilers_and_libraries_2017.2.174/linux/mkl/lib/intel64_lin -lmkl_intel_ilp64 -lmkl_sequential -lmkl_core"
  1. export LD_LIBRARY_PATH=/opt/ohpc/pub/syssoftware/intel/compilers_and_libraries_2017.2.174/linux/compiler/lib/intel64_lin -liomp5
export USE_SCALAPACK=y
export SCALAPACK_SIZE=8
export SCALAPACK="-L/opt/ohpc/pub/syssoftware/intel/compilers_and_libraries_2017.4.196/linux/mkl/lib/intel64_lin -lmkl_scalapack_ilp64 -lmkl_blacs_intelmpi_ilp64"
export TCE_CUDA=y
export CUDA_LIBS="-L/home/apps/cuda-8.0/lib64 -lcudart"
export CUDA_INCLUDE="-I/home/apps/cuda-8.0/include"

  1. export CC=/opt/ohpc/pub/syssoftware/intel/compilers_and_libraries_2017.2.174/linux/bin/intel64/icc
  2. export FC=ifort
export COPTIMIZE="-g -O3 -qopenmp"
export FOPTIMIZE="-g -O3 -qopenmp"
export MPICC=/opt/ohpc/pub/syssoftware/intel/compilers_and_libraries_2017.2.174/linux/mpi/intel64/bin/mpiicc

ulimit -s unlimited

make nwchem_config NWCHEM_MODULES="all"
make FC=ifort CUDA=nvcc >& make.log

I took gcc 4.8.5 and cuda 8.0 modules

Please let me know if any parameters i need to add .

Forum Vet
What version of NWChem are you using?


Forum >> NWChem's corner >> Compiling NWChem