News
People are talking about NSIMD and its application to EFISPEC3D and GROMACS.
November 4 2020

Sylvain Jubertie, assitant professor at the University of Orleans, presented recent work around NSIMD at the days of the thematic research network "Data, Artificial Intelligence, Modeling and Simulation" (RTR-DIAMS). His presentation focused on the vectorization of a compuation kernel of the EFISPEC3D code. The EFISPEC3D open source code, developed since the end of 2009 by BRGM (the french geological survey) and then in collaboration with Intel France, is dedicated to the calculation of seismograms in complex 3D geological environments, for the prediction of local seismic hazard for research projects. Auto-vectorization of the kernel by compilers has proved unsuccessful. It was therefore decided to rewrite the loop of the latter using intrinsics. A factor of 2 on the execution time was thus obtained, however the use of SIMD intrinsics makes the code non-portable. NSIMD was therefore used to make the code portable while keeping the same performance.



Guillaume Quintin, CEO of Agenium Scale, will present similar results on Arm architecture at the "Arm HPC User Group" (AHUG) day, a virtual event of the SuperComputing 2020 conference. He will also briefly discuss how to use the SPMD module of the NSIMD library to program a computation kernel that can be compiled for CPUs and GPUs. NSIMD is the only C++ library to propose this programming paradigm. It is particularly well suited to write computational kernels in vector size agnostic way, which perfectly applies to the philosophy behind the Arm SVE technology.

[1] RTR-DIAMS: https://www.univ-orleans.fr/lifo/evenements/RTR-DIAMS/
[2] University of Orléans: https://www.univ-orleans.fr/fr
[3] EFISPEC3D: https://www.brgm.fr/projet/efispec3d-prediction-numerique-sismogrammes-risque-sismique
[4] GROMACS: http://www.gromacs.org/
[5] NSIMD: https://github.com/agenium-scale/nsimd
[6] GROMACS avec NSIMD: https://github.com/agenium-scale/gromacs
[7] Agenium Scale: https://agenium-scale.com/
[8] SuperComputing 2020: https://sc20.supercomputing.org/
[9] Arm HPC User Group: https://a-hug.org/sc20-ahug-talk-agenda/



The NSIMD library Application to EFISPEC3D, GROMACS and SVE programming

Optimization of a calculation kernel based on the method of Spectral Finished Elements