Does anybody have any other comparisons between a universal quantum computer and a classical computer that might shed some light into how their performance compares?

Below is what I've been able to come up with, so far.

I am an electrical engineer and have been learning about quantum computing for the last year, and I can hardly believe what I read and hear. It is becoming clearer to me, but it's a very difficult subject.

Why is there so much fuss about quantum computing? I will attempt here to show that a 19 qubit quantum computer could match the performance of a 200 petaflops IBM supercomputer, and also how its performance improves with more qubits.

This discussion assumes that all of these qubits are what are termed 'logical qubits'. That is, they are fully error-corrected and have infinite 'coherence' times. These types of qubits are a LONG way off. Contemporary 2019 qubits are short-lived.

First, the state of a quantum computer is defined by a vector of length 2^n complex values where n is the number of qubits in that quantum computer. For example:

1 qubit -> 2 values in the state vector
2 qubits -> 4 values in the state vector
3 qubits -> 8 values in the state vector
... ...
16 qubits -> 65,536 values in the state vector
... ...
100 qubits -> 1,267,650,600,228,229,401,496,703,205,376 values in the state vector
... ...
and so on.

The square of any one of the values in the state vector list indicates the probability that this particular list number (index) will be observed at the output of the quantum computer when the MEASURE logic gate (see below) is finally applied.

To program the quantum computer, a person will apply what are called 'quantum logic gates' or just 'gates' to the system in order to achieve the processing that they desire. Some of the names of the 'gates' are Hadamard, CNOT, Pauli-X, and MEASURE (the last one applied).

When a programmer starts to manipulate the quantum computer, the state of the qubits is initialized and the first value in the state vector list is set equal to 'one' and all of the other values are set equal to 'zero'. If the MEASURE gate were applied now then the output would always read 0b0...00000 since the probability of observing that first list number is 100%.

The goal of the programmer is usually to apply the necessary quantum logic 'gates' in such a way that the 100% list value moves from list entry number 0b0...00000 to some other list entry number, and that number is what the scientists have been waiting for.

Each logic gate takes less than one microsecond to complete, and what each gate does is to modify all of the 2^n current state vector values in order to create (evolve to) the next state vector list. This is equivalent to a 2^n by 2^n matrix multiplied with the 2^n current state vector. This is 2^n * 2^n = 2^2n multiply/accumulate (MAC) operations in one microsecond.

A contemporary IBM supercomputer allegedly has 200 petaflops of performance. If we let one FLOP (floating-point operation) equal one MAC (multiply/accumulate) operation then the IBM classical computer can do 200*10^15 MACS/sec * 10^-6 sec = 200*10^9 MACs in one quantum computer gate time.

So, equating the quantum computer to the IBM supercomputer's performance (for one quantum gate time): 2^2n = 200*10^9 or n = 18.7 qubits (19 qubits) in order for a quantum computer to match the MAC performance of an IBM 200 petaflop supercomputer.

This is really amazing, and assuming that this is generally correct then each additional qubit means a 4x increase in MAC performance. Scientists are talking about applications requiring 500 qubits. It's going to be interesting.

  • $\begingroup$ Quantum and classical computers run different algorithms; though you can run any classical algorithm on a quantum computer, the implementation of a classical algorithm on a quantum computer is not as efficient as you assume in your post; usually you will need much more qubits than 19. Classical supercomputers will perform classical algorithms better for a long time. :) $\endgroup$ – kludg Oct 16 '19 at 10:23
  • 2
    $\begingroup$ Sorry if I missed it, but what's the question you want to ask? $\endgroup$ – Sanchayan Dutta Oct 16 '19 at 15:17
  • $\begingroup$ Hi Bob, welcome to QCSE. It's good that you're excited about quantum computing, but this site is designed as a "question-and-answer" forum. Your comments appear more like a blog post, and although well-meaning, questions should be phrased as questions. Upon reading your post, it appears as if you understand some details of a quantum computer; however, I think your statement "this is equivalent to a 2^n by 2^n matrix multiplied with the 2^n current state vector. This is 2^n * 2^n = 2^2n multiply/accumulate (MAC) operations in one microsecond" is overly simplistic... (cont.) $\endgroup$ – Mark S Oct 16 '19 at 18:19
  • $\begingroup$ Can you rephrase your post as a question, as in "how can a classical supercomputer simulate a quantum computer with $19$ qubits? $\endgroup$ – Mark S Oct 16 '19 at 18:19
  • 1
    $\begingroup$ I see now that this group is setup to only be in a question/answer format. My intentions were just to elicit discussion since it's very difficult to find people that are interested in this subject. The comments have been very valuable and I appreciate them. The point that it's not valid to compare quantum vs conventional computers since their algorithms will be different is certainly true and useful. Bob $\endgroup$ – Bob Walance Oct 16 '19 at 22:25

Quantum computers are not just the "conventional computer killer" or a speedy replacement for the conventional computers as you might have assumed in your question.

Firstly, some classical tasks that are well suited to quantum computers. They run them really well in a much lesser time. This is because they are able to crunch large numbers using a small number of operations as you have discussed.

But this is not the only use case. The real strength of the quantum computers is to perform the tasks that are quite impossible to achieve on traditional computers. Considering the the most modest example, you cannot generate a truly random number on any conventional hardware. That's why they are called as Pseudo Random Number Generators. However for a quantum computer it is an astonishingly simple process. Similarly when we try to emulate natural processes (e.g behavior of subatomic particles) with traditional bits it not only lacks perfection but also computationally expensive. It is very convinient to perform such computations on a quantum computer as underlying physical objects representing qubits somehow do the math for you.

So, quantum computers are not a complete replacement for traditional computers (not just yet) but they help us broadening the kinds of problems tractable within computing.


Not the answer you're looking for? Browse other questions tagged or ask your own question.