Challenges
Datasets
Workspaces
Papers
Discussions
Leaderboard
Log inSign up
Challenges
Datasets
Workspaces
Papers
Discussions
Leaderboard
Blog
Job Board
Q3AS

© 2026 Aqora Quantum S.A.S.

TermsPrivacyLegal Notice

Electronic Notes in Theoretical Computer Science

Modelling Parallel Quantum Computing Using Transactional Memory

Juliana Kaizer Vizzotto, André Rauber Du Bois

Published Feb 1, 2011• 2 citations
Publisher

Abstract

We propose a model for parallel quantum computing in a single ensemble quantum computer using Haskell's software transaction memory. The parallel ensemble quantum computer possesses, besides quantum parallelism, a kind of classical single-instruction-multiple-data parallelism. It explores additional speedup by making quantum computers working in parallel, as in classical computation. The whole state is prepared in such a way a subset of qubits is in a mixed state representing the communicating quantum computers while the other qubits in pure state are the proper argument registers of each quantum computer. Essentially, this particular way of structuring the state of the parallel quantum computer fits with what is well know as multithreading programming. Software transactional memory is a promising new approach to programming shared-memory parallel programs. The functional programming language Haskell elegantly implements this abstraction for concurrent communication.

DOI
10.1016/j.entcs.2011.01.017

Related papers

Parallel quantum computing in a single ensemble quantum computer

Gui Lu Long, Xiao Li

We propose a parallel quantum computing mode for ensemble quantum computer. In this mode, some qubits are in pure states while other qubits are in mixed states. It enables a single ensemble quantum computer to perform ``single-instruction-multidata'' type of parallel computation. Parallel quantum computing can provide additional speedup in Grover's algorithm and Shor's algorithm. In addition, it also makes a fuller use of qubit resources in an ensemble quantum computer. As a result, some qubits discarded in the preparation of an effective pure state in the Schulman-Varizani and the Cleve-DiVincenzo algorithms can be reutilized.

arXiv:quant-ph/0307055•Physical Review A•May 6, 2004•78 citations

Parallel quantum computer simulation on the GPU

Andrei Amariutei, Simona Caraiman

Simulation of quantum computers using classical computers is a hard problem with high memory and computational requirements. Parallelization can alleviate this problem, allowing the simulation of more qubits at the same time or the same number of qubits to be simulated in less time. A promising approach is to exploit the high performance computing capabilities provided by the latest graphical processing units. In this paper we present a parallel implementation of the QC-lib quantum computer simulator on the GPU using the CUDA programming model. The proposed scheme for partitioning the terms that describe the state of a quantum register takes advantage of the specific characteristics of the CUDA memory spaces and allows for an efficient parallelization of the general singe qubit operator. Experimental results indicate that very good speed-ups can be obtained in contrast with the sequential implementation.

•Nov 28, 2011•16 citations

QParallel: Explicit Parallelism for Programming Quantum Computers

Thomas Häner, Vadym Kliuchnikov, Martin Roetteler +2 more

We present a language extension for parallel quantum programming to (1) remove ambiguities concerning parallelism in current quantum programming languages and (2) facilitate space-time tradeoff investigations in quantum computing. While the focus of similar libraries in the domain of classical computing (OpenMP, OpenACC, etc.) is to divide a computation into multiple threads, the main goal of QParallel is to keep the compiler and the runtime system from introducing parallelism-inhibiting dependencies, e.g., through reuse of qubits in automatic qubit management. We describe the syntax and semantics of the proposed language extension, implement a prototype based on Q#, and present several examples and use cases to illustrate its performance benefits. Moreover, we introduce a tool that guides programmers in the placement of parallel regions by identifying the subroutines that profit most from parallelization, which is especially useful if the programmer's knowledge of the source code is limited. Support for QParallel can be added to any multithreading library and language extension, including OpenMP and OpenACC.

arXiv:2210.03680•Oct 7, 2022•3 citations

Quantum Digital–Analogue Computing

Vladimir I. Hahanov, Wajeb Gharibi, Mikhail F. Karavay +6 more

Nature is the relations between processes and phenomena. Nothing exists in a Universe without relations. Computing is the transaction of relations between data using control and execution mechanisms. Quantum relations are a superposition of particles and their states. Quantum computing is unconditional transactions of relations between qubit data. Entanglement is a nonlocal superposition of deterministic states. A quantum computer is an analog device for solving combinatorial problems in parallel. Practically focused definitions of the concepts of quantum computing represent a path to the development of scalable quantum parallel algorithms for solving combinatorial problems. Any algorithm can be reduced to a sequence of operations without conditions, because any truth table is a collection of a complete system of conditions-states. Any sequence of actions can always be reduced to one parallel operation. Conditions and sequences arise only when the developer uses previously created primitives-constructs to build an always non-optimal calculator. The deterministic paradigm of creating quantum computing by using photon transactions on the electrons of an atom can exclude the use of quantum logic. The evolutionary path of quantum computing from the classical one: Memory-Address-Transaction (MAT) $\rightarrow$ Electron-Address-Transaction $\rightarrow$Electron-Address-Quantaction (EAQ)$\rightarrow$State-Superposition- Logic. What is calculated on a quantum computer can be calculated in parallel on a classical computer due to the redundancy of memory. MAT-computing implements any algorithms through transactions (read-write) in memory. Qubit-vector models for describing functionalities differ from the known truth tables in terms of compactness of description and technological implementation of parallel algorithms for the synthesis and analysis of digital devices and SoC-components. An example is given – a memory-driven algorithm for simulating digital devices based on qubit-vector forms of describing functionalities for a significant increase in the productivity of computing processes by parallel execution of logical operations. Comparative evaluations of the use of qubit models and methods show an increase in the efficiency of algorithms for simulating digital devices in comparison with tabular ones. The superposition of classical, quantum and analog computing is integrally presented, which makes it possible to search the best solutions for recognition and decision making.

IEEE East-West Design & Test Symposium (EWDTS)•Sep 10, 2021•2 citations

Quantum data structures for SoC design

Svetlana V. Chumachenko, Alexander Shkil, Anastasiya Hahanova +2 more

A qubit-vector model of computing automaton is proposed; it is characterized by the transactional interaction of memory components, which represent the combinational and sequential elements and are implemented in the form of a qubit or “quantum” primitives needed to create parallel virtual computers and cloud-focused processors.

International Conference on Experience of Designing and Applications of CAD Systems in Microelectronics•Feb 1, 2015•0 citations

How to Build a Software Quantum Simulator

Gilberto Javier Díaz, Luiz Angelo Steffenel, Carlos Barrios-Hernandez +1 more

Software quantum simulators are the most accessible tools for designing and testing quantum algorithms. This paper presents a comprehensive approach to building a software-based quantum simulator based on classical computing architectures. We explore fundamental quantum computing concepts, including state vector representations, quantum gates, and memory management techniques. The simulator prototype implements various memory optimization strategies, such as full-state representation, dynamic state pruning, and shared memory parallelization with OpenMP and distributed memory models using MPI. Additionally, data compression techniques, like ZFP, are explored to enhance simulation performance by reducing memory footprint. The results are validated through performance comparisons with leading open-source quantum simulators, such as Intel-QS, QuEST, and qsim. Our findings highlight the trade-offs between computational overhead and memory efficiency. This demonstrates that a hybrid approach using distributed memory and compression offers the best scalability for simulating large quantum systems. This work provides a foundation for developing efficient quantum simulators supporting more complex quantum algorithms on classical hardware.

•Sep 19, 2024•0 citations
We propose a model for parallel quantum computing in a single ensemble quantum computer using Haskell's software transaction memory. The parallel ensemble quantum computer possesses, besides quantum parallelism, a kind of classical single-instruction-multiple-data parallelism. It explores additional speedup by making quantum computers working in parallel, as in classical computation. The whole state is prepared in such a way a subset of qubits is in a mixed state representing the communicating quantum computers while the other qubits in pure state are the proper argument registers of each quantum computer. Essentially, this particular way of structuring the state of the parallel quantum computer fits with what is well know as multithreading programming. Software transactional memory is a promising new approach to programming shared-memory parallel programs. The functional programming language Haskell elegantly implements this abstraction for concurrent communication.
We propose a parallel quantum computing mode for ensemble quantum computer. In this mode, some qubits are in pure states while other qubits are in mixed states. It enables a single ensemble quantum computer to perform ``single-instruction-multidata'' type of parallel computation. Parallel quantum computing can provide additional speedup in Grover's algorithm and Shor's algorithm. In addition, it also makes a fuller use of qubit resources in an ensemble quantum computer. As a result, some qubits discarded in the preparation of an effective pure state in the Schulman-Varizani and the Cleve-DiVincenzo algorithms can be reutilized.
Simulation of quantum computers using classical computers is a hard problem with high memory and computational requirements. Parallelization can alleviate this problem, allowing the simulation of more qubits at the same time or the same number of qubits to be simulated in less time. A promising approach is to exploit the high performance computing capabilities provided by the latest graphical processing units. In this paper we present a parallel implementation of the QC-lib quantum computer simulator on the GPU using the CUDA programming model. The proposed scheme for partitioning the terms that describe the state of a quantum register takes advantage of the specific characteristics of the CUDA memory spaces and allows for an efficient parallelization of the general singe qubit operator. Experimental results indicate that very good speed-ups can be obtained in contrast with the sequential implementation.
We present a language extension for parallel quantum programming to (1) remove ambiguities concerning parallelism in current quantum programming languages and (2) facilitate space-time tradeoff investigations in quantum computing. While the focus of similar libraries in the domain of classical computing (OpenMP, OpenACC, etc.) is to divide a computation into multiple threads, the main goal of QParallel is to keep the compiler and the runtime system from introducing parallelism-inhibiting dependencies, e.g., through reuse of qubits in automatic qubit management. We describe the syntax and semantics of the proposed language extension, implement a prototype based on Q#, and present several examples and use cases to illustrate its performance benefits. Moreover, we introduce a tool that guides programmers in the placement of parallel regions by identifying the subroutines that profit most from parallelization, which is especially useful if the programmer's knowledge of the source code is limited. Support for QParallel can be added to any multithreading library and language extension, including OpenMP and OpenACC.
Nature is the relations between processes and phenomena. Nothing exists in a Universe without relations. Computing is the transaction of relations between data using control and execution mechanisms. Quantum relations are a superposition of particles and their states. Quantum computing is unconditional transactions of relations between qubit data. Entanglement is a nonlocal superposition of deterministic states. A quantum computer is an analog device for solving combinatorial problems in parallel. Practically focused definitions of the concepts of quantum computing represent a path to the development of scalable quantum parallel algorithms for solving combinatorial problems. Any algorithm can be reduced to a sequence of operations without conditions, because any truth table is a collection of a complete system of conditions-states. Any sequence of actions can always be reduced to one parallel operation. Conditions and sequences arise only when the developer uses previously created primitives-constructs to build an always non-optimal calculator. The deterministic paradigm of creating quantum computing by using photon transactions on the electrons of an atom can exclude the use of quantum logic. The evolutionary path of quantum computing from the classical one: Memory-Address-Transaction (MAT) →\rightarrow→ Electron-Address-Transaction →\rightarrow→Electron-Address-Quantaction (EAQ)→\rightarrow→State-Superposition- Logic. What is calculated on a quantum computer can be calculated in parallel on a classical computer due to the redundancy of memory. MAT-computing implements any algorithms through transactions (read-write) in memory. Qubit-vector models for describing functionalities differ from the known truth tables in terms of compactness of description and technological implementation of parallel algorithms for the synthesis and analysis of digital devices and SoC-components. An example is given – a memory-driven algorithm for simulating digital devices based on qubit-vector forms of describing functionalities for a significant increase in the productivity of computing processes by parallel execution of logical operations. Comparative evaluations of the use of qubit models and methods show an increase in the efficiency of algorithms for simulating digital devices in comparison with tabular ones. The superposition of classical, quantum and analog computing is integrally presented, which makes it possible to search the best solutions for recognition and decision making.
Software quantum simulators are the most accessible tools for designing and testing quantum algorithms. This paper presents a comprehensive approach to building a software-based quantum simulator based on classical computing architectures. We explore fundamental quantum computing concepts, including state vector representations, quantum gates, and memory management techniques. The simulator prototype implements various memory optimization strategies, such as full-state representation, dynamic state pruning, and shared memory parallelization with OpenMP and distributed memory models using MPI. Additionally, data compression techniques, like ZFP, are explored to enhance simulation performance by reducing memory footprint. The results are validated through performance comparisons with leading open-source quantum simulators, such as Intel-QS, QuEST, and qsim. Our findings highlight the trade-offs between computational overhead and memory efficiency. This demonstrates that a hybrid approach using distributed memory and compression offers the best scalability for simulating large quantum systems. This work provides a foundation for developing efficient quantum simulators supporting more complex quantum algorithms on classical hardware.