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

Guyen Gn guyen000 at gmail.com
Tue Nov 7 01:41:32 CET 2017


Getting back to this thread after a while, is this the name of package?:
rpmdevtools.noarch                     8.3-5.el7                   Server
Red Hat Enterprise Linux Server release 7.3 (Maipo)

I see it is included in the RH7.3
Thanks.,


On Wed, Aug 2, 2017 at 6:10 PM, Mark Abraham <mark.j.abraham at gmail.com>
wrote:

> Hi,
>
> Usually this means, like it says, that the linker isn't able to do the
> required job. I don't know whether the stock RHEL 7.2 linker can, but I
> imagine that's the issue. Usually using a devtoolset e.g.
> https://www.softwarecollections.org/en/scls/rhscl/devtoolset-4/ is the way
> to get a machine with useful tools on it rather than one with "stable" =
> "old" tools, particularly when you want to use the latest hardware...
>
> Mark
>
> On Thu, Aug 3, 2017 at 1:28 AM Guyen Gn <guyen000 at gmail.com> wrote:
>
> > Any update on this one??
> >
> > On Fri, Jul 14, 2017 at 1:30 PM, Guyen Gn <guyen000 at gmail.com> wrote:
> >
> > > Any ideas on this one? Thanks!
> > >
> > > On Mon, Jul 3, 2017 at 9:33 PM, Guyen Gn <guyen000 at gmail.com> wrote:
> > >
> > >> Still did not work. change xMIC to xCore and log is below (if it was
> > >> other way around, then originally it must have not worked).
> > >> Script file is all oneline.
> > >>
> > >> -- Performing Test C_xCORE_AVX512_FLAG_WORKS
> > >> -- Performing Test C_xCORE_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_xCORE_AVX512_FLAG_WORKS
> > >> -- Performing Test CXX_xCORE_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 package
> > >> CMake 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_sim
> > >> d_support_not_found)
> > >>   CMakeLists.txt:666 (gmx_manage_simd)
> > >>
> > >>
> > >> -- Configuring incomplete, errors occurred!
> > >>
> > >>
> > >> On Mon, Jul 3, 2017 at 2:44 PM, Mark Abraham <
> mark.j.abraham at gmail.com>
> > >> wrote:
> > >>
> > >>> Hi,
> > >>>
> > >>> On Mon, Jul 3, 2017 at 10:50 PM Guyen Gn <guyen000 at gmail.com> wrote:
> > >>>
> > >>> > 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
> > >>> >
> > >>>
> > >>> All the above is because your script needed editing to handle
> newlines
> > >>> from
> > >>> your copy-paste.
> > >>>
> > >>>
> > >>> > [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
> > >>>
> > >>>
> > >>> Aha. This is a known issue that we have fixed, but not yet made
> > available
> > >>> in a released version. When we wrote this code, we had no Skylake
> > >>> machines
> > >>> to test on. See
> > >>> https://gerrit.gromacs.org/c/6570/2/cmake/gmxManageSimd.cmake for
> the
> > >>> form
> > >>> of the fix. You can simply edit that single line in
> > >>> cmake/gmxManageSimd.cmake in your source directory and all will be
> > fine -
> > >>> maybe a fresh build directory will help.
> > >>>
> > >>> Mark
> > >>> --
> > >>> 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.
> > >>
> > >
> > >
> > >
> > > --
> > > Guyen G.
> > >
> >
> >
> >
> > --
> > Guyen G.
> > --
> > 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