Skip to main content
News

Advanced software framework expedites quantum-classical programming

In the early 2000s, high-performance computing experts repurposed GPUs — common video game console components used to speed up image rendering and other time-consuming tasks — as co-processors that help CPUs in supercomputers accelerate system operations.

Two decades later, quantum processing units, or QPUs, promise to enhance existing CPU-GPU computer architectures. Future CPU-GPU-QPU supercomputers could tackle complex workloads that would be unmanageable with current systems.

To help researchers harness the potential power of QPUs, a team from the Department of Energy’s Oak Ridge National Laboratory developed an advanced software framework called XACC. XACC offloads portions of quantum-classical computing workloads from the host CPU to an attached quantum accelerator, which calculates results and sends them back to the original system. Depending on the complexity of a given problem, this process might occur several times throughout a simulation.

“We built upon the accelerated node model of computing and adapted it to optimize quantum-classical interactions,” said Alex McCaskey, a computer scientist at ORNL who has been developing and refining the framework since 2016.

Classical computers use “bits” valued at 0 or 1, whereas quantum computers use quantum bits, or “qubits,” that can be encoded with 0, 1 or any combination of those values simultaneously. This ability shows immense promise for better data storage and analysis, indicating that quantum processors could eventually overtake classical processors in terms of power, speed and other key metrics.

Because quantum techniques could accelerate scientific computing, researchers are increasingly conducting research on novel quantum hardware platforms. To support that research, scientists require secure, system-level and user-friendly quantum-classical software frameworks. The team designed XACC to fill this gap and published its features and applications in a Quantum Science and Technology special issue focused on quantum software.

“At its core, XACC is a way for users to program quantum-classical systems at a level familiar to those in the HPC community,” McCaskey said. “As hardware continues to improve, we are envisioning new ways to reduce system noise, speed up simulations and integrate new quantum software with existing classical tools and techniques.”

XACC’s unique “plug and play” capability makes the ORNL-developed resource compatible with any available quantum computer. Currently, XACC works with quantum computing platforms developed by IBM, Rigetti, D-Wave and IonQ, and the framework will support additional systems that come online in the near future. The ORNL researchers were the first to build and demonstrate this type of hardware-agnostic software framework for today’s quantum computers.

The framework provides users with additional flexibility by supporting C++ and Python, and the team plans to extend this list to include Julia and other popular computer programming languages. These features allow XACC to integrate CPU-QPU processes into small-scale computing applications and large-scale HPC workflows.  

Many scientific problems scale exponentially, which means adding a single particle to an existing simulation would double the amount of space required to calculate accurate results. Classical computers can only simulate systems of a certain size before straining memory limits, but future quantum systems might not have the same limitation and could thus enable new discoveries in fields such as quantum chemistry, nuclear physics, high energy physics and machine learning.

“Encoding scientific problems onto quantum computers would allow us to take advantage of that exponential scaling space to hopefully solve larger problems in a way that is faster and more energy efficient than with purely classical methods,” McCaskey said.

In previous tests, the team proved that XACC can benchmark quantum chemistry applications by evaluating various molecules. And in 2018, ORNL scientists used XACC to complete the first successful simulation of an atomic nucleus using a quantum computer. Recently, the team completed a series of additional XACC demonstrations using resources provided by ORNL’s Compute and Data Environment for Science, which facilitates research across the lab.

Anyone can access XACC through the Eclipse Foundation, a major supplier of open-source software, and the framework marks the foundation’s first quantum computing project. The researchers are currently preparing to run large-scale quantum program simulations with XACC on ORNL’s Summit, the fastest supercomputer in the world, which has a CPU-GPU hybrid architecture.

Going forward, the XACC team will focus on new programming mechanisms that allow users to control the state and movement of qubits by manipulating ultrashort quantum pulses. Obtaining direct pulse-level control could improve efficiency and optimize quantum-accelerated applications.

“The end goal is for XACC to serve as a foundational framework from which we can build a comprehensive software infrastructure for scientific quantum-classical computing,” McCaskey said.

Along with McCaskey, the XACC team includes Dmitry Lyakh, Euguene Dumitrescu, Sarah Powers, Travis Humble, Thien Nguyen, Tyler Kharazi, Zach Parks, Daniel Claudino, Anthony Santana, Jay Jay Billings, Greg Watson, Robert Smith, Vicente Leyton Ortega, Cameron Reid, Prasanna Date, Pavel Lougovski and Raphael Pooser.

This work was supported by ORNL’s Laboratory Directed Research and Development program and DOE’s Office of Science.

UT-Battelle LLC manages Oak Ridge National Laboratory for DOE’s Office of Science, the single largest supporter of basic research in the physical sciences in the United States. DOE’s Office of Science is working to address some of the most pressing challenges of our time. For more information, visit https://energy.gov/science. — Elizabeth Rosenthal