31 May 2023

Modular structure to enhance efficiency and flexibility of simulation codes for materials science: the SIESTA case

A paper recently published in the Royal Society Open Science journal discusses the advantages of implementing a modular approach in electronic structure simulation software and demonstrates the increased efficiency of SIESTA, a lighthouse code of the MaX Centre of Excellence that in recent years has been redesigned according to this principle.

The study and design of new materials heavily relies on computer simulations software, which allows performing complex calculations in relatively short time and building models of large structures that wouldn’t be achievable otherwise. Over the years, several different software packages have been developed to simulate electronic structures, which are written in different ways but have large overlapping areas.

A much rapid and efficient development of these tools can be obtained by building software packages with a modular structure, where different parts are independent and communicate one with the others. This approach enables sharing parts of code (instead of replicating them) and adapting quicker to new hardware architectures and capabilities. In addition, different tasks can be completely separated; in particular, high-level routines devoted to the calculation of physical properties can be implemented independently from the underlaying algebraic operations and parallelization functions. An important advantage of this task separation is that, on the one hand, new models and algorithms can be implemented without the need for specific knowledge about parallelization, and, on the other, specialised external libraries can be adopted to deal with linear algebra and parallelization issues in a more efficient way.

This paradigm shift in the design of software for materials science has been adopted by the community that develops the SIESTA code and the benefits of this approach are described in a paper recently published in the Royal Society Open Science journal. The article is a collaboration between members of the Basque Nanoscience Cooperative Research Center (CIC nanoGUNE, San Sebastián), Simune Atomistics (San Sebastián), the Materials Science Institute of Barcelona (ICMAB-CSIC) and the Catalan Institute of Nanoscience and Nanotechnology –specifically, Prof. Pablo Ordejón, leader of the Theory and Simulation Group.

SIESTA is one of the lighthouse codes for quantum materials modelling of MaX (MAterials design at the eXascale), a European Centre of Excellence that brings together numerous leading European institutes and companies in a concerted effort to impulse the transition to the exascale computing for materials science. SIESTA was designed for linear-scaling simulations, which require considerably less computational cost compared with common cubic-scaling approaches. But its wide application was limited by the fact that, in order to take advantage of its simulation physical methods, users and developers had to work on parts of the code dealing with algebraic operations and parallelization functions.

Over the latest years, the SIESTA package has been redesigned according to the aforementioned modular approach to make it more agile and efficient. A more reliable version of linear-scaling solvers has been implemented thanks to the introduction of a number of specialised libraries. The distributed block compressed sparse row (DBCSR) and scalable linear algebra package (ScaLAPACK) libraries handle algebraic operations with sparse and dense matrices, respectively. The MatrixSwitch and libOMM libraries, recently developed within the Electronic Structure Library (ESL), are used to facilitate switching between different matrix formats and implement the energy minimization method. These libraries have been extended to make possible both cubic- and linear-scaling calculations.

The study presented in the paper demonstrates the efficiency and increased performance of the new SIESTA by applying it on large-scale simulations of a boron nitride (BN) layer. After showing the results of a comparison between several cubic-scaling algorithms, the authors prove the superiority of the linear-scaling solvers of SIESTA over the cubic-ones for insulating systems with sizes of several hundreds of atoms.


Reference article:

Irina V. Lebedeva, Alberto García, Emilio Artacho and Pablo Ordejón, Modular implementation of the linear- and cubic-scaling orbital minimization methods in electronic structure codes using atomic orbitals. Royal Society Open Science, April 2023, Volume 10 Issue 42023. DOI: 10.1098/rsos.230063