The rapid development of the quantum computing field has created the need for effective study tools.Although the physical implementation of quantum systems is still at an early stage, the simulation of quantum circuits using classical computational resources offers a feasible and practical way for experimentation and evaluation.This work focuses on creating functions that enable the implementation of basic quantum gates and circuits on graphics cards (GPUs).Functions were developed that include fundamental operations for the representation and execution of quantum gates and circuits.Through examples and tests, their performance is evaluated, while a simple command-line interface is also provided so that it can be easily used by individuals without prior experience in the field.
The rapid development of the quantum computing field has created the need for effective study tools.Although the physical implementation of quantum systems is still at an early stage, the simulation of quantum circuits using classical computational resources offers a feasible and practical way for experimentation and evaluation.This work focuses on creating functions that enable the implementation of basic quantum gates and circuits on graphics cards (GPUs).Functions were developed that include fundamental operations for the representation and execution of quantum gates and circuits.Through examples and tests, their performance is evaluated, while a simple command-line interface is also provided so that it can be easily used by individuals without prior experience in the field.
Quantum computing is an emerging technology, promising a paradigm shift in computing, and allowing for speedups in many different problems. However, quantum devices are still in their early stages, most with only a small number qubits. This places a reliance on simulation to develop quantum algorithms and to verify these devices. While there exists many algorithms for the simulation of quantum circuits, there is (at the time of writing) no tools which use OpenCL to parallelize this simulation, thereby taking advantage of devices such as GPUs while still remaining portable. In this paper, such a tool is described, including optimizations in areas such as gate application. This leads to a new approach that outperforms other popular state vector based simulators. An implementation of the proposed simulator is available at https://qcgpu.github.io.
Computer graphics relies on computing hardware for everything from animation to rendering. An emerging new technology exploits the properties of quantum objects to offer radically new ways to think about, create, and run algorithms. For example, quantum computers can evaluate many different input values simultaneously, where "many" can be larger than the number of atoms in the visible universe. The catch is that only one output can be obtained from each run. Quantum computing may change how we think about computer graphics. For example, future quantum computers may be able to intersect astronomical numbers of rays with a similarly massive database of objects in a single execution, or evaluate enormous numbers of simulation parameters in parallel to return the one set that produces a desired result. This course describes, without advanced math, the core ideas of quantum computing. We start with the quantum version of the classical bit (called a qubit) and the basic operators that modify qubits. We introduce the four essential properties that distinguish quantum computers from familiar classical computers: superposition, interference, entanglement, and measurement. We show how these properties are orchestrated to build quantum algorithms. We conclude with a brief overview of some of the most well-known quantum algorithms, and some of their possible applications in computer graphics. Quantum computers are already here, and are increasing in size and reliability at a rapid pace. Open-source simulators abound, and small quantum computers are even available for free use on the web. Classical hardware has served computer graphics well. Quantum computing offers a fundamentally new way to design and execute algorithms, which could change our field in fundamental ways. Now is the perfect time to starting thinking about quantum computing for graphics.
We present a practical course targeting graduate students with prior knowledge of the basics of quantum computing. The practical aims to deepen students' understanding of fundamental concepts in quantum computing by implementing quantum circuit simulators. Through hands-on experience, students learn about different methods to simulate quantum computing, including state vectors, density matrices, the stabilizer formalism, and matrix product states. By implementing the simulation methods themselves, students develop a more in-depth understanding of fundamental concepts in quantum computing, including superposition, entanglement, and the effects of noise on quantum systems. This hands-on experience prepares students to do research in the field of quantum computing and equips them with the knowledge and skills necessary to tackle complex research projects in the field. In this work, we describe our teaching approach and the structure of our practical, and we discuss evaluations and lessons learned.
Abstract: Quantum computers aim to achieve a huge reduction of the time required for solving problems with an exponential complexity, but their simulation in conventional computers results itself on a problem with a similar complexity. As this limits considerably the dimensions of the quantum computer we can simulate, multiprocessor architectures are an almost obliged tool when tackling with such simulations. In this paper we explore the application of the new graphical processor architectures in the simulation of the elementary operators that constitute the basic building blocks of quantum computers. Recently, these GPUs are being used as general purpose multiprocessors, as they demonstrate to possess a floating point computing power larger than classic CPUs. In particular our implementation makes use of the new CUDA software/hardware architecture developed recently by NVIDIA. Key–Words: Quantum computing simulation, Graphics Processing Unit (GPU), parallel processing 1
Quantum computing (QC) research has gained a lot of momentum recently due to several theoretical analyses that indicate that QC is significantly more efficient at solving certain classes of problems than classical computing. While experimental validation will ultimately be required, the primitive nature of current QC hardware leaves practical testing limited to trivial examples. Thus, a robust simulator is needed to study complex QC issues. Most QC simulators model ideal operations, and thus cannot predict the actual time required to execute an algorithm or quantify the effects of errors in the calculation. We have developed a novel QC simulator that models physical hardware implementations. This simulator not only allows the accurate simulation of quantum algorithms on various hardware implementations, but also takes an important step towards providing a framework to determine their true performance and vulnerability to errors.
Quantum Computing (QC) research has gained a lot of momentum recently due to several theoretical analyses that indicate that QC is significantly more efficient at solving certain classes of problems than classical computing. While experimental validation will ultimately be required, the primitive nature of current QC hardware leaves practical testing limited to trivial examples. Thus, a robust simulator is needed to study complex QC issues. Most QC simulators model ideal operations, and thus cannot predict the actual time required to execute an algorithm or quantify the effects of errors in the calculation. We have developed a novel QC simulator that models physical hardware implementations. This simulator not only allows the accurate simulation of quantum algorithms on various hardware implementations, but also takes an important step towards providing a framework to determine their true performance and vulnerability to errors.