The CECAM electronic structure library and the modular software development paradigm

First-principles electronic structure calculations are now accessible to a very large community of users across many disciplines, thanks to many successful software packages, some of which are described in this special issue. The traditional coding paradigm for such packages is monolithic, i.e., reg...

Descripción completa

Detalles Bibliográficos
Autores: Oliveira, Micael J.T., Papior, Nick, Pouillon, Yann, Blum, Volker, Artacho, Emilio, Caliste, Damien, Corsetti, Fabiano, Gironcoli, Stefano, de, Elena, Alin M., García, Alberto, García-Suárez, Víctor M., Genovese, Luigi, Huhn, William P., Huhs, Georg|||0000-0002-0898-4150, Kokott, Sebastian, Küçükbenli, Emine, Larsen, Ask H., Lazzaro, Alfio, Lebedeva, Irina V., Li, Yingzhou, López-Durán, David, López-Tarifa, Pablo, Lüders, Martin, Marques, Miguel A. L., Minar, Jan, Mohr, Stephan|||0000-0003-2510-5805, Mostofi, Arash A., O’Cais, Alan, Payne, Mike C., Ruh, Thomas, Smith, Daniel G.A., Soler, José M., Strubbe, David A., Tancogne-Dejean, Nicolas, Tildesley, Dominic, Torrent, Marc, Wen-zhe Yu, Victor
Tipo de recurso: artículo
Fecha de publicación:2020
País:España
Institución:Universitat Politècnica de Catalunya (UPC)
Repositorio:UPCommons. Portal del coneixement obert de la UPC
Idioma:inglés
OAI Identifier:oai:upcommons.upc.edu:2117/328241
Acceso en línea:https://hdl.handle.net/2117/328241
https://dx.doi.org/10.1063/5.0012901
Access Level:acceso abierto
Palabra clave:Software engineering
Open source library
Computational science and engineering
Modular programming
Electronic Structure Library (ESL)
CECAM (the European Centre for Atomic and Molecular Calculations)
Open-source libraries
Modular software
Computer hardware architecture
Enginyeria de programari
Àrees temàtiques de la UPC::Informàtica::Arquitectura de computadors
id ES_70e999103b012fa00a89398bd29b7c3a
oai_identifier_str oai:upcommons.upc.edu:2117/328241
network_acronym_str ES
network_name_str España
repository_id_str
dc.title.none.fl_str_mv The CECAM electronic structure library and the modular software development paradigm
title The CECAM electronic structure library and the modular software development paradigm
spellingShingle The CECAM electronic structure library and the modular software development paradigm
Oliveira, Micael J.T.
Software engineering
Open source library
Computational science and engineering
Modular programming
Electronic Structure Library (ESL)
CECAM (the European Centre for Atomic and Molecular Calculations)
Open-source libraries
Modular software
Computer hardware architecture
Enginyeria de programari
Àrees temàtiques de la UPC::Informàtica::Arquitectura de computadors
title_short The CECAM electronic structure library and the modular software development paradigm
title_full The CECAM electronic structure library and the modular software development paradigm
title_fullStr The CECAM electronic structure library and the modular software development paradigm
title_full_unstemmed The CECAM electronic structure library and the modular software development paradigm
title_sort The CECAM electronic structure library and the modular software development paradigm
dc.creator.none.fl_str_mv Oliveira, Micael J.T.
Papior, Nick
Pouillon, Yann
Blum, Volker
Artacho, Emilio
Caliste, Damien
Corsetti, Fabiano
Gironcoli, Stefano, de
Elena, Alin M.
García, Alberto
García-Suárez, Víctor M.
Genovese, Luigi
Huhn, William P.
Huhs, Georg|||0000-0002-0898-4150
Kokott, Sebastian
Küçükbenli, Emine
Larsen, Ask H.
Lazzaro, Alfio
Lebedeva, Irina V.
Li, Yingzhou
López-Durán, David
López-Tarifa, Pablo
Lüders, Martin
Marques, Miguel A. L.
Minar, Jan
Mohr, Stephan|||0000-0003-2510-5805
Mostofi, Arash A.
O’Cais, Alan
Payne, Mike C.
Ruh, Thomas
Smith, Daniel G.A.
Soler, José M.
Strubbe, David A.
Tancogne-Dejean, Nicolas
Tildesley, Dominic
Torrent, Marc
Wen-zhe Yu, Victor
author Oliveira, Micael J.T.
author_facet Oliveira, Micael J.T.
Papior, Nick
Pouillon, Yann
Blum, Volker
Artacho, Emilio
Caliste, Damien
Corsetti, Fabiano
Gironcoli, Stefano, de
Elena, Alin M.
García, Alberto
García-Suárez, Víctor M.
Genovese, Luigi
Huhn, William P.
Huhs, Georg|||0000-0002-0898-4150
Kokott, Sebastian
Küçükbenli, Emine
Larsen, Ask H.
Lazzaro, Alfio
Lebedeva, Irina V.
Li, Yingzhou
López-Durán, David
López-Tarifa, Pablo
Lüders, Martin
Marques, Miguel A. L.
Minar, Jan
Mohr, Stephan|||0000-0003-2510-5805
Mostofi, Arash A.
O’Cais, Alan
Payne, Mike C.
Ruh, Thomas
Smith, Daniel G.A.
Soler, José M.
Strubbe, David A.
Tancogne-Dejean, Nicolas
Tildesley, Dominic
Torrent, Marc
Wen-zhe Yu, Victor
author_role author
author2 Papior, Nick
Pouillon, Yann
Blum, Volker
Artacho, Emilio
Caliste, Damien
Corsetti, Fabiano
Gironcoli, Stefano, de
Elena, Alin M.
García, Alberto
García-Suárez, Víctor M.
Genovese, Luigi
Huhn, William P.
Huhs, Georg|||0000-0002-0898-4150
Kokott, Sebastian
Küçükbenli, Emine
Larsen, Ask H.
Lazzaro, Alfio
Lebedeva, Irina V.
Li, Yingzhou
López-Durán, David
López-Tarifa, Pablo
Lüders, Martin
Marques, Miguel A. L.
Minar, Jan
Mohr, Stephan|||0000-0003-2510-5805
Mostofi, Arash A.
O’Cais, Alan
Payne, Mike C.
Ruh, Thomas
Smith, Daniel G.A.
Soler, José M.
Strubbe, David A.
Tancogne-Dejean, Nicolas
Tildesley, Dominic
Torrent, Marc
Wen-zhe Yu, Victor
author2_role author
author
author
author
author
author
author
author
author
author
author
author
author
author
author
author
author
author
author
author
author
author
author
author
author
author
author
author
author
author
author
author
author
author
author
author
dc.subject.none.fl_str_mv Software engineering
Open source library
Computational science and engineering
Modular programming
Electronic Structure Library (ESL)
CECAM (the European Centre for Atomic and Molecular Calculations)
Open-source libraries
Modular software
Computer hardware architecture
Enginyeria de programari
Àrees temàtiques de la UPC::Informàtica::Arquitectura de computadors
topic Software engineering
Open source library
Computational science and engineering
Modular programming
Electronic Structure Library (ESL)
CECAM (the European Centre for Atomic and Molecular Calculations)
Open-source libraries
Modular software
Computer hardware architecture
Enginyeria de programari
Àrees temàtiques de la UPC::Informàtica::Arquitectura de computadors
description First-principles electronic structure calculations are now accessible to a very large community of users across many disciplines, thanks to many successful software packages, some of which are described in this special issue. The traditional coding paradigm for such packages is monolithic, i.e., regardless of how modular its internal structure may be, the code is built independently from others, essentially from the compiler up, possibly with the exception of linear-algebra and message-passing libraries. This model has endured and been quite successful for decades. The successful evolution of the electronic structure methodology itself, however, has resulted in an increasing complexity and an ever longer list of features expected within all software packages, which implies a growing amount of replication between different packages, not only in the initial coding but, more importantly, every time a code needs to be re-engineered to adapt to the evolution of computer hardware architecture. The Electronic Structure Library (ESL) was initiated by CECAM (the European Centre for Atomic and Molecular Calculations) to catalyze a paradigm shift away from the monolithic model and promote modularization, with the ambition to extract common tasks from electronic structure codes and redesign them as open-source libraries available to everybody. Such libraries include “heavy-duty” ones that have the potential for a high degree of parallelization and adaptation to novel hardware within them, thereby separating the sophisticated computer science aspects of performance optimization and re-engineering from the computational science done by, e.g., physicists and chemists when implementing new ideas. We envisage that this modular paradigm will improve overall coding efficiency and enable specialists (whether they be computer scientists or computational scientists) to use their skills more effectively and will lead to a more dynamic evolution of software in the community as well as lower barriers to entry for new developers. The model comes with new challenges, though. The building and compilation of a code based on many interdependent libraries (and their versions) is a much more complex task than that of a code delivered in a single self-contained package. Here, we describe the state of the ESL, the different libraries it now contains, the short- and mid-term plans for further libraries, and the way the new challenges are faced. The ESL is a community initiative into which several pre-existing codes and their developers have contributed with their software and efforts, from which several codes are already benefiting, and which remains open to the community
publishDate 2020
dc.date.none.fl_str_mv 2020
2020-07-13
2020
2020-08-28
dc.type.none.fl_str_mv journal article
http://purl.org/coar/resource_type/c_6501
AM
http://purl.org/coar/version/c_ab4af688f83e57aa
dc.type.openaire.fl_str_mv info:eu-repo/semantics/article
format article
dc.identifier.none.fl_str_mv https://hdl.handle.net/2117/328241
https://dx.doi.org/10.1063/5.0012901
url https://hdl.handle.net/2117/328241
https://dx.doi.org/10.1063/5.0012901
dc.language.none.fl_str_mv Inglés
eng
language_invalid_str_mv Inglés
language eng
dc.relation.none.fl_str_mv European Commission http://doi.org/10.13039/100010661 Horizon 2020 Framework Programme 824143 MAterials design at the eXascale. European Centre of Excellence in materials modelling, simulations, and design
dc.rights.none.fl_str_mv open access
http://purl.org/coar/access_right/c_abf2
dc.rights.openaire.fl_str_mv info:eu-repo/semantics/openAccess
rights_invalid_str_mv open access
http://purl.org/coar/access_right/c_abf2
eu_rights_str_mv openAccess
dc.format.none.fl_str_mv application/pdf
dc.publisher.none.fl_str_mv AIP Publishing
publisher.none.fl_str_mv AIP Publishing
dc.source.none.fl_str_mv reponame:UPCommons. Portal del coneixement obert de la UPC
instname:Universitat Politècnica de Catalunya (UPC)
instname_str Universitat Politècnica de Catalunya (UPC)
reponame_str UPCommons. Portal del coneixement obert de la UPC
collection UPCommons. Portal del coneixement obert de la UPC
repository.name.fl_str_mv
repository.mail.fl_str_mv
_version_ 1869410614889152512
spelling The CECAM electronic structure library and the modular software development paradigmOliveira, Micael J.T.Papior, NickPouillon, YannBlum, VolkerArtacho, EmilioCaliste, DamienCorsetti, FabianoGironcoli, Stefano, deElena, Alin M.García, AlbertoGarcía-Suárez, Víctor M.Genovese, LuigiHuhn, William P.Huhs, Georg|||0000-0002-0898-4150Kokott, SebastianKüçükbenli, EmineLarsen, Ask H.Lazzaro, AlfioLebedeva, Irina V.Li, YingzhouLópez-Durán, DavidLópez-Tarifa, PabloLüders, MartinMarques, Miguel A. L.Minar, JanMohr, Stephan|||0000-0003-2510-5805Mostofi, Arash A.O’Cais, AlanPayne, Mike C.Ruh, ThomasSmith, Daniel G.A.Soler, José M.Strubbe, David A.Tancogne-Dejean, NicolasTildesley, DominicTorrent, MarcWen-zhe Yu, VictorSoftware engineeringOpen source libraryComputational science and engineeringModular programmingElectronic Structure Library (ESL)CECAM (the European Centre for Atomic and Molecular Calculations)Open-source librariesModular softwareComputer hardware architectureEnginyeria de programariÀrees temàtiques de la UPC::Informàtica::Arquitectura de computadorsFirst-principles electronic structure calculations are now accessible to a very large community of users across many disciplines, thanks to many successful software packages, some of which are described in this special issue. The traditional coding paradigm for such packages is monolithic, i.e., regardless of how modular its internal structure may be, the code is built independently from others, essentially from the compiler up, possibly with the exception of linear-algebra and message-passing libraries. This model has endured and been quite successful for decades. The successful evolution of the electronic structure methodology itself, however, has resulted in an increasing complexity and an ever longer list of features expected within all software packages, which implies a growing amount of replication between different packages, not only in the initial coding but, more importantly, every time a code needs to be re-engineered to adapt to the evolution of computer hardware architecture. The Electronic Structure Library (ESL) was initiated by CECAM (the European Centre for Atomic and Molecular Calculations) to catalyze a paradigm shift away from the monolithic model and promote modularization, with the ambition to extract common tasks from electronic structure codes and redesign them as open-source libraries available to everybody. Such libraries include “heavy-duty” ones that have the potential for a high degree of parallelization and adaptation to novel hardware within them, thereby separating the sophisticated computer science aspects of performance optimization and re-engineering from the computational science done by, e.g., physicists and chemists when implementing new ideas. We envisage that this modular paradigm will improve overall coding efficiency and enable specialists (whether they be computer scientists or computational scientists) to use their skills more effectively and will lead to a more dynamic evolution of software in the community as well as lower barriers to entry for new developers. The model comes with new challenges, though. The building and compilation of a code based on many interdependent libraries (and their versions) is a much more complex task than that of a code delivered in a single self-contained package. Here, we describe the state of the ESL, the different libraries it now contains, the short- and mid-term plans for further libraries, and the way the new challenges are faced. The ESL is a community initiative into which several pre-existing codes and their developers have contributed with their software and efforts, from which several codes are already benefiting, and which remains open to the communityThe authors would like to thank CECAM for launching and pushing the ESL, as well as hosting part of its infrastructure, and partly funding the extended workshops where most of the coding was done, both in the Lausanne headquarters and in the Dublin, Trieste, and Zaragoza nodes. Within CECAM, the authors particularly thank Sara Bonella, Bogdan Nichita, and Ignacio Pagonabarraga. The authors also acknowledge all the people who have supported and contributed to the ESL in different ways, including Luis Agapito, Xavier Andrade, Balint Aradi, Emanuele Bosoni, Lori A. Burns, Christian Carbogno, Ivan Carnimeo, Abel Carreras Conill, Alberto Castro, Michele Ceriotti, Anoop Chandran, Wibe de Jong, Pietro Delugas, Thierry Deutsch, Hubert Ebert, Aleksandr Fonari, Luca Ghiringhelli, Paolo Giannozzi, Matteo Giantomassi, Judit Gimenez, Ivan Girotto, Xavier Gonze, Benjamin Hourahine, Jürg Hutter, Thomas Keal, Jan Kloppenburg, Hyungjun Lee, Liang Liang, Lin Lin, Jianfeng Lu, Nicola Marzari, Donal MacKernan, Layla Martin-Samos, Paolo Medeiros, Fawzi Mohamed, Jens Jørgen Mortensen, Sebastian Ohlmann, David O’Regan, Charles Patterson, Etienne Plésiat, Markus Rampp, Laura Ratcliff, Stefano Sanvito, Paul Saxe, Matthias Scheffler, Didier Sebilleau, Søren Smidstrup, James Spencer, Atsushi Togo, Joost Vandevondele, Matthieu Verstraete, and Brian Wylie. The authors would also like to thank the Psi-k network for having partially funded several of the ESL workshops. A.O., E.A., D.L.-D., S.G., E.K., A.A.M., and M.C.P. received funding from the European Union’s Horizon 2020 research and innovation program under Grant Agreement No. 676531 (Centre of Excellence project E-CAM). The same project has partly funded the extended software development workshops in which most of the ESL coding effort has happened. A.G., S.M., and E.A. acknowledge support from the European Union’s Horizon 2020 research and innovation program under Grant Agreement No. 824143 (Centre of Excellence project MaX). M.A.L.M. acknowledges partial support from the DFG through Project No. MA-6786/1. D.G.A.S. was supported by the U.S. National Science Foundation (NSF) (Grant No. ACI-1547580). M.C.P. acknowledges support from the EPSRC under Grant No. EP/P034616/1. A.A.M. acknowledges support from the Thomas Young Centre under Grant No. TYC-101, the Wannier Developers Group, and all of the authors and contributors of the wannier90 code (see Ref. 115 for a complete list). A.M.E. acknowledges support from CoSeC, the Computational Science Centre for Research Communities, through CCP5: The Computer Simulation of Condensed Phases (EPSRC Grant Nos. EP/M022617/1 and EP/P022308/1). A.G. and J.M.S. acknowledge Spain’s Ministry of Science (Grant No. PGC2018-096955-B-C42). E.A., A.G., and J.M.S. acknowledge Spain’s Ministry of Science (Grant No. FIS2015-64886-C5). Y.P., D.L.-D., and E.A. acknowledge support from the Spanish MINECO and EU Structural Investment Funds (Grant No. RTC-2016-5681-7). M.L. acknowledges support from the EPRSC under Grant No. EP/M022668/1. M.L., M.J.T.O., and Y.P. acknowledge support from the EU COST action (Grant No. MP1306). J.M. was supported by the European Regional Development Fund (ERDF), project CEDAMNF (Reg. No. CZ.02.1.01/0.0/0.0/15-003/0000358). V.W.-Z.Y., W.P.H., Y.L., and V.B. acknowledge support from the National Science Foundation under Award No. ACI-1450280 (the ELSI project). V.W.-Z.Y. also acknowledges a MolSSI fellowship (NSF Award No. ACI-1547580). Simune Atomistics S.L. is thanked for allowing A.H.L. and Y.P. to contribute to the ESL, as is Synopsys, Inc., for the partial availability of F.CPeer ReviewedAIP Publishing20202020-07-1320202020-08-28journal articlehttp://purl.org/coar/resource_type/c_6501AMhttp://purl.org/coar/version/c_ab4af688f83e57aainfo:eu-repo/semantics/articleapplication/pdfhttps://hdl.handle.net/2117/328241https://dx.doi.org/10.1063/5.0012901reponame:UPCommons. Portal del coneixement obert de la UPCinstname:Universitat Politècnica de Catalunya (UPC)InglésengEuropean Commission http://doi.org/10.13039/100010661 Horizon 2020 Framework Programme 824143 MAterials design at the eXascale. European Centre of Excellence in materials modelling, simulations, and designopen accesshttp://purl.org/coar/access_right/c_abf2info:eu-repo/semantics/openAccessoai:upcommons.upc.edu:2117/3282412026-05-27T15:37:01Z
score 15,300719