[gmx-users] AVX related compiler error during build with P100 RHEL7

Guyen Gn guyen000 at gmail.com
Mon Jul 3 22:49:44 CEST 2017


Sorry for long wait on response, basically i followed the instruction at
nvidia website:

http://www.nvidia.com/object/gromacs-installation.html

I instaled GPU driver versoin 369, as well as CUDA, gcc, cmake. After that
it tells to run following:

CC=gcc CXX=g++ cmake <GROMACS_SRC_DIR> -DGMX_OPENMP=ON -DGMX_GPU=ON -
DGPU_DEPLOYMENT_KIT_ROOT_DIR=<GDK_PATH> -DGMX_BUILD_OWN_FFTW=ON -
DGMX_PREFER_STATIC_LIBS=ON -DCMAKE_BUILD_TYPE=Release -
DCMAKE_INSTALL_PREFIX=<GROMACS_INSTALL_DIR>

I tweaked as follows to fit my environment I setup (basically just
installation source and run directory:
CC=gcc CXX=g++ cmake /root/gromacs/gromacs-2016 -DGMX_OPENMP=ON
-DGMX_GPU=ON -DGPU_DEPLOYMENT_KIT_ROOT_DIR=/usr/local/cuda
-DGMX_BUILD_OWN_FFTW=ON -DGMX_PREFER_STATIC_LIBS=ON
-DCMAKE_BUILD_TYPE=Release
-DCMAKE_INSTALL_PREFIX=/root/gromacs/gromacs-2016-run inside build.sh shell
script.

This is the full log, I highlighted toward the end section of code where it
started to fail. It appears something related to AVX. Thanks.,

[root at localhost gromacs-2016]# ./build.sh
CMake Error: The source directory "/root/gromacs/gromacs-2016/-" does not
exist.
Specify --help for usage, or press the help button on the CMake GUI.
./build.sh: line 2: -DGMX_BUILD_OWN_FFTW=ON: command not found
./build.sh: line 3: -DCMAKE_BUILD_TYPE=Release: command not found
[root at localhost gromacs-2016]# nano -w build.sh
[root at localhost gromacs-2016]# pwd
/root/gromacs/gromacs-2016
[root at localhost gromacs-2016]# mkdir ~/gromacs/gromacs-run
[root at localhost gromacs-2016]# ./build.sh
-- The C compiler identification is GNU 4.8.5
-- The CXX compiler identification is GNU 4.8.5
-- Check for working C compiler: /usr/bin/gcc
-- Check for working C compiler: /usr/bin/gcc -- works
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Check for working CXX compiler: /usr/bin/g++
-- Check for working CXX compiler: /usr/bin/g++ -- works
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Performing Test CXXFLAG_STD_CXX0X
-- Performing Test CXXFLAG_STD_CXX0X - Success
-- Performing Test CXX11_SUPPORTED
-- Performing Test CXX11_SUPPORTED - Success
-- Performing Test CXX11_STDLIB_PRESENT
-- Performing Test CXX11_STDLIB_PRESENT - Success
-- Looking for NVIDIA GPUs present in the system
-- Number of NVIDIA GPUs detected: 2
-- Found CUDA: /usr/local/cuda (found suitable version "8.0", minimum
required is "5.0")
-- Could NOT find NVML (missing:  NVML_INCLUDE_DIR)
-- Checking for GCC x86 inline asm
-- Checking for GCC x86 inline asm - supported
-- Detecting best SIMD instructions for this CPU
-- Detected best SIMD instructions for this CPU - AVX_512
-- Try OpenMP C flag = [-fopenmp]
-- Performing Test OpenMP_FLAG_DETECTED
-- Performing Test OpenMP_FLAG_DETECTED - Success
-- Try OpenMP CXX flag = [-fopenmp]
-- Performing Test OpenMP_FLAG_DETECTED
-- Performing Test OpenMP_FLAG_DETECTED - Success
-- Found OpenMP: -fopenmp
-- Performing Test CFLAGS_EXCESS_PREC
-- Performing Test CFLAGS_EXCESS_PREC - Success
-- Performing Test CFLAGS_COPT
-- Performing Test CFLAGS_COPT - Success
-- Performing Test CFLAGS_NOINLINE
-- Performing Test CFLAGS_NOINLINE - Success
-- Performing Test CXXFLAGS_EXCESS_PREC
-- Performing Test CXXFLAGS_EXCESS_PREC - Success
-- Performing Test CXXFLAGS_COPT
-- Performing Test CXXFLAGS_COPT - Success
-- Performing Test CXXFLAGS_NOINLINE
-- Performing Test CXXFLAGS_NOINLINE - Success
-- Looking for include file unistd.h
-- Looking for include file unistd.h - found
-- Looking for include file pwd.h
-- Looking for include file pwd.h - found
-- Looking for include file dirent.h
-- Looking for include file dirent.h - found
-- Looking for include file time.h
-- Looking for include file time.h - found
-- Looking for include file sys/time.h
-- Looking for include file sys/time.h - found
-- Looking for include file io.h
-- Looking for include file io.h - not found
-- Looking for include file sched.h
-- Looking for include file sched.h - found
-- Looking for include file regex.h
-- Looking for include file regex.h - found
-- Looking for gettimeofday
-- Looking for gettimeofday - found
-- Looking for sysconf
-- Looking for sysconf - found
-- Looking for nice
-- Looking for nice - found
-- Looking for fsync
-- Looking for fsync - found
-- Looking for _fileno
-- Looking for _fileno - not found
-- Looking for fileno
-- Looking for fileno - found
-- Looking for _commit
-- Looking for _commit - not found
-- Looking for sigaction
-- Looking for sigaction - found
-- Performing Test HAVE_BUILTIN_CLZ
-- Performing Test HAVE_BUILTIN_CLZ - Success
-- Performing Test HAVE_BUILTIN_CLZLL
-- Performing Test HAVE_BUILTIN_CLZLL - Success
-- Looking for clock_gettime in rt
-- Looking for clock_gettime in rt - found
-- Looking for feenableexcept in m
-- Looking for feenableexcept in m - found
-- Checking for sched.h GNU affinity API
-- Performing Test sched_affinity_compile
-- Performing Test sched_affinity_compile - Success
-- Looking for include file mm_malloc.h
-- Looking for include file mm_malloc.h - found
-- Looking for include file malloc.h
-- Looking for include file malloc.h - found
-- Looking for include file xmmintrin.h
-- Looking for include file xmmintrin.h - found
-- Checking for _mm_malloc()
-- Checking for _mm_malloc() - supported
-- Looking for posix_memalign
-- Looking for posix_memalign - found
-- Looking for memalign
-- Looking for memalign - not found
-- Check if the system is big endian
-- Searching 16 bit integer
-- Looking for sys/types.h
-- Looking for sys/types.h - found
-- Looking for stdint.h
-- Looking for stdint.h - found
-- Looking for stddef.h
-- Looking for stddef.h - found
-- Check size of unsigned short
-- Check size of unsigned short - done
-- Using unsigned short
-- Check if the system is big endian - little endian
Searching for static libraries requested, so the GROMACS libraries will
also be static (BUILD_SHARED_LIBS=OFF)
-- Could NOT find Hwloc (missing:  HWLOC_LIBRARIES HWLOC_INCLUDE_DIRS)
(Required is at least version "1.5")
-- Looking for include file pthread.h
-- Looking for include file 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
-- Looking for include file pthread.h
-- Looking for include file pthread.h - found
-- Atomic operations found
-- Performing Test PTHREAD_SETAFFINITY
-- Performing Test PTHREAD_SETAFFINITY - Success
-- Check if the system is big endian
-- Searching 16 bit integer
-- Using unsigned short
-- Check if the system is big endian - little endian
-- Looking for inttypes.h
-- Looking for inttypes.h - found
-- Enabling single compilation unit for the CUDA non-bonded module.
Multiple compilation units are not compatible with CC 2.x devices, to
enable the feature specify only CC >=3.0 target architectures in
GMX_CUDA_TARGET_SM/GMX_CUDA_TARGET_COMPUTE.
-- Setting build user/date/host/cpu information
-- Setting build user & time - OK
-- Checking for 64-bit off_t
-- Checking for 64-bit off_t - present
-- Checking for fseeko/ftello
-- Checking for fseeko/ftello - present
-- Checking for SIGUSR1
-- Checking for SIGUSR1 - found
-- Checking for pipe support
-- Looking for C++ include regex
-- Looking for C++ include regex - found
-- Checking for system XDR support
-- Checking for system XDR support - present
-- Performing Test C_xMIC_AVX512_FLAG_WORKS




































*-- Performing Test C_xMIC_AVX512_FLAG_WORKS - Failed-- Performing Test
C_mavx512f_mfma_FLAG_WORKS-- Performing Test C_mavx512f_mfma_FLAG_WORKS -
Failed-- Performing Test C_mavx512f_FLAG_WORKS-- Performing Test
C_mavx512f_FLAG_WORKS - Failed-- Performing Test C_arch_AVX_FLAG_WORKS--
Performing Test C_arch_AVX_FLAG_WORKS - Failed-- Performing Test
C_hgnu_FLAG_WORKS-- Performing Test C_hgnu_FLAG_WORKS - Failed-- Performing
Test C_FLAG_WORKS-- Performing Test C_FLAG_WORKS - Success-- Performing
Test C_COMPILE_WORKS-- Performing Test C_COMPILE_WORKS - Failed-- Compiler
flag was valid, but executable did not build - perhaps update the binutils
package-- Performing Test CXX_xMIC_AVX512_FLAG_WORKS-- Performing Test
CXX_xMIC_AVX512_FLAG_WORKS - Failed-- Performing Test
CXX_mavx512f_mfma_FLAG_WORKS-- Performing Test CXX_mavx512f_mfma_FLAG_WORKS
- Failed-- Performing Test CXX_mavx512f_FLAG_WORKS-- Performing Test
CXX_mavx512f_FLAG_WORKS - Failed-- Performing Test
CXX_arch_AVX_FLAG_WORKS-- Performing Test CXX_arch_AVX_FLAG_WORKS -
Failed-- Performing Test CXX_hgnu_FLAG_WORKS-- Performing Test
CXX_hgnu_FLAG_WORKS - Failed-- Performing Test CXX_FLAG_WORKS-- Performing
Test CXX_FLAG_WORKS - Success-- Performing Test CXX_COMPILE_WORKS--
Performing Test CXX_COMPILE_WORKS - Failed-- Compiler flag was valid, but
executable did not build - perhaps update the binutils packageCMake Error
at cmake/gmxManageSimd.cmake:92 (message):  Found a compiler flag for AVX
512F support, but some other problem exists.  Update your assembler and/or
linker, e.g.  in the binutils package of your  distribution.Call Stack
(most recent call first):  cmake/gmxManageSimd.cmake:314
(gmx_give_fatal_error_when_simd_support_not_found)  CMakeLists.txt:666
(gmx_manage_simd)*



On Mon, Jun 19, 2017 at 4:21 PM, Mark Abraham <mark.j.abraham at gmail.com>
wrote:

> Hi,
>
> We can't support third party build guides, but please follow ours and ask
> questions about it here. Provide full details.
>
> Mark
>
> On Mon, 19 Jun 2017 23:39 Guyen Gn <guyen000 at gmail.com> wrote:
>
> > I have used the Nvidia's gromacs page to buid and run the gromacs.
> > Few months back, I have used the Xeon CPU to build and run
> > successfully on RHEL7.2. This also used the M6 GPU card.
> > Now the same build is failing with AVX related compiler error if I use
> > latest Skylake processor and P100 GPU. I have tried several
> > permutations and all are same. May I get a support here? if so, I can
> > send the details (build error log, system configuration, version of
> > gromacs used etc.,)
> > --
> > 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.
> >
> --
> 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.
>



-- 
Guyen G.


More information about the gromacs.org_gmx-users mailing list