Quantum ESPRESSO
Quantum ESPRESSO is an integrated, open-source suite of computer codes designed for first-principles electronic-structure calculations and materials modeling at the nanoscale, primarily based on density-functional theory (DFT) employing plane-wave basis sets and pseudopotentials such as norm-conserving, ultrasoft, and projector-augmented wave methods.[1][2] Its full name, opEn-Source Package for Research in Electronic Structure, Simulation, and Optimization, reflects its focus on enabling quantum simulations of materials through efficient, modular tools that prioritize innovation, user-friendliness, and scalability on massively parallel architectures.[2][3] The project originated in 2002 through the merger of three established DFT packages—PWscf for plane-wave self-consistent field calculations, PHonon for phonon properties, and fpmd for first-principles molecular dynamics—developed by leading research groups in electronic-structure theory.[4] Since then, it has evolved into a collaborative, community-driven effort under the Quantum ESPRESSO Foundation, coordinated by key developers including Paolo Giannozzi of the University of Udine and IOM-CNR in Italy, with contributions from international institutions emphasizing interoperability and code modularity.[2][4] Distributed freely under the GNU General Public License, Quantum ESPRESSO supports a wide array of computations, including ground-state properties (total energies, forces, Kohn-Sham orbitals), structural optimization, Car-Parrinello and Born-Oppenheimer molecular dynamics, phonon dispersions, electron-phonon interactions, dielectric tensors, NMR/EPR shifts, X-ray absorption spectra, and quantum transport properties via integrations like Wannier90 and EPW.[5][3] Notable for its versatility, the suite runs on diverse platforms from personal computers and workstations to high-performance computing clusters, incorporating parallelization via MPI and OpenMP, as well as GPU acceleration through CUDA since 2021 to enhance performance on exascale systems.[2][6] It includes core components like PWscf and CP (Car-Parrinello), alongside specialized plug-ins for advanced tasks such as time-dependent DFT (TurboTDDFT), many-body perturbation theory (Yambo), and electrochemical simulations (Environ), fostering applications in condensed matter physics, nanoscience, and materials design.[5][6] Ongoing developments emphasize restructuring for exascale computing, improved accuracy in response functions, and support for 2D materials and magnetic excitations, ensuring Quantum ESPRESSO remains a cornerstone for ab initio simulations in modern computational materials science.[4][6]History and Development
Origins and Founding
Quantum ESPRESSO originated as an open-source initiative led by the CNR-INFM DEMOCRITOS National Simulation Center in Trieste, Italy, with key collaborations from institutions including the Massachusetts Institute of Technology (MIT) and Princeton University. The project was formally established in 2002 through the merger of several pre-existing computational codes focused on density-functional theory (DFT) calculations, primarily PWscf (Plane-Wave Self-Consistent Field), which had been developed earlier for plane-wave pseudopotential methods in electronic structure computations.[4] This integration aimed to create a unified, modular platform that could support a wide range of nanoscale materials modeling tasks, addressing the limitations of proprietary software that restricted accessibility, customization, and community-driven innovation in quantum simulations. The primary motivations for founding Quantum ESPRESSO stemmed from the growing need in the early 2000s for efficient, open-source tools that enabled researchers to perform accurate DFT-based simulations of materials properties, such as electronic structures and vibrational spectra, using plane waves and pseudopotentials. At the time, many available software packages were either closed-source or lacked the modularity required for integrating new methodological advances, hindering collaborative progress in condensed matter physics and materials science.[4] By distributing the suite under the GNU General Public License, the founders sought to foster a global community of developers and users, promoting reproducibility and rapid dissemination of scientific advancements without intellectual property barriers. Key figures in the project's inception included Stefano Baroni, Paolo Giannozzi, and Nicola Marzari, who coordinated the initial code merging and established the foundational architecture around PWscf as the core engine for self-consistent field calculations.[7] Early development emphasized scalability for high-performance computing environments, reflecting the era's push toward ab initio methods for complex systems. To ensure long-term coordination, maintenance, and governance, the Quantum ESPRESSO Foundation was established on February 24, 2011, as a non-profit entity registered in the United Kingdom, serving as the central hub for the project's stewardship and community engagement.[8]Key Milestones and Releases
The Quantum ESPRESSO project formally began in 2002 through the merger of three existing density-functional theory packages: PWscf for plane-wave self-consistent field calculations, PHonon for phonon calculations, and FPMD for first-principles molecular dynamics, establishing a unified open-source framework for electronic-structure simulations.[4] A significant advancement came with the release of version 4.0 in 2009, which introduced a fully modular architecture that restructured the codebase into independent, interoperable packages, enabling easier extension and maintenance while preserving core functionalities like plane-wave basis sets and pseudopotentials.[9] This modularity facilitated contributions from a growing international community and laid the groundwork for subsequent enhancements in scalability and performance. Version 6.0, released in October 2016, marked a major step in improving parallel scalability, incorporating advanced hybrid MPI-OpenMP strategies and optimizations for large-scale simulations on high-performance computing systems, which allowed for more efficient handling of complex materials systems.[10] In 2020, the project launched a dedicated "toward the exascale" initiative to adapt the suite for emerging heterogeneous architectures, focusing on porting key algorithms to accelerators while maintaining portability across CPU and GPU environments.[4] This effort built on prior GPU explorations and aligned with broader European high-performance computing goals. By 2023, advancements in GPU acceleration culminated in the porting of the PWscf code using OpenACC directives and CUDA Fortran, enabling offloading of critical kernels like Fourier transforms and matrix operations to achieve substantial speedups on NVIDIA hardware without sacrificing code readability.[6] Version 7.0, released in late 2021, further enhanced GPU support across PWscf and the Car-Parrinello molecular dynamics code (CP), extending offloading to additional routines such as Davidson diagonalization and introducing MPI-parallelized dispersion corrections, which improved performance on pre-exascale supercomputers.[11] The most recent stable release, version 7.4.1 on March 14, 2025, addressed critical bug fixes in phonon and electron-phonon modules while integrating OpenMP-based GPU offload capabilities for broader accelerator compatibility, ensuring robustness for production workflows.[12] Organizationally, the Quantum ESPRESSO Foundation was formed in the 2010s to provide governance, coordinating development among global research groups and managing intellectual property under the GNU General Public License.[13] In parallel, integration with the MaX Centre of Excellence since 2015 has driven much of the recent progress, leveraging European Union funding for exascale-ready materials modeling.[14] By 2025, Quantum ESPRESSO has amassed over 10,000 citations across its foundational publications, reflecting its widespread adoption, with thousands of research papers leveraging the suite annually for nanoscale materials simulations.[15]Software Architecture
Core Components
The core components of Quantum ESPRESSO form the foundational suite for performing density functional theory (DFT) calculations and related simulations, enabling users to compute electronic structures, dynamics, and post-analysis of materials at the atomic scale. These packages—PWscf, CP, PostProc, and Atomic—are tightly integrated through shared libraries and modules, providing a robust platform for ground-state properties, molecular dynamics, data processing, and pseudopotential preparation. Their design emphasizes modularity, allowing efficient reuse of routines across the distribution while maintaining compatibility with various pseudopotential formats.[2] PWscf, or Plane-Wave Self-Consistent Field, is the primary package for ground-state DFT calculations, solving the Kohn-Sham equations to determine electronic wavefunctions, energies, forces, and stresses in periodic systems. It employs a plane-wave basis set for expanding the wavefunctions and supports norm-conserving, ultrasoft, and projector-augmented wave (PAW) pseudopotentials to handle core electrons efficiently, reducing computational cost while preserving accuracy for valence electrons. This package serves as the cornerstone for static structural optimizations and single-point energy evaluations, with inputs specifying cell parameters, atomic positions, and exchange-correlation functionals like LDA or GGA.[16][2] The CP package implements Car-Parrinello molecular dynamics for ab initio simulations of ionic and electronic degrees of freedom, using a fictitious Lagrangian to couple the dynamics of nuclei and electrons without explicit orthogonalization of wavefunctions. This approach, originally proposed by Car and Parrinello, introduces a fictitious electron mass to propagate electronic orbitals alongside atomic positions via Verlet integration, enabling the study of time evolution in systems like liquids or surfaces at finite temperatures. CP supports variable-cell dynamics and thermostats such as Nosé-Hoover, making it suitable for exploring phase transitions or diffusion processes over picosecond timescales.[17][18] PostProc provides a collection of utilities for analyzing and visualizing outputs from PWscf and CP calculations, extracting derived quantities without rerunning full simulations. Key tools include computation of density of states (DOS) via smearing techniques or tetrahedron method, plotting of charge densities on grids, and generation of band structures along high-symmetry paths in the Brillouin zone. These postprocessing steps facilitate interpretation of electronic properties, such as band gaps or Fermi surfaces, and are invoked via simple input files referencing prior save directories.[19][2] The Atomic package is a standalone tool for performing all-electron DFT calculations on isolated atoms, primarily used to generate and test pseudopotentials required by PWscf and CP. It solves the radial Schrödinger equation to produce Kohn-Sham orbitals and energies, supporting methods like Troullier-Martins or Rabe-Rappe-Kaxiras-Joannopoulos for pseudization, and includes checks for transferability through logarithmic derivatives and ghost states. Users specify atomic configurations, relativistic effects, and exchange-correlation functionals to create norm-conserving, ultrasoft, or PAW datasets, ensuring compatibility with the suite's core engines.[20][2] Quantum ESPRESSO's core packages are implemented primarily in Fortran 90/95, with C wrappers for interfacing and some legacy Fortran-77 components, promoting portability across high-performance computing platforms. The modular architecture organizes code into shared libraries—such as Modules/ for utilities, upflib/ for pseudopotential handling, and FFTXlib/ for fast Fourier transforms—fostering interdependencies that minimize redundancy; for instance, PWscf and CP both rely on LAXlib/ for linear algebra solvers, while PostProc accesses PWscf save files directly. This design facilitates extensions like phonon calculations by building atop these foundations.[2][21]Plugins and Extensions
Quantum ESPRESSO provides a range of plugins and extensions that augment its core functionality, enabling specialized simulations beyond ground-state electronic structure calculations. These optional modules are designed to integrate seamlessly with the base packages, such as PWscf for self-consistent field computations, by reusing output data like charge densities and wavefunctions. They support advanced analyses in areas like vibrational properties, reaction pathways, and excited-state phenomena, making the suite versatile for materials science research.[2] The PHonon package implements linear-response calculations using density-functional perturbation theory (DFPT) to compute phonon dispersions, dielectric constants, and Born effective charges. It allows users to evaluate vibrational properties at arbitrary wavevectors through Fourier interpolation of dynamical matrices obtained from DFPT responses. For instance, after a ground-state calculation with PWscf, PHonon processes the results to generate phonon band structures, which are essential for understanding lattice dynamics in solids. This extension is included in the standard Quantum ESPRESSO distribution and compiled alongside core components.[22][23] The NEB (Nudged Elastic Band) module, implemented in PWneb, facilitates the determination of minimum energy paths and transition states between atomic configurations, employing the climbing image nudged elastic band technique to optimize the reaction coordinate. It is particularly useful for studying diffusion barriers or chemical reactions in materials, where multiple intermediate images are relaxed under spring-like constraints to converge on the saddle point. PWneb relies on PWscf outputs for initial and final states and is built as part of the main distribution, allowing chained workflows for pathway exploration.[24] TDDFPT (Time-Dependent Density-Functional Perturbation Theory) extends the suite to calculate optical properties, including absorption spectra, excitonic effects, and core-level spectroscopy, by solving linear-response equations in the time-dependent framework. Programs like turboDavidson.x and turboLanczos.x enable efficient computation of excitation energies and oscillator strengths for molecules and solids, often starting from KS orbitals obtained via PWscf. This module is integrated into the Quantum ESPRESSO release and supports applications in photovoltaics and spectroscopy.[25][26] Additional extensions include EPW for ab initio electron-phonon interactions, which interpolates matrix elements using maximally localized Wannier functions to study superconductivity, carrier mobilities, and thermal transport; it processes phonon and electronic data from Quantum ESPRESSO to compute coupling strengths efficiently on dense k-grids. Interfaces to Yambo provide access to many-body perturbation theory methods, such as GW approximations for quasiparticle energies and Bethe-Salpeter equation for excitons, by converting PWscf outputs via the p2y tool for seamless integration. These external codes, EPW and Yambo, are downloaded and compiled separately but share core libraries from Quantum ESPRESSO, enabling hybrid workflows like ground-state DFT followed by electron-phonon or GW post-processing.[27][28][29][30] Installation of these plugins typically involves configuring the Quantum ESPRESSO build system with make or CMake, where core extensions like PHonon, NEB, and TDDFPT are enabled by default in the distribution tarball, while EPW and Yambo require separate compilation against the QE libraries. Users can chain calculations, for example, generating a PWscf save directory for input to PHonon, ensuring modularity without redundant computations.[31][25]Computational Capabilities
Electronic Structure Methods
Quantum ESPRESSO primarily employs density functional theory (DFT) to compute the electronic structure of materials, solving the Kohn-Sham equations iteratively to obtain the ground-state electron density and total energy.[3] These equations reformulate the many-electron problem into a set of single-particle equations, where the effective potential includes contributions from the external potential, Hartree term, and exchange-correlation effects.[3] The iterative self-consistent field (SCF) procedure minimizes the total energy with respect to the electron density, typically using mixing schemes like the modified Broyden method for convergence.[3] The software supports a range of exchange-correlation functionals to approximate the complex many-body interactions. Local density approximation (LDA) functionals, such as those parametrized by Ceperley and Alder, provide a basic treatment based on the uniform electron gas. Generalized gradient approximation (GGA) functionals, including Perdew-Burke-Ernzerhof (PBE) and Becke-Lee-Yang-Parr (BLYP), incorporate density gradients for improved accuracy in binding energies and structural properties. More advanced options include meta-GGA functionals like Tao-Perdew-Staroverov-Scuseria (TPSS) and hybrid functionals such as PBE0 and Heyd-Scuseria-Ernzerhof (HSE), which mix exact Hartree-Fock exchange to better describe band gaps and reaction barriers. Starting from version 7.2 (released 2023), oxidation-state constrained DFT enables precise control of atomic oxidation states by enforcing charge constraints on specific atoms or groups, useful for modeling transition metal complexes and electrochemical interfaces.[32][33] Wavefunctions in Quantum ESPRESSO are expanded in a plane-wave basis set, suitable for periodic systems, with the expansion truncated at a kinetic energy cutoff E_{\rm cut} to balance accuracy and computational cost.[3] This cutoff, often denoted asecutwfc in input files, determines the number of plane waves and is typically chosen between 20-50 Ry depending on the pseudopotential and material.[34] To handle core electrons efficiently, pseudopotential approximations replace the strong nuclear potential with a smoother effective potential, reducing the required basis size; supported types include norm-conserving, ultrasoft Vanderbilt, and projector-augmented wave (PAW) methods.[3]
The core Kohn-Sham equation is solved in reciprocal space as a generalized eigenvalue problem:
\hat{H} \psi_{n{\bf k}} ({\bf r}) = \varepsilon_{n{\bf k}} \psi_{n{\bf k}} ({\bf r}),
where \hat{H} is the Hamiltonian operator comprising the kinetic energy operator -\frac{\hbar^2}{2m} \nabla^2, the Hartree potential V_H({\bf r}), the exchange-correlation potential V_{xc}({\bf r}), and the pseudopotential V_{ps}({\bf r}).[3] The wavefunctions \psi_{n{\bf k}} are expanded as \psi_{n{\bf k}}({\bf r}) = \sum_{\bf G} c_{n{\bf k}}({\bf G}) e^{i({\bf k}+{\bf G})\cdot {\bf r}}, with \bf G being reciprocal lattice vectors up to E_{\rm cut}.[3]
For structural optimization, Quantum ESPRESSO enables variable-cell relaxation by computing Hellmann-Feynman forces on ions and the stress tensor on the lattice, allowing simultaneous minimization of forces and stresses to find equilibrium geometries.[3] These forces derive directly from the DFT energy functional, ensuring no Pulay corrections are needed in the plane-wave basis when the cutoff is fixed.[3]
Advanced Simulation Types
Quantum ESPRESSO enables advanced simulations that extend beyond ground-state density functional theory (DFT) to probe dynamic, responsive, and excited-state properties of materials. These capabilities are implemented through specialized packages that leverage perturbation theory and path-sampling techniques, allowing users to model phenomena such as atomic vibrations, chemical reaction pathways, and optical responses directly from first principles. Ab initio molecular dynamics (AIMD) in Quantum ESPRESSO simulates the time evolution of atomic positions while solving the electronic structure on-the-fly, providing insights into thermal and reactive processes. The Car-Parrinello method, implemented in the CP package, treats electrons and ions as fictitious classical degrees of freedom via a unified Lagrangian: \mathcal{L} = \sum_I \frac{1}{2} M_I \dot{\mathbf{R}}_I^2 + \sum_i \mu \dot{\mathbf{r}}_i^2 - E[\{\mathbf{r}_i\}, \{\mathbf{R}_I\}] + \sum_I \hat{V}_{II}(\mathbf{R}_I), where M_I and \mu are ionic and electronic masses, \mathbf{R}_I and \mathbf{r}_i are coordinates, and E is the DFT energy functional. This approach efficiently propagates both subsystems without repeated diagonalizations. Alternatively, the Born-Oppenheimer scheme, available in the pw.x code, decouples nuclear motion from electronic relaxation by solving the electronic problem at each ionic step, suitable for longer timescales. Temperature control is achieved using thermostats like Nose-Hoover chains, which introduce fictitious degrees of freedom to sample the canonical ensemble. These methods have been applied to study diffusion in solids and liquid water properties, with the CP formulation originating from the seminal work on unified dynamics. Phonon and vibrational properties are computed using density functional perturbation theory (DFPT) in the PHonon package, which evaluates the second-order response of the energy to atomic displacements without finite differences. Starting from version 7.2 (2023), self-consistent calculations with a two-chemical potential approach support modeling doped semiconductors and superconductors. This was extended in version 7.4 (2024) to linear-response phonon calculations using the two-chemical potential method, enabling accurate phonon dispersions in systems with unequal electron and hole chemical potentials, such as superconductors.[32][35][36] The dynamical matrix D_{\alpha\beta}(\mathbf{q}) is constructed from first-order changes in the self-consistent potential and wavefunctions: D_{\alpha\beta}(\mathbf{q}) = \frac{1}{\sqrt{m_\kappa m_{\kappa'}}} \left[ \frac{\partial^2 E}{\partial u_{\kappa\alpha}(\mathbf{q}) \partial u_{\kappa'\beta}(-\mathbf{q})} \right], yielding phonon frequencies \omega(\mathbf{q}) via diagonalization at arbitrary wavevectors \mathbf{q}. This linear-response framework efficiently handles periodic systems, enabling dispersion relations and mode analysis for materials like semiconductors. Phonon linewidths, arising from electron-phonon coupling, are further quantified using the EPW interface, which computes scattering rates \gamma(\mathbf{q},j) from Fermi's golden rule integrals over the Brillouin zone. These tools underpin predictions of thermal conductivity and superconductivity, building on foundational DFPT developments.[22] Transition states and reaction pathways are located using the Nudged Elastic Band (NEB) method in the PWneb package, which minimizes energy barriers by optimizing a chain of intermediate images between initial and final states. Springs connect images with projected forces perpendicular to the path, solving: E_{\text{NEB}} = \sum_i \left[ E(\mathbf{R}_i) + \frac{1}{2} k (|\mathbf{R}_{i+1} - \mathbf{R}_i| - \lambda)^2 \right], where k is the spring constant and \lambda enforces path length. Climbing-image variants accelerate convergence to the saddle point. The dimer method, also supported, refines saddle points by rotating a dimer along the lowest Hessian eigenvector to climb the potential energy surface. These techniques have facilitated studies of vacancy migration and surface reactions, originating from discrete path optimization strategies. Spectroscopic properties are derived from DFPT responses in the PHonon package for vibrational spectra and TDDFPT for electronic excitations. Raman and infrared (IR) intensities are obtained from mode-dependent polarizability and dipole derivatives, \partial \alpha / \partial u and \partial \mu / \partial u, respectively, enabling assignment of peaks in spectra for molecular crystals. Optical absorption spectra arise from vertical excitations solved via the Casida equation in the turboTDDFT code: \begin{pmatrix} \mathbf{A} & \mathbf{B} \\ \mathbf{B}^* & \mathbf{A}^* \end{pmatrix} \begin{pmatrix} \mathbf{X} \\ \mathbf{Y} \end{pmatrix} = \omega \begin{pmatrix} 1 & 0 \\ 0 & -1 \end{pmatrix} \begin{pmatrix} \mathbf{X} \\ \mathbf{Y} \end{pmatrix}, where \mathbf{A} and \mathbf{B} couple Kohn-Sham orbital transitions, yielding oscillator strengths for UV-Vis peaks. These implementations support analysis of dye molecules and semiconductors. Many-body extensions in Quantum ESPRESSO primarily interface with external tools like Yambo for GW approximations, which compute quasiparticle energies beyond DFT by including screened Coulomb interactions and self-energy corrections \Sigma = iGW. The GW method evaluates the dielectric function and vertex via contour integration, providing band gap corrections for insulators like silicon. Full Bethe-Salpeter equation solutions for excitons are also supported, though detailed implementation resides in Yambo. These capabilities enhance accuracy for optical gaps, rooted in Hedin's equations.[29]Performance Optimization
Parallelization Strategies
Quantum ESPRESSO employs multiple levels of parallelization to distribute computational workloads across processors, primarily using the Message Passing Interface (MPI) for distributed-memory systems and OpenMP for shared-memory threading.[37] The core strategy revolves around domain decomposition, where the problem space—such as the reciprocal lattice or electronic states—is partitioned to enable efficient load balancing and minimize inter-processor communication.[38] In MPI-based parallelization, the primary approach decomposes the computational domain over k-points, plane waves (G-vectors), and bands, particularly in the PWscf package for plane-wave pseudopotential calculations. K-points are distributed across independent pools of processors, allowing parallel execution of self-consistent field cycles for each k-point group, controlled by the input flag-npools (or -nk) to specify the number of pools.[38] Plane waves are handled through three-dimensional fast Fourier transforms (3D FFTs) distributed across processors, with task groups—defined by the flag -ntg (or -nt)—grouping G-vectors to reduce communication overhead during FFT operations.[37] Band parallelization further divides the electronic wavefunctions across processors within each pool, using flags like -nband (or -nb), which is essential for systems with many bands, such as those involving correlated electrons or large unit cells.[38] This multi-level decomposition ensures that data structures, including wavefunctions and potentials, are replicated or distributed as needed to support scalability on clusters.[39]
For shared-memory systems, OpenMP threading is integrated to exploit multi-core architectures, targeting inner loops such as those over plane-wave coefficients and matrix diagonalization routines. Threading over plane-wave loops accelerates the Hamiltonian application and orthogonalization steps, while dedicated OpenMP support in diagonalization—via flags like -ndiag (or -nd) for specifying thread grids—optimizes the solution of generalized eigenvalue problems using libraries like LAPACK or ELPA.[38] In hybrid MPI+OpenMP setups, common on modern clusters, MPI handles inter-node distribution (e.g., over k-points or task groups), while OpenMP manages intra-node parallelism (e.g., over bands or loops), reducing memory footprint and communication costs compared to pure MPI.[37] This hybrid model requires compilation with OpenMP enabled and is invoked by setting environment variables like OMP_NUM_THREADS.[38]
Scalability in Quantum ESPRESSO is demonstrated through strong scaling benchmarks, where PWscf achieves efficient performance up to thousands of cores for systems with hundreds of atoms, such as silicon supercells or molecular crystals, limited primarily by I/O bottlenecks and the inherent sequential nature of some algorithms.[39] Wavefunction parallelization extends this to larger systems by distributing the storage and operations on electronic states, enabling simulations of thousands of electrons while maintaining near-linear speedup up to 10,000 processors in optimized configurations.[39]
Practical implementation relies on command-line flags to tune these strategies; for instance, running PWscf with mpirun -np 1024 pw.x -input si.scf.in -npools 4 -ntg 8 -nband 16 distributes four k-point pools, eight task groups for FFTs, and 16 processors per band group.[38] These options allow users to balance load based on hardware topology, with documentation recommending experimentation for optimal performance on specific architectures.[37]
GPU and Exascale Developments
Quantum ESPRESSO has incorporated GPU acceleration to enhance performance on high-performance computing systems, beginning with version 6.5 in 2019, which introduced initial support for offloading key computations in the Plane-Wave Self-Consistent Field (PWscf) code using OpenACC directives and CUDA Fortran.[6] These efforts targeted computationally intensive operations, including the Hamiltonian-vector product (Hψ), fast Fourier transforms (FFT), and diagonalization routines, enabling significant speedups by leveraging GPU parallelism while minimizing data transfers between CPU and GPU.[6] Subsequent versions, particularly in the 7.x series starting from v7.0 in 2022, expanded this support to include OpenMP 5.0 target offload directives, facilitating portability across diverse GPU architectures beyond NVIDIA hardware.[12][40] Under the MaX Centre of Excellence for materials design at the exascale, Quantum ESPRESSO's development has focused on achieving performance portability for exascale systems, supporting NVIDIA (e.g., V100 and A100), AMD, and Intel GPUs through a hybrid approach combining OpenACC and OpenMP offload.[41][6] A key strategy involves unifying CPU and GPU code paths into a single-source model, reducing duplication and improving maintainability by embedding directives that allow seamless compilation for both environments.[14][41] This unification addresses the heterogeneity of modern supercomputers, such as those in the EuroHPC initiative, by enabling the same codebase to exploit accelerators without vendor-specific forks.[42] Benchmarks demonstrate substantial gains from these optimizations; for instance, self-consistent field (SCF) cycles in PWscf for a CrI₃ supercell with 1152 atoms achieved speedups of approximately 10× on 96 NVIDIA A100 GPUs compared to equivalent CPU runs, primarily due to accelerated Hψ and FFT operations.[6] Earlier tests on V100 GPUs reported 4-6× speedups over CPUs for similar workloads, highlighting the scalability on pre-exascale systems like Marconi100.[41] These improvements stem from optimizations targeting GPU-specific challenges, such as memory bandwidth limitations and ensuring data residency on the device to avoid costly host-device transfers.[6][40] Ongoing roadmap efforts, coordinated through the MaX Centre and the Quantum ESPRESSO Foundation, aim to extend GPU offload to the full suite, including linear-response and phonon codes, with unification and portability enhancements integrated into releases like v7.4.1 in 2025.[14][42] This progression positions Quantum ESPRESSO for exascale deployment, emphasizing reduced communication overheads and band parallelism to handle massive simulations on upcoming systems.[41]Usage and Community
Installation and Workflow
Quantum ESPRESSO is typically installed by compiling the source code from the official GitLab repository at gitlab.com/QEF/q-e, where users can clone the latest stable release or development version.[31] The build process requires several dependencies, including linear algebra libraries such as BLAS and LAPACK for matrix operations, and FFTW for fast Fourier transforms, along with a Fortran compiler like gfortran or Intel Fortran. Compilation is facilitated by CMake, which automates configuration and supports customization for parallel environments; users runcmake followed by make and make install in the source directory after setting environment variables for dependencies. For high-performance computing (HPC) clusters, pre-built binaries are often available through module systems, and tools like EasyBuild can automate the installation of optimized versions tailored to specific architectures.[31]
Input files for Quantum ESPRESSO programs, such as pw.x for plane-wave self-consistent field calculations, use a structured namelist format in plain ASCII text (.in files), consisting of Fortran-style namelists (e.g., &CONTROL, &SYSTEM) followed by cards for atomic species, positions, and k-points.[43] Output files (.out) are primarily text-based but include XML-formatted data for interoperability with post-processing tools. Pseudopotentials, essential for representing core electrons, are supplied in UPF (Unified Pseudopotential Format) and sourced from libraries like the Standard Solid State Pseudopotentials (SSSP) for efficient, high-accuracy simulations or PseudoDojo for norm-conserving and projector-augmented wave sets with verified accuracy.
A representative workflow begins with a self-consistent field (SCF) calculation to obtain the ground-state electronic density, using pw.x with an input file specifying the crystal structure, pseudopotentials, plane-wave cutoff, and k-point grid. For example, a basic SCF input for silicon in the diamond structure is:
This computes the total energy and charge density, saved in files for subsequent steps.[43] Next, structural optimization employs pw.x in 'relax' mode to minimize forces on atoms while fixing the cell volume, iterating until convergence criteria are met, producing an optimized geometry. Phonon calculations then use ph.x on this structure to compute dynamical matrices at q-points, revealing vibrational modes and checking stability via frequencies. Finally, post-processing with dos.x generates the density of states (DOS) from the SCF output, integrating over the Brillouin zone to plot electronic or phonon DOS for band gap or thermodynamic analysis. Common troubleshooting issues include poor convergence of the plane-wave kinetic energy cutoff (ecutwfc), where users must incrementally increase the value (e.g., from 20 Ry to 50 Ry) and monitor total energy changes below 1 meV/atom to ensure basis set completeness.[44] Similarly, insufficient k-point sampling can lead to inaccurate Brillouin zone integration, particularly for metals or small-gap semiconductors; a denser Monkhorst-Pack grid (e.g., 8x8x8 instead of 4x4x4) is tested until properties like total energy or band structure stabilize within desired tolerances.[44]&CONTROL calculation = 'scf' prefix = 'si' outdir = './' pseudo_dir = './' / &SYSTEM ibrav = 2 celldm(1) = 10.26 nat = 2 ntyp = 1 ecutwfc = 30.0 / &ELECTRONS conv_thr = 1.0d-8 / ATOMIC_SPECIES Si 28.0855 Si.pbe-n-kjpaw_psl.1.0.0.UPF ATOMIC_POSITIONS crystal Si 0.00 0.00 0.00 Si 0.25 0.25 0.25 K_POINTS automatic 4 4 4 0 0 0&CONTROL calculation = 'scf' prefix = 'si' outdir = './' pseudo_dir = './' / &SYSTEM ibrav = 2 celldm(1) = 10.26 nat = 2 ntyp = 1 ecutwfc = 30.0 / &ELECTRONS conv_thr = 1.0d-8 / ATOMIC_SPECIES Si 28.0855 Si.pbe-n-kjpaw_psl.1.0.0.UPF ATOMIC_POSITIONS crystal Si 0.00 0.00 0.00 Si 0.25 0.25 0.25 K_POINTS automatic 4 4 4 0 0 0