25 March 2020

Hackathon on Domain-Specific Libraries for Material Modelling



The MaX Hackathon on Domain-Specific Libraries for Material Modelling was held at the ICTP campus in Trieste, Italy, from the 25th to the 29th November 2019. The week program has been a fruitful opportunity to advance the development of the MaX libraries along with the interfacing of the MaX flagship codes to those libraries. The agenda included a mix of direct presentation on the state-of-the-art development related to the MaX libraries and flagship codes and a number of hacking sessions.

Three working groups were established for effective sessions of collaborative hands-on development on (i) the MaX LAXlib library, (ii) the porting of the flagship codes on the next generations of heterogeneous accelerated system for high-end computing (mostly hacking the MaX devicexlib library) and (iii) the advancement of the development of Yambo flagship code. In particular, the first group worked to define a set of common interfaces such that the MaX flagship codes can include abstract common calls to subroutines that implements highly optimized eigensolvers for distributed systems. The second group was established to define common interfaces to abstract the data management for the cases when codes run on compute nodes equipped with different physical memories, like in the case of heterogeneous systems, and the data movement between those memories requires specific attention for high performance. This activity becomes particularly relevant to keep the flagship codes development clean also when such codes are in FORTRAN and specific interfaces for memory data management require C pointers and/or C++ references. Finally, the third group undertook several development tasks related to the Yambo code with particular attention to Python tools and modules as well as the interface of the Yambo code with the MaX SpFFT library.

A number of 25 scientific developers actively attended from several MaX partner institutions such as SISSA, ICTP, CNR, FZJ, CEA, ETHZ and CINECA. In addition, Dr. Pietro Bonfà from the University of Parma was invited to share his past experience on the porting of Quantum ESPRESSO on computer systems equipped with NVIDIA GPUs. Dr. Geoff Womeldorff from the Los Alamos National Lab (LANL) was invited to present an overview of the Kokkos library with particular attention to the interface of FORTRAN codes with C++ codes or libraries.

Feedback from the participants unanimously indicated a positive experience of both exchange between the participants and to converge ongoing branches of development within MaX. All the developments performed during the hackathon meeting are now publicly available on the Github repositories of both the MaX LAXlib and the MaX devXlib library, while the all brand-new development related to Yambo will be included in the next release (stay tuned).