Hermitian matrix multiplication is one of the most common actions that is performed on quantum matrices, for example, it is used to apply observables onto a given state vector/density matrix. ρ→Hρ Our goal is to create an algorithm to perform the matrix multiplication within the constraints of QuEST [1], a high-performance simulator for quantum circuits. QuEST provides a system-independent platform for implementing and simulating quantum algorithms without the need for access to quantum machines. The current implementation of QuEST supports CUDA, MPI, and OpenMP, which allows programs to run on a wide variety of systems.
Hermitian matrix multiplication is one of the most common actions that is performed on quantum matrices, for example, it is used to apply observables onto a given state vector/density matrix. ρ→Hρ Our goal is to create an algorithm to perform the matrix multiplication within the constraints of QuEST [1], a high-performance simulator for quantum circuits. QuEST provides a system-independent platform for implementing and simulating quantum algorithms without the need for access to quantum machines. The current implementation of QuEST supports CUDA, MPI, and OpenMP, which allows programs to run on a wide variety of systems.
Developing state-of-the-art classical simulators of quantum circuits is of utmost importance to test and evaluate early quantum technology and understand the true potential of full-blown error-corrected quantum computers. In the past few years, multiple theoretical and numerical advances have continuously pushed the boundary of what is classically simulable, hence the development of a plethora of tools which are often limited to a specific purpose or designed for a particular hardware (e.g. CPUs vs. GPUs). Moreover, such tools are typically developed using tailored languages and syntax, which makes it hard to compare results from, and create hybrid approaches using, different simulation techniques. To support unified and optimized use of these techniques across platforms, we developed HybridQ , a highly extensible platform designed to provide a common framework to integrate multiple state-of-the-art techniques to run on a variety of hardware. The philosophy behind its development has been driven by three main pillars: Easy to Use, Easy to Extend, and Use the Best Available Technology. The powerful tools of HybridQ allow users to manipulate, develop, and extend noiseless and noisy circuits for different hardware architectures. HybridQ supports large-scale high-performance computing (HPC) simulations, automatically balancing workload among different processor nodes and enabling the use of multiple backends to maximize parallel efficiency. Everything is then glued together by a simple and expressive language that allows seamless switching from one technique to another as well as from one hardware to the next, without the need to write lengthy translations, thus greatly simplifying the development of new hybrid algorithms and techniques.
We introduce QuEST, the Quantum Exact Simulation Toolkit, and compare it to ProjectQ, qHipster and a recent distributed implementation of Quantum++. QuEST is the first open source, hybrid multithreaded and distributed, GPU accelerated simulator of universal quantum circuits. Embodied as a C library, it is designed so that a user's code can be deployed seamlessly to any platform from a laptop to a supercomputer. QuEST is capable of simulating generic quantum circuits of general one and two-qubit gates and multi-qubit controlled gates, on pure and mixed states, represented as state-vectors and density matrices, and under the presence of decoherence. Using the ARCUS and ARCHER supercomputers, we benchmark QuEST's simulation of random circuits of up to 38 qubits, distributed over up to 2048 compute nodes, each with up to 24 cores. We directly compare QuEST's performance to ProjectQ's on single machines, and discuss the differences in distribution strategies of QuEST, qHipster and Quantum++. QuEST shows excellent scaling, both strong and weak, on multicore and distributed architectures.
In the nearest future quantum computers will be suitable for practical use. The development of quantum algorithms can be carried out using classical computers and specialized software that allows simulating of a quantum circuit functioning. Simulation results can be used to analyze the algorithm and also contribute to co-design when developing quantum architectures. However, when planning and performing numerical experiments, it is necessary to understand the capabilities of simulators and the limitations on the parameters of the quantum circuit imposed by the characteristics of the available classical computational resources (computers). This paper presents the results of computational experiments on simulating the operation of quantum circuits on an ideal quantum computer using the QuEST and Intel-QS packages, as well as our own "naïve" implementation. Restrictions on the size of a simulated quantum system N are shown when using computing systems of various classes — a virtual machine, a computing server, a computing server with a graphics accelerator (GPU), a supercomputer (the maximum achieved size is N = 33). The performance and scalability characteristics of the considered implementations on shared and distributed memory are given (the observed scaling efficiency is 30 % and 70 %, respectively). For the QuEST package and our own implementation the performance is presented for systems with graphics accelerator (GPU).
Quantum computing has been an attractive method adapted for increasing the computational speed and it is governed by the laws of quantum mechanics. Quantum computers are not limited to two states as compared with classical systems, but they encode information as quantum bits or qubits. A qubit represents atoms, ions, photons or electrons and their respective control devices that are working together to act as computer memory and processors. The power of quantum computing lies in its multi-state representation which makes it million times more powerful than classical computer systems. Quantum computers also use another aspect of quantum mechanics known as entanglement, which is a property where multiple objects existing in the states that can be linked together. There exists a standard/specification of message passing library, known as message passing interface (MPI) that can be used for achieving high-performance computing. The goal of MPI is to provide a standardized framework for writing message-passing programs which can be used for programming systems that require distributed processing. The superposition principle used by the quantum algorithm can be simulated in the MPI environment with a cluster of computers or multi-CPU systems. This paper focuses on exposing the strength of quantum algorithm in high performance computing by using MPI, and also on comparing the sequential and parallel execution of programs on the basis of execution time and CPU utilization.
The rapid expansion of quantum computing research has created a growing need for effective and scalable tools to simulate quantum algorithms. In this study, we present a performance analysis of several quantum circuit simulators by using the Deutsch-Jozsa (DJ) and Quantum Fourier Transform (QFT). A gate-based QASM implementation serves as the baseline and is converted to code compatible with each simulator. Our evaluation covers multi-CPU simulators like Qiskit, Qsim-Cirq, and QuEST, as well as their GPU-accelerated variants along with CUDA-Q, for qubit sizes ranging from 21 to 35. By profiling these algorithms, we compare key performance indicators and reveal notable efficiency differences between platforms. In particular, the multi-node version of QuEST shows strong CPU utilization, high speedup, and efficient memory scalability. whereas GPUbased implementations provide clear performance advantages at higher qubit counts. These findings offer practical guidance for choosing simulation platforms according to problem size and available computing resources, thereby supporting more efficient quantum-algorithm workflows.
Quantum computing has the potential to revolutionize the field of computing, but with hardware and algorithms unlike any in use today. Due to the primitive state of existing quantum hardware, simulation is one of the most effective methods for studying quantum computing issues. Our team previously developed a general-purpose simulator capable of modeling arbitrary quantum algorithms executing on any hardware device. The simulator performs over a thousand matrix multiplications per step as part of its operations. To improve the simulator performance, optimizations were designed to dynamically restructure the problem. The resulting calculations were then distributed across a cluster. These enhancements reduced both the order of the simulator operations and the memory overhead, achieving an overall performance improvement of 99.94% from the initial implementation of a key quantum algorithm, reducing the simulator run time for this algorithm from two days on a single processor to under two minutes on a cluster.