next up previous contents
Next: Initialising the QCL to Up: Parallelizing the Quantum Computing Previous: Parallelizing the Quantum Computing   Contents

Motivation

Simulating a quantum computer on a classical computer is a computationally hard problem. Each quantum register in the Quantum Computing Language contains a number of basevectors, each with a corresponding amplitude. As the qubits in the quantum register are superposed with each other, the number of basevectors increases exponentially. For example, a quantum register of only size 10 qubits, has 1024 basevectors. Any operation which is applied to a quantum state can be represented as a matrix. The matrix to be applied to any particular quantum state is a square matrix of the same dimension as the number of basevectors. Applying a matrix to a large quantum state takes a very long time on one computer.

Most serious scientific simulation now occurs on huge clusters of ordinary workstations, rather than supercomputers, due to cost effectiveness and easy maintainability. Simulating a large quantum system on a parallel cluster has never been fully achieved before, to my knowledge. The actual operation which is performed when applying an operation to a quantum state, is simply a matrix-vector multiplication, where the operation is represented by a matrix, and where the amplitudes of the basevectors of the quantum state is the vector. This part of the project will rewrite the matrix-vector multiplication routines of the Quantum Computing Language to farm out computation to the nodes of the Computer Applications 23-node Linux cluster.


next up previous contents
Next: Initialising the QCL to Up: Parallelizing the Quantum Computing Previous: Parallelizing the Quantum Computing   Contents
Colm O hEigeartaigh 2003-05-30