Massively Parallel Trotter-Suzuki Solver
1.6.2
|
The Trotter-Suzuki approximation leads to an efficient algorithm for simulating quantum systems. This library provides a scalable, high-precision implementation that uses parallel and distributed computational resources. The implementation built on single-node parallel kernels [1], extending them to use distributed resources [2], and generalizing the kernels to be able to tackle a wider range of problems in quantum physics [3].
Key features:
The documentation of the C++ interface is available at trotter-suzuki-mpi.github.io. The Python documentation is on Read the Docs.
Trotter-Suzuki-MPI is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 3 of the License, or (at your option) any later version.
Trotter-Suzuki-MPI is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
The original high-performance kernels were developed by Carlos Bederián. The distributed extension was carried out while Peter Wittek was visiting the Department of Computer Applications in Science & Engineering at the Barcelona Supercomputing Center, funded by the "Access to BSC Facilities" project of the HPC-Europe2 programme (contract no. 228398). Generalizing the capabilities of kernels was carried out by Luca Calderaro while visiting the Quantum Information Theory Group at ICFO-The Institute of Photonic Sciences, sponsored by the Erasmus+ programme. Further computational resources were granted by the Spanish Supercomputing Network (FY-2015-2-0023 and FI-2016-3-0042) and the Swedish National Infrastructure for Computing (SNIC 2015/1-162 and 2016/1-320), and a hardware donation by Nvidia. Pietro Massignan has contributed to the project with extensive testing and suggestions of new features.