Following http://www.gromacs.org/Documentation/Installation_Instructions#.c2.a7_4.6._Native_GPU_acceleration could help. The FindCUDA.cmake in CMake 2.8.1 might not work properly - we don't test that combination. Trying a newer CMake could help, but I would avoid 2.8.7, 2.8.9 and 2.8.10 because they have known issues (http://www.cmake.org/Wiki/CMake_Version_Compatibility_Matrix/StandardCMakeModulesA). There are some hard-coded gcc-isms in CUDA, too, but I would not think that is the issue here.
Mark On Tue, Jul 2, 2013 at 8:59 PM, Malcolm Tobias <mtob...@wustl.edu> wrote: > > All, > > I'm attempting to build gromacs 4.6.2 with a bit of everything: CUDA support, > MPI, Intel compilers, etc. using the new cmake system. I've set CC and CXX > to specify the Intel compilers: > > [root@login002 build]# echo $CC > icc > > [root@login002 build]# echo $CXX > icc > > and sourced the setup script for good measure: > > /export/intel/composer_xe_2013.1.117/bin/compilervars.sh intel64 > > During cmake, everything appears to be happy: > > [root@login002 build]# /export/cmake-2.8.1/bin/cmake -DGMX_GPU=ON > DCUDA_TOOLKIT_ROOT_DIR=/export/cuda-5.0 -DGMX_BUILD_OWN_FFTW=ON > -DGMX_FFT_LIBRARY=mkl -DGMX_MPI=ON > -DCMAKE_INSTALL_PREFIX=/export/gromacs-4.6.2 .. | tee cmake.out > ... > -- The C compiler identification is Intel > -- Check for working C compiler: > /export/intel/composer_xe_2013.1.117/bin/intel64/icc > -- Check for working C compiler: > /export/intel/composer_xe_2013.1.117/bin/intel64/icc -- works > ... > -- Looking for NVIDIA GPUs present in the system > -- Could not detect NVIDIA GPUs > -- Found CUDA: /usr/local/cuda > ... > -- MPI is not compatible with thread-MPI. Disabling thread-MPI. > -- Found MPI: /export/openmpi-1.4.3/lib/libmpi_cxx.so > ... > -- Setting the nvcc host compiler to: > /export/intel/composer_xe_2013.1.117/bin/intel64/icc > -- Setting Intel Compiler compatibity mode to gcc 4.5 for nvcc host > compilation > ... > -- Using external FFT library - Intel MKL > > But I quickly get a compile-time error: > > [root@login002 build]# make > -- Configuring done > -- Generating done > -- Build files have been written to: /export/src/gromacs-4.6.2/build > [ 0%] Building NVCC (Device) object > src/gmxlib/cuda_tools/./cuda_tools_generated_copyrite_gpu.cu.o > /usr/include/c++/4.1.2/bits/cpp_type_traits.h(358): error: expected an > identifier > > /usr/include/c++/4.1.2/bits/cpp_type_traits.h(371): error: expected an > identifier > > So something about the cmake process is reverting to the default GNU > compilers (4.1.2) when it's trying to build some of the CUDA stuff. I tried > tricking it to use something more recent: > > alias /usr/bin/gcc44 gcc > alias g++=/usr/bin/g++44 > > But I still see the path pointing to 4.1.2. Any suggestions on things to try? > > Thanks, > Malcolm > > -- > Malcolm Tobias > 314.362.1594 > > -- > gmx-users mailing list gmx-users@gromacs.org > http://lists.gromacs.org/mailman/listinfo/gmx-users > * Please search the archive at > http://www.gromacs.org/Support/Mailing_Lists/Search before posting! > * Please don't post (un)subscribe requests to the list. Use the > www interface or send it to gmx-users-requ...@gromacs.org. > * Can't post? Read http://www.gromacs.org/Support/Mailing_Lists -- gmx-users mailing list gmx-users@gromacs.org http://lists.gromacs.org/mailman/listinfo/gmx-users * Please search the archive at http://www.gromacs.org/Support/Mailing_Lists/Search before posting! * Please don't post (un)subscribe requests to the list. Use the www interface or send it to gmx-users-requ...@gromacs.org. * Can't post? Read http://www.gromacs.org/Support/Mailing_Lists