[gmx-users] Gromacs 2019.3 compilation with GPU support

Mark Abraham mark.j.abraham at gmail.com
Mon Aug 26 18:38:43 CEST 2019


Hi,

All versions of icc requires a standard library from an installation of
gcc. There are various dependencies between them, and your system admins
should have an idea which one is known to work well in your case. If you
need to help the GROMACS build find the right one, do check out the GROMACS
install guide for how to direct a particular gcc to be used with icc. I
would suggest nothing earlier than gcc 5.

Mark


On Mon, 26 Aug 2019 at 17:51, Prithwish Nandi <prithwish.nandi at ichec.ie>
wrote:

> Hi,
> I am trying to compile Gromacs-2019.3 at our HPC cluster. I successfully
> compiled the single and double precision versions, but it’s producing error
> for GPU support. (The error message is pasted below)
>
> I am using Intel/2018 update 4 and CUDA/10.0. The base gcc version is
> 4.8.5. Using MKL as the FFTW lib and mliicc as the C compiler, and mpiicpc
> as the CXX compiler.
>
> The error I am getting is given below.
>
> Do you have any clue for this?
>
> Thanks, //PN
>
> The error message:
>
>   Error generating file
>
> /xxx/xxx/gromacs/intel/2019.3/kay/gromacs-2019.3/build_gpu/src/gromacs/CMakeFiles/libgromacs.dir/mdlib/nbnxn_cuda/./libgromacs_generated_nbnxn_cuda_kernel_pruneonly.cu.o
>
>
> make[2]: ***
> [src/gromacs/CMakeFiles/libgromacs.dir/mdlib/nbnxn_cuda/libgromacs_generated_nbnxn_cuda_kernel_pruneonly.cu.o]
> Error 1
> /usr/include/c++/4.8.5/x86_64-redhat-linux/bits/opt_random.h(68): error:
> identifier "_mm_set1_epi64x" is undefined
>
> /usr/include/c++/4.8.5/x86_64-redhat-linux/bits/opt_random.h(70): error:
> identifier "_mm_set1_pd" is undefined
>
> /usr/include/c++/4.8.5/x86_64-redhat-linux/bits/opt_random.h(112): error:
> identifier "_mm_set_epi64x" is undefined
>
> /usr/include/c++/4.8.5/x86_64-redhat-linux/bits/opt_random.h(123): error:
> identifier "_mm_set_epi64x" is undefined
>
> /usr/include/c++/4.8.5/x86_64-redhat-linux/bits/opt_random.h(123): error:
> identifier "_mm_and_si128" is undefined
>
> /usr/include/c++/4.8.5/x86_64-redhat-linux/bits/opt_random.h(172): error:
> identifier "_mm_set_epi64x" is undefined
>
> /usr/include/c++/4.8.5/x86_64-redhat-linux/bits/opt_random.h(175): error:
> identifier "_mm_or_si128" is undefined
>
> /usr/include/c++/4.8.5/x86_64-redhat-linux/bits/opt_random.h(176): error:
> identifier "_mm_sub_pd" is undefined
>
> /usr/include/c++/4.8.5/x86_64-redhat-linux/bits/opt_random.h(177): error:
> identifier "_mm_mul_pd" is undefined
>
> /usr/include/c++/4.8.5/x86_64-redhat-linux/bits/opt_random.h(178): error:
> identifier "_mm_hadd_pd" is undefined
>
> /usr/include/c++/4.8.5/x86_64-redhat-linux/bits/opt_random.h(178): error:
> identifier "_mm_cvtsd_f64" is undefined
>
> /usr/include/c++/4.8.5/x86_64-redhat-linux/bits/opt_random.h(185): error:
> identifier "_mm_mul_pd" is undefined
>
> /usr/include/c++/4.8.5/x86_64-redhat-linux/bits/opt_random.h(185): error:
> identifier "_mm_add_pd" is undefined
>
> /usr/include/c++/4.8.5/x86_64-redhat-linux/bits/opt_random.h(187): error:
> identifier "_mm_storeu_pd" is undefined
>
> /usr/include/c++/4.8.5/x86_64-redhat-linux/bits/opt_random.h(68): error:
> identifier "_mm_set1_epi64x" is undefined
>
> /usr/include/c++/4.8.5/x86_64-redhat-linux/bits/opt_random.h(70): error:
> identifier "_mm_set1_pd" is undefined
>
> /usr/include/c++/4.8.5/x86_64-redhat-linux/bits/opt_random.h(112): error:
> identifier "_mm_set_epi64x" is undefined
>
> /usr/include/c++/4.8.5/x86_64-redhat-linux/bits/opt_random.h(123): error:
> identifier "_mm_set_epi64x" is undefined
>
> /usr/include/c++/4.8.5/x86_64-redhat-linux/bits/opt_random.h(123): error:
> identifier "_mm_and_si128" is undefined
>
> /usr/include/c++/4.8.5/x86_64-redhat-linux/bits/opt_random.h(172): error:
> identifier "_mm_set_epi64x" is undefined
>
> /usr/include/c++/4.8.5/x86_64-redhat-linux/bits/opt_random.h(175): error:
> identifier "_mm_or_si128" is undefined
>
> /usr/include/c++/4.8.5/x86_64-redhat-linux/bits/opt_random.h(176): error:
> identifier "_mm_sub_pd" is undefined
>
> /usr/include/c++/4.8.5/x86_64-redhat-linux/bits/opt_random.h(177): error:
> identifier "_mm_mul_pd" is undefined
>
> /usr/include/c++/4.8.5/x86_64-redhat-linux/bits/opt_random.h(178): error:
> identifier "_mm_hadd_pd" is undefined
>
> /usr/include/c++/4.8.5/x86_64-redhat-linux/bits/opt_random.h(178): error:
> identifier "_mm_cvtsd_f64" is undefined
>
> /usr/include/c++/4.8.5/x86_64-redhat-linux/bits/opt_random.h(185): error:
> identifier "_mm_mul_pd" is undefined
>
> /usr/include/c++/4.8.5/x86_64-redhat-linux/bits/opt_random.h(185): error:
> identifier "_mm_add_pd" is undefined
>
> /usr/include/c++/4.8.5/x86_64-redhat-linux/bits/opt_random.h(187): error:
> identifier "_mm_storeu_pd" is undefined
>
> 14 errors detected in the compilation of
> "/localscratch/397189/tmpxft_00006280_00000000-6_gpubonded-impl.cpp4.ii".
>
>
>
>
>
>
> --
> Gromacs Users mailing list
>
> * Please search the archive at
> http://www.gromacs.org/Support/Mailing_Lists/GMX-Users_List before
> posting!
>
> * Can't post? Read http://www.gromacs.org/Support/Mailing_Lists
>
> * For (un)subscribe requests visit
> https://maillist.sys.kth.se/mailman/listinfo/gromacs.org_gmx-users or
> send a mail to gmx-users-request at gromacs.org.


More information about the gromacs.org_gmx-users mailing list