Package Details: gromacs 2023.2-1

Git Clone URL: https://aur.archlinux.org/gromacs.git (read-only, click to copy)
Package Base: gromacs
Description: A versatile package to perform molecular dynamics, i.e. simulate the Newtonian equations of motion for systems with hundreds to millions of particles.
Upstream URL: http://www.gromacs.org/
Keywords: chemistry science simulations
Licenses: LGPL
Submitter: xyproto
Maintainer: hseara (vedranmiletic)
Last Packager: vedranmiletic
Votes: 24
Popularity: 0.000342
First Submitted: 2011-12-14 17:03 (UTC)
Last Updated: 2023-08-04 19:09 (UTC)

Dependencies (11)

Required by (1)

Sources (1)

Latest Comments

« First ‹ Previous 1 2 3 4 5 6 7 .. 9 Next › Last »

hseara commented on 2019-06-13 14:46 (UTC)

@mefistofeles, either your cpu does not support AVX2 (check in /proc/cpuinfo) or your /etc/makepkg.conf is not set to native architecture:

CFLAGS="-march=native -O2 -pipe -fno-plt"
CXXFLAGS="${CFLAGS}"

PS: -fstack-protector-strong in makepkg.conf is not needed

mefistofeles commented on 2019-05-21 20:42 (UTC) (edited on 2019-05-21 21:27 (UTC) by mefistofeles)

For some reason using the following PKGBUILD fails compiling, check https://paste.rs/IqF

The error is in https://paste.rs/6W0

Specifically the part that says error: #error "compiling simd-avx2.h without avx2 support" when compiling FFTW.

The funny thing is that when I manually compile using "cmake .. -DGMX_GPU=ON -DGMX_SIMD=AVX2_256 -DGMX_BUILD_OWN_FFTW=ON" it works fine. Don't really know what is causing the error. Help appreciated.

BTW, using the -fstack-protector-strong in makepkg.conf didn't work. as suggested by @hseara

hseara commented on 2019-04-15 20:13 (UTC) (edited on 2019-11-08 08:50 (UTC) by hseara)

No longer needed in gromacs 2019.4

Installation notes

With cmake update to v3.14.x, gromacs is no longer capable of identifying correctly the CPU and therefore the appropriated SIMD level for compilation. If you want to compile gromacs with SIMD while the problem is not solved add the following option to PKGBUILD:

-DGMX_SIMD={AVX_128_FMA, AVX_256, AVX2_256, AVX2_128, AVX_512}

The KEYWORD depends on the SIMD support provided by your CPU.

Usage notes
source /etc/profile.d/GMXRC.bash

roina commented on 2017-12-17 12:35 (UTC)

hseara, the current (2016.4 released September 15, 2017) doesn't works with CUDA in old systems. But new gromacs (2018-beta2 released December 12 2017) works perfectly with current PKGBUILD (gromacs 2016.4-2) and CUDA 9.1. So don't wait and update the version.

hseara commented on 2017-12-04 15:30 (UTC) (edited on 2017-12-04 16:41 (UTC) by hseara)

The current PKGBUILD works perfectly in new systems.

@manlinke: I have the feeling that at least part of your problem is Cuda related. You seem to have an "NVIDIA GeForce GTX 550 Ti" which is no longer supported by Cuda 9. That means that your code will compile well, but tests will fail. The only possible workaround which I'm using on an old system myself is to use Cuda 8 in your system instead of Cuda 9. It is not possible for me to deal with this issue as it is graphics card dependent. You can always disable CUDA "-DGMX_GPU=OFF".

@manlike: The following lines overriding the /etc/makepkg.conf defaults should take care of the avx2 issues:

export CFLAGS="-march=native -O2 -pipe -fstack-protector-strong"

export CXXFLAGS="${CFLAGS}"

Once you fix the Cuda issues, please check again if you have really avx2 issues.

mefistofeles commented on 2017-12-03 22:53 (UTC)

@malinke I was also getting avx2 errors. Specifically this: error: #error "compiling simd-avx2.h without avx2 support", which some guys at #archlinux think it's an error from upstream. The complete error output is at: https://bpaste.net/show/3bbef4217034 (it may have a short lifetime, sorry)

There one can see that the problem is building the fftw, so I tried removing the -DGMX_BUILD_OWN_FFTW=ON \ lines in the PKGBUILD (lines 51 and 62) and got better results but still errors on testing it. The output I'm getting doing what I said is here: https://bpaste.net/show/01d9d68140bd

BTW, when compiling directly the source code by using cmake and make it builds, with not special options, just as it's shown in: http://web.archive.org/web/20170714101612/http://www.gromacs.org/Developer_Zone/Building_and_Testing/Cmake in the "Configuring with default settings" section. Hope this helps to give ideas on how to make gromacs build using this PKGBUILD/AUR?

hseara commented on 2017-10-01 11:00 (UTC)

@malink "(I didn't care if I had a avx build or not)" You should care. mdrun will be 2x to 4x faster if compiled with avx (depending on the version) activated. My fix will activate the highest level of avx by default. My fix will allow also CUDA support if available. This is why we need gcc5. CUDA 9 does not seem to solve this issue. In any case, thanks for your comment as the fix simplifies the installation.

malinke commented on 2017-10-01 07:33 (UTC)

I read the avx instructions. My build problem was that the default pkgbuild would fail since gromacs cmake config tried to enable avx and the global flags in `/etc/makepkg.conf` deactivated it later resulting in a build error (I didn't care if I had a avx build or not). The changed cflags in the current version fix that.

hseara commented on 2017-09-24 15:39 (UTC)

@mailkinke please read the content of the PKGBUILD file. There it is clearly stated: ###### CMAKE OPTIONS DISABLE BY DEFAULT ########### # If you are using an AVX2 capable CPU, you will # # not have AVX2 binaries unless you set -march to # # 'native', your respective architecture flag: # # https://gcc.gnu.org/onlinedocs/gcc-5.3.0/gcc/x86-Options.html#x86-Options # # or just include '-mavx2' to the default compiler# # flags in the /etc/makepkg.conf: # # https://wiki.archlinux.org/index.php/Makepkg#Architecture.2C_compile_flagsAdd # ###################################################

hseara commented on 2017-09-24 15:38 (UTC)

@malinke: Currently compiling CUDA against gcc7 is not possible. If you are not using Cuda, feel free to comment the lines where we change the compiler and their options in the PKGBUILD file.