cpw2000

cpw2000 is a density functional theory (DFT) pseudopotential plane-wave code developed by José Luís Martins. It performs electronic structure calculations using the plane-wave basis set and pseudopotential approach, suitable for computin…

1. GROUND-STATE DFT 1.1 Plane-Wave Pseudopotential VERIFIED
Back to Directory Official Website

Overview

cpw2000 is a density functional theory (DFT) pseudopotential plane-wave code developed by José Luís Martins. It performs electronic structure calculations using the plane-wave basis set and pseudopotential approach, suitable for computing properties of molecules and solids from first principles. The code has been used in research on electronic structure and has been studied for GPU acceleration of its core numerical routines.

Reference Papers

Reference papers are not yet linked for this code.

Full Documentation

Official Resources

  • Homepage: https://github.com/jlm785/cpw2000
  • Source Repository: https://github.com/jlm785/cpw2000
  • Documentation: https://github.com/jlm785/cpw2000
  • License: GNU General Public License v2.0

Overview

cpw2000 is a density functional theory (DFT) pseudopotential plane-wave code developed by José Luís Martins. It performs electronic structure calculations using the plane-wave basis set and pseudopotential approach, suitable for computing properties of molecules and solids from first principles. The code has been used in research on electronic structure and has been studied for GPU acceleration of its core numerical routines.

The code's performance bottlenecks have been identified primarily in BLAS matrix-matrix multiplication (DGEMM) and fast Fourier transform (FFT) operations, which account for over 90% of execution time. Research on GPU acceleration of cpw2000 has demonstrated near 10x speedup for routines adapted to heterogeneous CPU-GPU architectures.

Scientific domain: Electronic structure theory, condensed matter physics
Target user community: Researchers in first-principles materials science

Theoretical Methods

  • Kohn-Sham density functional theory
  • Plane-wave basis set expansion
  • Norm-conserving pseudopotentials
  • Self-consistent field (SCF) iterations
  • Fast Fourier transforms for reciprocal space operations

Capabilities (CRITICAL)

  • Plane-wave DFT calculations for periodic and molecular systems
  • Pseudopotential-based electronic structure
  • Total energy and force calculations
  • BLAS and FFT-based numerical kernels
  • Suitable for benchmarking and algorithm development

Inputs & Outputs

Input formats:

  • Input files specifying crystal/molecular structure
  • Pseudopotential files
  • Plane-wave cutoff and k-point mesh parameters

Output data types:

  • Total energies
  • Kohn-Sham eigenvalues and eigenvectors
  • Charge densities
  • Forces on atoms

Interfaces & Ecosystem

  • Programming language: Fortran
  • Parallel computing: Potential for GPU acceleration via CUDA
  • Dependencies: BLAS, LAPACK, FFT libraries
  • Research use: Studied for heterogeneous CPU-GPU optimization

Limitations & Known Constraints

  • Originally available only by author permission (now on GitHub)
  • Limited documentation compared to major DFT packages
  • Not a full-featured production suite
  • GPU acceleration requires code modifications

Performance Characteristics

  • Core computation dominated by DGEMM and FFT operations
  • GPU-accelerated versions achieve ~10x speedup on improved routines
  • Performance heavily dependent on BLAS/FFT library efficiency
  • Suitable for single-node calculations

Comparison with Other Codes

  • vs Quantum ESPRESSO: QE is a comprehensive suite; cpw2000 is a focused single-developer code
  • vs ABINIT: ABINIT has extensive features and community; cpw2000 is more minimal
  • vs CP-PAW: CP-PAW uses PAW formalism; cpw2000 uses norm-conserving pseudopotentials

Best Practices

  • Profile DGEMM and FFT routines for optimization opportunities
  • Use optimized BLAS libraries for best performance
  • Verify pseudopotential transferability for target systems
  • Consider GPU acceleration for compute-intensive workflows

Verification & Sources

Primary sources:

  1. GitHub repository: https://github.com/jlm785/cpw2000
  2. P.M.L. Miranda, dissertation on CPW2000 GPU acceleration, University of Minho

Confidence: VERIFIED - GitHub repository confirmed with GPL v2 license

Related Tools in 1.1 Plane-Wave Pseudopotential