English

QCLAB++: Simulating Quantum Circuits on GPUs

Quantum Physics 2023-03-06 v1 Mathematical Software Performance

Abstract

We introduce qclab++, a light-weight, fully-templated C++ package for GPU-accelerated quantum circuit simulations. The code offers a high degree of portability as it has no external dependencies and the GPU kernels are generated through OpenMP offloading. qclab++ is designed for performance and numerical stability through highly optimized gate simulation algorithms for 1-qubit, controlled 1-qubit, and 2-qubit gates. Furthermore, we also introduce qclab, a quantum circuit toolbox for Matlab with a syntax that mimics qclab++. This provides users the flexibility and ease of use of a scripting language like Matlab for studying their quantum algorithms, while offering high-performance GPU acceleration when required. As such, the qclab++ library offers a unique combination of features. We compare the CPU simulator in qclab++ with the GPU kernels generated by OpenMP and observe a speedup of over 40×40\times. Furthermore, we also compare qclab++ to other circuit simulation packages, such as cirq-qsim and qibo, in a series of benchmarks conducted on NERSC's Perlmutter system and illustrate its competitiveness.

Keywords

Cite

@article{arxiv.2303.00123,
  title  = {QCLAB++: Simulating Quantum Circuits on GPUs},
  author = {Roel Van Beeumen and Daan Camps and Neil Mehta},
  journal= {arXiv preprint arXiv:2303.00123},
  year   = {2023}
}

Comments

13 pages, 10 figures

R2 v1 2026-06-28T08:52:41.120Z