[gmx-developers] Use of SVE in GROMACS

Guido Giuntoli guido.giuntoli at huawei.com
Wed Oct 7 12:29:33 CEST 2020


I have several questions regarding SIMD implementation in GROMACS and the future plans for it.

First, I am wondering if there is any project being carried on about porting GROMACS to SVE for ARM architecture.

1)      Are the current plans to include SVE in GROMACS for SIMD acceleration in CPU?

2)      Is there any free development branch where this is made?

Currently I am trying to extract the main kernels from GROMACS where SIMD instructions are performed in order to run them with SVE, reading the documentation and some articles I found that most of the SIMDs features are used in the force computation (bonded, non-bonded and PME). By looking inside the code I identified that the function "do_nb_verlet" is consuming around 70 - 80% of the time in sequential and parallel executions. I am using an Arm-based processor and running the "ion_channel" benchmark (Test Case A from the UEABS). I compiled GROMACS with Advanced NEON SIMD enabled.

3)      Is this routine responsible only of the non-bonded forces? Does the "nb" prefix indicate "non-bonded"?

4)      Is this same effect ("do_nb_verlet" the most expensive) measured for others benchmarks?

5)      Are there others ready-to-use and small benchmarks like the "ion_channel.tpr" available (<150K atoms)? Test Case B from UEABS (3.3 M atoms) is not suitable for my hardware resources.

Thanks a lot, Guido.

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://maillist.sys.kth.se/pipermail/gromacs.org_gmx-developers/attachments/20201007/1bee95a5/attachment.html>

More information about the gromacs.org_gmx-developers mailing list