My daughter, now in her first year of university, played competitive volleyball for most of her time in middle and secondary school. Besides her school’s intermural league, she also played for several different teams in the more elite Ontario Volleyball Association (OVA), which required an admirable level of skill and dedication to the sport. On top of the twice-weekly practices, my wife and I remember fondly travelling on weekends to OVA tournaments around the province as well as the provincial finals every April.
One of my favourite memories is from a wintry Saturday morning, standing with other dads on a high school gym stage in some small town, enthusiastically stamping and cheering for our girls’ team in a critical match—our shouts of “Let’s go, Leaside!” were so loud that the referee had to turn around in his perch above the net and admonish us to quiet down so that the players could concentrate on the game. The friendships I made with parents and coaches were eclipsed only by the friendships, camaraderie and mutual support my daughter experienced with her teammates.
I came to appreciate volleyball as an exciting spectator sport. I learned much about the scoring and rules, and in particular the strategic teamwork that the coaches worked hard to instill in the girls. As each rally progressed, communication between the players was critical—who would defensively dig for the ball, who would set it for whom, and so forth. An embarrassing dropped ball in the middle of the court was usually the result of players collectively forgetting to make those calls—but when they followed the coach’s directions from the sidelines, and communicated clearly with each other, the teamwork and collective success were a sight to see.
As my daughter and her teammates advanced through the OVA levels year after year, the players specialized into particular roles on the team. Serving always rotated around all players on the court, but after the serve each moved into their assigned position—defence, setter, striker, etc. One role of interest is that of the libero, a defence-only player in the back court who wears a different coloured jersey to be recognizable to the referee. The libero may not approach the net nor play the ball above the net—their job is only to make the first defensive touch and set up the play for the rest of the team to launch an attack. It’s not a glamorous role—they never spike the ball and rarely if ever score a point[1]—but they must be fast and nimble, placing the ball just right for the next player. The libero is a central part of the interaction of skills and specialties that ultimately forms a winning team.
Computing teamwork
This complex orchestration and teamwork had me thinking of recent developments in computing. Classical computers have grown into huge clusters of supercomputers with massive banks of CPUs powering the cloud data centres provided by Amazon, Google, Microsoft, IBM and others. But as Moore’s Law breaks[2] with no more room to miniaturize transistors, the supercomputers can only grow horizontally—adding more, not better, processors.
AI, especially generative AI, has joined into the cloud. It was almost accidentally discovered that Graphical Processing Units (GPUs), which were originally designed to optimize a player’s video experience on gaming consoles, could also be used very effectively to execute generative AI systems like ChatGPT, Gemini and their many peers.[3] But GPUs are still a classical architecture and, like their high-performance supercomputer counterparts, AI data centres will also have to grow horizontally, adding more, but not more efficient, GPUs. In addition, it turns out that AI is very useful in many areas, but not so much in others—Generative AI, for example, appears to be revolutionizing how humans and computers communicate, but it has not proven to be particularly good at accurate searches or other conventional computing tasks. So AI is becoming a complementary technology to traditional classical algorithms.
Now, quantum computing is entering the mix. Quantum Processing Units (QPUs) composed of qubits rather than classical bits are released from the constraints of Moore’s Law. Holding data in a superposition of values in a system of entangled qubits provides the potential to solve some kinds of problems much more efficiently than classical CPUs can. However, even more so than AI, quantum computing does not have general applicability. Some problems like complex optimizations, searches, aspects of machine learning, scientific modelling and simulations stand to benefit—but there are many tasks for which quantum computers will provide no advantage whatsoever.
So, we have three different computing architectures—CPU, GPU and QPU—each with its own strengths and weaknesses. No single one of them can solve a complex problem by itself. Just like my daughter’s volleyball team, they will all have to come together, share the responsibility and communicate with each other in order to succeed.
Division of labour
In January of 2024, I toured IBM’s TJ Watson Research Centre in Yorktown, New York. While viewing IBM’s flagship System 2 quantum computer with 1,121 qubits, I had the pleasure of meeting an IBM technical director who introduced me to the company’s vision of quantum-centric supercomputing, or QCSC. But before going into more detail on that, and to reinforce the notion that dividing up computational workloads is not a new idea, I want to take a step back in time and visit myself as a co-op student at IBM in the 1980s.
My co-op work terms, from 1985 to 1989, straddled peak mainframe years as well as the popularization and general availability of personal computers. I attended, and subsequently led, a class for co-op students called PL/I School in which we were introduced to the PL/I programming language invented by IBM, and the related JCL, Job Control Language. PL/I stands, rather uninspiringly, for Programming Language One and is a mainframe language that was intended to be general-purpose, bringing together the mathematical and scientific capabilities of FORTRAN with the business processing capabilities of COBOL.
PL/I programs operated in batch mode, which meant that you had to write and compile your code, then submit it for execution on the mainframe, and eventually read back your results. Complex tasks could be broken down into multiple PL/I programs submitted for execution, and JCL would provide the coordination among these programs. JCL could read the output from one program and then alter the inputs to the next program or select entirely different programs for subsequent execution. JCL syntax was notoriously counterintuitive, but it was my first introduction to the idea of orchestrating multiple computing tasks.
As PCs grew in popularity and evolved into various kinds of network servers, system architecture also evolved into client-server and networked computing. The PC would handle interaction with an end user, and perhaps offload some of the computation, but it would communicate with servers and mainframes to take care of larger, more complex tasks. Web browsers and phone apps are just the next extension of the same architecture, localizing the user interface while accessing centralized computing and data resources.
Quantum computing harks back to that mainframe era of job execution. Quantum programs or circuits don’t operate interactively; rather, you submit your circuit to a quantum processor, let it execute, and read back the results before you take your next action. I don’t think we’ll ever see a quantum Word or quantum PowerPoint—these applications do not do complex analysis or intense mathematical calculations, relying instead on keystrokes and mouse clicks to create documents. Quantum computing won’t help with that.
As we’ve seen, quantum computers are good for certain mathematical calculations. Classical computers, including HPC and in some cases AI systems, are good for many other types of tasks. To solve complicated problems, we will have to bring them together and orchestrate programs running quantum and classically, much like I used to do with PL/I programs and JCL back in the 1980s. The role of JCL is now played by new kinds of workload management systems like Slurm, LSF and others but they do the same thing: coordinating memory and computer resources, program execution and data. The trick, just like in a championship volleyball team, is knowing exactly who does what, and making sure that everything is done in the right order.
Many hands make light work
IBM has published an excellent blog post introducing quantum-centric supercomputing with a good example. The technology industry has high hopes that quantum computing will enable breakthroughs in computational chemistry, such as building computer models or simulations of molecules to facilitate testing of a wide range of chemical reactions without investing in expensive lab resources. However, molecular modelling is a problem that, in computer science terms, is considered to be NP-hard,[4] meaning that its complexity grows exponentially and quickly gets beyond the capabilities of classical computers.
For example, a fairly simple molecule like iron sulfide (Fe4S4), according to IBM’s post, is already beyond the modelling capabilities of classical computers. However, current quantum computers that suffer from noise-induced errors aren’t any better. IBM suggests they would still take millions of years to solve this problem, which could be reduced to 13 days if only we had access to four and a half million coherent physical qubits. The problem for quantum computers is circuit depth, which is the number of instructions you can execute in a single quantum algorithm. Because of noise and qubit decoherence, current quantum circuits are too shallow—they can’t hold enough instructions or operations to do accurate modelling. Circuit depth will improve as error correction gets better and logical qubits get bigger, but this will take years.
The upshot is that at present, both classical and quantum approaches to computational chemistry can only provide approximate solutions, given their limits. So, the question becomes who can do better approximations? The answer, it turns out, is to put the two together—make them collaborate and communicate like good volleyball players, and they can do better than either could have done alone.
IBM used a technique called Sample-based Quantum Diagonalization, or SQD. The idea is to use a quantum computer like, say, the IBM Eagle with 127 qubits or Heron with 156 qubits, to execute the molecular model multiple times. Because they’re approximations, you won’t get the same answer each time. But you could, conceptually, plot all the answers on a graph. Diagonalization is the technique to calculate a statistical best fit of the solutions produced by the quantum circuits—and this part is best done classically. It’s a good example of QCSC: the quantum computer does the computationally intensive work of calculating the approximate solutions, and the classical computer does the statistical analysis on the results to come up with the best approximation. If you want to delve deeper into the mathematics, IBM published a paper on ArXiv in May 2024 in collaboration with the RIKEN quantum supercomputing lab in Japan, describing exactly the improvements achieved in modelling iron sulfide. Another paper published with Cleveland Clinic in November 2024 also proved better results using QCSC than could have been done with conventional methods, but in a different scenario—modelling rings of 18 hydrogen atoms.
Think bigger
Most of the online literature I’ve found on QCSC covers similar cases in molecular modelling or other scientific simulations. But the techniques have been around for a few years. In 2021, the University of Waterloo was already working on feedback loops between quantum and classical processors in order to improve the approximate solutions to many optimization problems. These share with molecular modelling the characteristic of being NP-hard and mostly use the same underlying linear algebra. The solution is similar—let the quantum processor produce multiple approximations and let the classical computer do the post-processing to come up with the best solution.
AI, as IBM has suggested, will also play a role. Machine Learning and Neural Networks can do a great job working through large sets of unstructured data to find patterns and meaning. Classical computers can do a lot of the other algorithmic work, and LLMs along with Generative AI will likely find their utility in smoother, more intuitive user interactions. Quantum can support faster machine learning and take on some of the computationally intensive tasks. Workload management across all these systems is still a traditional role for classical computing. As quantum computing scales up and AI continues to improve, QCSC will be deployed against more and more complex problems in health care, materials science and mathematics.
Quantum, I think, is the libero in this fascinating game of computational volleyball. It executes in the background without fanfare, but performs a critical piece of work, setting up the whole team for success.
[1] I think it could only happen if the libero lobs the ball over the net and the opposing team misplays it—an extremely rare occurrence.
[2] Moore’s Law is the idea that the number of transistors on a chip can double every couple of years with improvements in engineering and manufacturing. But transistors are so small now that any further miniaturization will make them susceptible to interference and noise via quantum effects like tunnelling, so it’s highly doubtful that Moore’s Law will hold up for much longer.
[3] GPUs have large numbers of parallel processors and a highly efficient memory cache to enable rendering high-resolution video as smoothly as possible. This hardware architecture turned out to be very effective to execute the complex linear algebra at the heart of AI systems. Nvidia, once a niche manufacturer of gaming chips, as a result is now a technology powerhouse with a market capitalization rivaling that of many countries’ GDP.
[4] NP stands for non-polynomial, meaning that the problem cannot be solved in polynomial time, as the square or cube or some other power of the variable you’re trying to solve—which is manageable for classical computers. NP problems grow exponentially or worse in complexity.