Coordinating interoperability across the sets of quantum compiler toolchains
The quantum computing industry is in its infancy and lags far behind the classical computers in use today. Drawing analogies between the development of classical and quantum computing is difficult because quantum computing faces the need for various technologies, which were developed over decades in the classical computing space, all at once. Therefore, quantum computers may address different challenges at a different rate and order than was done in the classical space. However, solving these challenges is vital to the advancement of quantum computing as a whole.
The fragmented quantum computing ecosystem
Quantum computing is evolving rapidly. While the technology is still in its infancy, like classical computing, its benefits are expected to reach almost every sector. For example, quantum computers will enable the simulation of quantum systems that is not possible using even the most powerful classical computers. This has applications in pharmaceutical, chemical, energy and materials industries.
Today, technology has advanced to the point where small quantum computers exist and larger, more powerful systems are predicted in within the decade. Many companies are currently developing quantum hardware and software. However, like classical computing, this progress is not always coordinated.
On a classical computer, many software applications that run on a Windows computer won’t work on a Linux or Mac system. Different supporting toolchains for those software systems must be developed for each platform. The same is true of modern quantum computing. Various organizations are developing toolchains that define an environment from the source code to the hardware back-end. But the creation of multiple toolchains has resulted in different cliques of tools designed to work in different environments.
Interoperability across the sets of quantum compiler toolchains would be better for everyone. Quantum computer developers want everyone to use their hardware, while quantum software engineers want to use the best available solution for their particular use cases.
Interoperability also means that every advancement in quantum computing pushes the entire industry forward rather than forcing the wheel to be reinvented on different platforms. However, as things stand, the fragmentation of the quantum computing ecosystem makes this coordinated growth impossible.
Quantum needs intermediate representation
To address the interoperability issues, quantum computing researchers need to investigate practical intermediate representations (IR) and related compiler toolchains for quantum computing. According to Yudong Cao, CTO and Co-Founder of Zapata Computing, a member of the Quantum Economic Development Consortium (QED-C), “IR is a way to describe what you want a computer to do that is independent of how you write it in the source code and also how the computer actually does it.”
Classical computing already has well-established IRs, which make scalable compilation for different hardware and software development possible. While Macs and PCs are clearly different systems, several companies manufacture systems that fall under the PC umbrella. Computers from Dell, HP, Asus, and other companies are all able to run the Windows OS with minimal modifications. Similarly, programming languages (C/C++, Java, Python, etc.) can be used to write code in different ways to do the same thing.
This is possible because classical computing has IRs that abstract away the details of the hardware, software, etc. The IRs define certain tasks that the hardware should perform without specifying how those tasks should be accomplished. Thus, hardware developers can create systems that work in different ways and software engineers can write code without knowing the details of and being restricted to a particular hardware stack.
Currently, the quantum computing industry lacks convergence around IRs when it comes to developing and executing quantum programs. As a result, teams are developing solutions that do similar things but with different approaches that may not be interoperable and constrain quantum software to a specific computing stack.
Introducing the Practical Intermediate Representation for Quantum (PIRQ) Workshop
To address these IR challenges, the Quantum Economic Development Consortium (QED-C), managed by SRI International, recently hosted the first Practical Intermediate Representation for Quantum (PIRQ) Workshop. The goal of this workshop was to assess the current state of technologies and to get broad community input on how the quantum industry could develop a set of IRs and surrounding compiler toolchains that would enable interoperability between different quantum computing solutions.
Cao led a team from companies across the QC industry to organize the workshop. He believes that it couldn’t have happened at a better time. “We had the workshop right at the time where people are coming out with different compiler tool chains, and they want people to use them,” Cao noted. “The workshop provided a perfect opportunity for developers to present and receive feedback on their solutions. Others in the field certainly recognize the need for a mature set of IRs that the field can converge toward but were simply not aware that IR designers are already working on it.”
The PIRQ Workshop provided the players in the quantum computing industry with an opportunity to meet and work on their shared problem regarding IR. The participants identified three key goals to work towards:
● Discussing how existing quantum computing toolchains can be architecturally interoperable
● Evaluating these toolchains against real-world use cases
● Developing an abstract machine model for describing quantum hardware without implementation details
The PIRQ Workshop laid the groundwork for these goals and gave participants vital visibility into what their colleagues were working on and the major gaps and challenges facing the industry. Building on the workshop, a new QED-C group has formed, initially to explore architectural aspects of IR. Contact firstname.lastname@example.org to learn more.