Quantum computing is the nirvana state for most technical research and in the exploratory sciences – and, eventually, for all of computing.
The concept comes from quantum physics, which finds that electrons circling an atom are in multiple states at the same time – they only stop when we observe them. Similarly, a quantum bit (or qubit) can be in either a 0 and 1 state – or both at the same time.
The theory goes that, because of these multiple states, a quantum processor could handle intense computations – say, factoring a number with 300 digits – with relative ease.
Article continues below
For comparison, when a 232-digit number was factored, those responsible estimated that it would have taken roughly 1,500 years to do using a 2.2GHz AMD Opteron with 2GB of RAM.
The great challenge to quantum processors thus far is this: the theory is sound on paper, but how do you actually build a quantum computer? We talked to an expert to find out the roadmap.
1. Build the proof of concept
Herb Bernstein, a physicist at Hampshire College, says the first step to building a real quantum computer is to develop a basic working prototype. He says this will involve using a series of controlled optical or electromechnical pulses that work like microwaves. The pulses would control the computations and trigger the qubits to aid in the research project, serving as the core processor.
2. Increase the scale
These initial experiments, he says, would be quite small – a prototype might use just one quantum bit initially, and quantum physicists have built small-scale quantum processing prototypes. Expanding to 100 qubits would be a logical next step, but to build an actual processor that uses tens of thousands of qubits, or even just one kiloqubit, would require linking multiple lab experiments over networks that, today, are not capable of processing at the same quantum speeds. Still, in the early days of computing, it was inconceivable to design a small computer when vacuum tubes filled an entire room.
3. Build a registry for quantum functions
After expanding a prototype (and discovering some way to do that without linking lab experiments), another important step involves holding the data. This would work exactly like the computers we use today – a registry entry is like a temporary holding area. In quantum computing, a registry would hold the results of an experiment calculated with qubits – what Bernstein called a multiple entanglement of numbers. The registry would not just hold these calculations, but would keep track of how the qubits interact. The model for this is the human brain, which tracks the movement of neurons.
4. Create a way to store these calculations
Factoring a number with 300 digits is an admirable goal, and one that is a good fit for quantum computing. However, the resulting calculations would also require massive storage allocation. The closest analogy to this today is a linear accelerator, which calculates the movements of atoms as they move at incredibly high speeds. In these experiments, the calculations are often stored on extremely fast flash storage arrays. For storing quantum calculations, the storage requirements increase greatly – to the point that we may not have yet invented the storage medium required. It might involve holographic memory that also see bits in multiple states at once.
5. Programming techniques to find the value
Another step, once we find a way to store the calculations, involves figuring out how to write programs to then interpret the calculations. Modern processors run programs that work with binary numbers – they are either in a 0 or 1 state, but never both. That means, for quantum computing, inventing new ways to write programs that can run much faster, handle the quantum computing calculations, and deliver usable results. One obvious inhibitor to this is that companies have invested many millions in current platforms and programming efforts – none of which would run on a quantum computer.
6. Delivering the results over networks
Once a quantum computer is fully operational, and the calculations can be stored and the programs can interpret the data, it's also important to deliver these findings over networks. In many ways, this is the problem that birthed the internet several decades ago: the scientific calculations had to be moved from one lab to other parts of the country for analysis. Modern fibre channels running at 200MB/s in real world transmissions are not fast enough, so another step to building a quantum computer is inventing much faster network protocols and network switches that can handle the data.