From: Martin, Erik W (Erik.Martin_at_stjude.org)
Date: Fri Nov 09 2012 - 14:06:52 CST
Huh. That’s too bad. I was kind of hoping the solution to my problem would be that simple. Does anyone have any clue about the errors I was getting compiling namd with CUDA? I didn't really deviate at all from the documentation.
Thanks,
Erik
From: Thomas Evangelidis <tevang3_at_gmail.com<mailto:tevang3_at_gmail.com>>
Date: Fri, 9 Nov 2012 11:05:54 -0600
To: Erik Martin <erik.martin_at_stjude.org<mailto:erik.martin_at_stjude.org>>
Cc: Namd Mailing List <namd-l_at_ks.uiuc.edu<mailto:namd-l_at_ks.uiuc.edu>>
Subject: Re: namd-l: compilation with CUDA error
I still get "undefined reference to `kernelSelect(workRequest*)'" etc. when I compile Charm without CUDA (and NAMD with CUDA). I don't know if my comment about the compiler (Intel of GNU) make sense at all since the CUDA toolkit does not need to be compiled, unlike the GPU Computing SDK.
Thomas
PS: In the documentation it says that NAMD source can be built with CUDA versions >4 as well.
On 9 November 2012 18:49, Martin, Erik W <Erik.Martin_at_stjude.org<mailto:Erik.Martin_at_stjude.org>> wrote:
I'm curious, did this solve the problems? I just tried to compile namd with CUDA on our linux system last night and ended up with all manner of errors I'd never seen before...
-Erik
fwiw, here are what my errors looked like:
src/ComputeNonbondedCUDA.C:1830: error: ‘end_local_download’ was not declared in this scope
src/ComputeNonbondedCUDA.C:1830: error: ‘cudaEventRecord’ was not declared in this scope
src/ComputeNonbondedCUDA.C:1843: error: ‘stream’ was not declared in this scope
src/ComputeNonbondedCUDA.C:1845: error: ‘end_local_download’ was not declared in this scope
src/ComputeNonbondedCUDA.C:1845: error: ‘stream’ was not declared in this scope
src/ComputeNonbondedCUDA.C:1845: error: ‘cudaEventRecord’ was not declared in this scope
src/ComputeNonbondedCUDA.C: In member function ‘int ComputeNonbondedCUDA::finishWork()’:
src/ComputeNonbondedCUDA.C:1910: error: invalid use of incomplete type ‘struct float4’
src/ComputeNonbondedCUDA.h:8: error: forward declaration of ‘struct float4’
src/ComputeNonbondedCUDA.C:1911: error: invalid use of incomplete type ‘struct float4’
src/ComputeNonbondedCUDA.h:8: error: forward declaration of ‘struct float4’
src/ComputeNonbondedCUDA.C:1915: error: invalid use of incomplete type ‘struct float4’
src/ComputeNonbondedCUDA.h:8: error: forward declaration of ‘struct float4’
src/ComputeNonbondedCUDA.C:1915: error: invalid use of incomplete type ‘struct float4’
src/ComputeNonbondedCUDA.h:8: error: forward declaration of ‘struct float4’
src/ComputeNonbondedCUDA.C:1916: error: invalid use of incomplete type ‘struct float4’
src/ComputeNonbondedCUDA.h:8: error: forward declaration of ‘struct float4’
src/ComputeNonbondedCUDA.C:1916: error: invalid use of incomplete type ‘struct float4’
src/ComputeNonbondedCUDA.h:8: error: forward declaration of ‘struct float4’
src/ComputeNonbondedCUDA.C:1917: error: invalid use of incomplete type ‘struct float4’
src/ComputeNonbondedCUDA.h:8: error: forward declaration of ‘struct float4’
src/ComputeNonbondedCUDA.C:1917: error: invalid use of incomplete type ‘struct float4’
src/ComputeNonbondedCUDA.h:8: error: forward declaration of ‘struct float4’
src/ComputeNonbondedCUDA.C:1921: error: invalid use of incomplete type ‘struct float4’
src/ComputeNonbondedCUDA.h:8: error: forward declaration of ‘struct float4’
src/ComputeNonbondedCUDA.C:1921: error: invalid use of incomplete type ‘struct float4’
src/ComputeNonbondedCUDA.h:8: error: forward declaration of ‘struct float4’
src/ComputeNonbondedCUDA.C:1922: error: invalid use of incomplete type ‘struct float4’
src/ComputeNonbondedCUDA.h:8: error: forward declaration of ‘struct float4’
src/ComputeNonbondedCUDA.C:1922: error: invalid use of incomplete type ‘struct float4’
src/ComputeNonbondedCUDA.h:8: error: forward declaration of ‘struct float4’
src/ComputeNonbondedCUDA.C:1923: error: invalid use of incomplete type ‘struct float4’
src/ComputeNonbondedCUDA.h:8: error: forward declaration of ‘struct float4’
src/ComputeNonbondedCUDA.C:1923: error: invalid use of incomplete type ‘struct float4’
src/ComputeNonbondedCUDA.h:8: error: forward declaration of ‘struct float4’
src/ComputeNonbondedCUDA.C:1939: error: invalid use of incomplete type ‘struct float4’
src/ComputeNonbondedCUDA.h:8: error: forward declaration of ‘struct float4’
src/ComputeNonbondedCUDA.C:1939: error: invalid use of incomplete type ‘struct float4’
src/ComputeNonbondedCUDA.h:8: error: forward declaration of ‘struct float4’
src/ComputeNonbondedCUDA.C:1941: error: invalid use of incomplete type ‘struct float4’
src/ComputeNonbondedCUDA.h:8: error: forward declaration of ‘struct float4’
src/ComputeNonbondedCUDA.C:1941: error: invalid use of incomplete type ‘struct float4’
src/ComputeNonbondedCUDA.h:8: error: forward declaration of ‘struct float4’
make: *** [obj/ComputeNonbondedCUDA.o] Error 1
________________________________________
From: owner-namd-l_at_ks.uiuc.edu<mailto:owner-namd-l_at_ks.uiuc.edu> [owner-namd-l_at_ks.uiuc.edu<mailto:owner-namd-l_at_ks.uiuc.edu>] On Behalf Of Thomas Evangelidis [tevang3_at_gmail.com<mailto:tevang3_at_gmail.com>]
Sent: Tuesday, October 30, 2012 2:59 AM
To: Namd Mailing List
Subject: Re: namd-l: compilation with CUDA error. .
I think I know what the error is, it has to do with the compiler version I used for CUDA. Because fedora 17 comes with gcc4.7 which is incompatible with CUDA, I installed from the repositories gcc3.4 and made a symbolic link at:
ln -s /bin/gcc34 /usr/local/cuda/bin/gcc
Do you know how I can compile CUDA with the Intel compilers to avoid all this hassle?
T.
On 30 October 2012 09:19, Norman Geist <norman.geist_at_uni-greifswald.de<mailto:norman.geist_at_uni-greifswald.de><mailto:norman.geist_at_uni-greifswald.de<mailto:norman.geist_at_uni-greifswald.de>>> wrote:
If I remember correctly and if it hasn’t changed yet, namd is not using CUDA features of charm++, so you should try to build charm++ without cuda support.
Norman Geist.
Von: owner-namd-l_at_ks.uiuc.edu<mailto:owner-namd-l_at_ks.uiuc.edu><mailto:owner-namd-l_at_ks.uiuc.edu<mailto:owner-namd-l_at_ks.uiuc.edu>> [mailto:owner-namd-l_at_ks.uiuc.edu<mailto:owner-namd-l_at_ks.uiuc.edu><mailto:owner-namd-l_at_ks.uiuc.edu<mailto:owner-namd-l_at_ks.uiuc.edu>>] Im Auftrag von Aron Broom
Gesendet: Montag, 29. Oktober 2012 18:44
An: Thomas Evangelidis
Cc: namd-l
Betreff: Re: namd-l: compilation with CUDA error
it doesn't say anywhere in the instructions which version of cuda it is intended for? My impression was that it was 4.0, but that's a big guess.
On Mon, Oct 29, 2012 at 9:44 AM, Thomas Evangelidis <tevang3_at_gmail.com<mailto:tevang3_at_gmail.com><mailto:tevang3_at_gmail.com<mailto:tevang3_at_gmail.com>>> wrote:
Greetings,
I am trying to compile NAMD CVS-2012-09-22_Linux-x86_64-multicore-CUDA using Cuda 4.2 with the following command lines:
CUDA_DIR=/usr/local/cuda MAKE=gmake ./build charm++ net-linux-x86_64 icc ifort smp cuda -j8 --with-production -O3 -axSSE4.2 -unroll -DCMK_OPTIMIZE=1
./config Linux-x86_64-icc --charm-arch net-linux-x86_64-cuda-ifort-smp-icc --with-fftw3 --fftw-prefix /home/thomas/Programs/fftw-3.3.2/single_precision_Intel_build --cuda-prefix /usr/local/cuda
cd Linux-x86_64-icc
CUDA_DIR=/usr/local/cuda gmake -j8
but I get the following error:
icpc: command line warning #10121: overriding '-shared-intel' with '-i-static'
icpc: warning #10237: -lcilkrts linked in dynamically, static library not available
.rootdir/charm-6.4.0/net-linux-x86_64-cuda-ifort-smp-icc/bin/../lib/libcudahybridapi.a(hybridapi.o): In function `gpuProgressFn':
tmpxft_00003316_00000000-1_cuda-hybrid-api.cudafe1.cpp:(.text+0xb26): undefined reference to `kernelSelect(workRequest*)'
tmpxft_00003316_00000000-1_cuda-hybrid-api.cudafe1.cpp:(.text+0xbe1): undefined reference to `kernelSelect(workRequest*)'
/usr/local/cuda/lib64/libcudart.so: undefined reference to `std::_List_node_base::_M_unhook()@GLIBCXX_3.4.14'
/usr/local/cuda/lib64/libcudart.so: undefined reference to `std::_List_node_base::_M_hook(std::_List_node_base*)@GLIBCXX_3.4.14'
Fatal Error by charmc in directory /home/thomas/Programs/NAMD_CVS-2012-09-22_Source/Linux-x86_64-icc
I also get the same error with Cuda 5.0. I then tried to replace the libcudart.so (and libcudart.so.4) with the one that is shipped with NAMD but got:
icpc: command line warning #10121: overriding '-shared-intel' with '-i-static'
icpc: warning #10237: -lcilkrts linked in dynamically, static library not available
.rootdir/charm-6.4.0/net-linux-x86_64-cuda-ifort-smp-icc/bin/../lib/libcudahybridapi.a(hybridapi.o): In function `gpuProgressFn':
tmpxft_00003316_00000000-1_cuda-hybrid-api.cudafe1.cpp:(.text+0xb26): undefined reference to `kernelSelect(workRequest*)'
tmpxft_00003316_00000000-1_cuda-hybrid-api.cudafe1.cpp:(.text+0xbe1): undefined reference to `kernelSelect(workRequest*)'
Fatal Error by charmc in directory /home/thomas/Programs/NAMD_CVS-2012-09-22_Source/Linux-x86_64-icc
Does anyone know how to fix this? Do I need to install an older version of CUDA?
thanks,
Thomas
-- ====================================================================== Thomas Evangelidis PhD student University of Athens Faculty of Pharmacy Department of Pharmaceutical Chemistry Panepistimioupoli-Zografou 157 71 Athens GREECE email: tevang_at_pharm.uoa.gr<mailto:tevang_at_pharm.uoa.gr><mailto:tevang_at_pharm.uoa.gr<mailto:tevang_at_pharm.uoa.gr>> tevang3_at_gmail.com<mailto:tevang3_at_gmail.com><mailto:tevang3_at_gmail.com<mailto:tevang3_at_gmail.com>> website: https://sites.google.com/site/thomasevangelidishomepage/ -- Aron Broom M.Sc PhD Student Department of Chemistry University of Waterloo -- ====================================================================== Thomas Evangelidis PhD student University of Athens Faculty of Pharmacy Department of Pharmaceutical Chemistry Panepistimioupoli-Zografou 157 71 Athens GREECE email: tevang_at_pharm.uoa.gr<mailto:tevang_at_pharm.uoa.gr><mailto:tevang_at_pharm.uoa.gr<mailto:tevang_at_pharm.uoa.gr>> tevang3_at_gmail.com<mailto:tevang3_at_gmail.com><mailto:tevang3_at_gmail.com<mailto:tevang3_at_gmail.com>> website: https://sites.google.com/site/thomasevangelidishomepage/ Email Disclaimer: www.stjude.org/emaildisclaimer<http://www.stjude.org/emaildisclaimer> Consultation Disclaimer: www.stjude.org/consultationdisclaimer<http://www.stjude.org/consultationdisclaimer> -- ====================================================================== Thomas Evangelidis PhD student University of Athens Faculty of Pharmacy Department of Pharmaceutical Chemistry Panepistimioupoli-Zografou 157 71 Athens GREECE email: tevang_at_pharm.uoa.gr<mailto:tevang_at_pharm.uoa.gr> tevang3_at_gmail.com<mailto:tevang3_at_gmail.com> website: https://sites.google.com/site/thomasevangelidishomepage/
This archive was generated by hypermail 2.1.6 : Tue Dec 31 2013 - 23:22:44 CST