Quantum computer simulation using the CUDA programming model

Quantum computing emerges as a field that captures a great theoretical interest. Its simulation represents a problem with high memory and computational requirements which makes advisable the use of parallel platforms. In this work we deal with the simulation of an ideal quantum computer on the Compute Unified Device Architecture (CUDA), as such a problem can benefit from the high computational capacities of Graphics Processing Units (GPU). After all, modern GPUs are becoming very powerful computational architectures which is causing a growing interest in their application for general purpose. CUDA provides an execution model oriented towards a more general exploitation of the GPU allowing to use it as a massively parallel SIMT (Single-Instruction Multiple-Thread) multiprocessor. A simulator that takes into account memory reference locality issues is proposed, showing that the challenge of achieving a high performance depends strongly on the explicit exploitation of memory hierarchy. Several strategies have been experimentally evaluated obtaining good performance results in comparison with conventional platforms.

[1]  H. Imai,et al.  General-purpose parallel simulator for quantum computing , 2002, quant-ph/0201042.

[2]  D. Deutsch Quantum computational networks , 1989, Proceedings of the Royal Society of London. A. Mathematical and Physical Sciences.

[3]  Alexander J. Smola,et al.  Performance Evaluation of the NVIDIA GeForce 8800 GTX GPU for Machine Learning , 2008, ICCS.

[4]  Philippas Tsigas,et al.  The Synchronization Power of Coalesced Memory Accesses , 2010, IEEE Transactions on Parallel and Distributed Systems.

[5]  Katarzyna Radecka,et al.  FPGA emulation of quantum circuits , 2004, IEEE International Conference on Computer Design: VLSI in Computers and Processors, 2004. ICCD 2004. Proceedings..

[6]  Barenco,et al.  Elementary gates for quantum computation. , 1995, Physical review. A, Atomic, molecular, and optical physics.

[7]  I. Glendinning,et al.  Parallelization of the General Single Qubit Gate and CNOT for the QC-lib Quantum Computer Simulator Library , 2003 .

[8]  Morteza Saheb Zamani,et al.  FPGA-Based Circuit Model Emulation of Quantum Algorithms , 2008, 2008 IEEE Computer Society Annual Symposium on VLSI.

[9]  Lov K. Grover A fast quantum mechanical algorithm for database search , 1996, STOC '96.

[10]  Ian Glendinning,et al.  Parallelization of the QC-Lib Quantum Computer Simulator Library , 2003, PPAM.

[11]  D. Deutsch,et al.  Rapid solution of problems by quantum computation , 1992, Proceedings of the Royal Society of London. Series A: Mathematical and Physical Sciences.

[12]  Minoru Fujishima FPGA-based high-speed emulator of quantum computing , 2003, Proceedings. 2003 IEEE International Conference on Field-Programmable Technology (FPT) (IEEE Cat. No.03EX798).

[13]  Peter W. Shor,et al.  Polynomial-Time Algorithms for Prime Factorization and Discrete Logarithms on a Quantum Computer , 1995, SIAM Rev..

[14]  Thierry Paul,et al.  Quantum computation and quantum information , 2007, Mathematical Structures in Computer Science.

[15]  Mircea Vladutiu,et al.  Using HDLs for describing quantum circuits: a framework for efficient quantum algorithm simulation , 2004, CF '04.

[16]  Alvin M. Despain,et al.  A Parallel Quantum Computer Simulator , 1998 .

[17]  Thomas Lippert,et al.  Massively parallel quantum computer simulator , 2006, Comput. Phys. Commun..

[18]  Thomas Lippert,et al.  Large Scale Simulation of Ideal Quantum Computers on SMP-Clusters , 2005, PARCO.