Quantum Software Systems Group

Quantum computing (QC) offers a promising computational model that can potentially solve otherwise intractable problems by exploiting quantum phenomena such as entanglement and superposition. QC has important applications in integer factorization, database search, optimization, machine learning, chemistry, etc. Recent progress in engineering and materials science has created multiple quantum processing units (QPUs) featuring dozens to hundreds of qubits.

Source: https://www.ibm.com/quantum/technology

However, QPUs face key challenges that limit their potential. Specifically, current QPUs are characterized by limited computational capacity, i.e., low qubit numbers and hardware noise, such as low decoherence times, qubit errors, and high gate infidelities. At the same time, QPUs vary significantly in terms of technology, i.e., architectures, connectivity, and error rates.

Our research group aims to design, implement, and make novel system software stacks that tackle these challenges to enable high-performance and scalable QC.

NOTE: We’re looking for students who want to write BSc/MSc theses or participate in Guided Research. If you are interested, please check the application instructions.

Current Active Projects

# Hybrid Distributed Quantum Computing (Hybrid DQC)

Practical applications of quantum computers require hundreds of thousands to millions of physical qubits, and it will be challenging for individual quantum processors to reach such qubit numbers due to control hardware, cooling, and other technology limitations.

One approach to running large quantum applications on small quantum computers is through circuit cutting & knitting. This is a divide-and-conquer approach, where the quantum program (circuit) is cut into smaller fragments that can run on current QPUs, and then the results are post-processed to reconstruct the original computation. However, this technique incurs exponential overheads in quantum and classical computation. The second approach is to leverage quantum teleportation, which enables interactions between qubits that live on different but interconnected QPUs. However, this approach incurs latency and noise in the computation, which deteriorates the quality of the final results.

This project aims to create a compiler infrastructure that automatically leverages both techniques, hence the term “hybrid,” to minimize the limitations of both techniques: minimal exponential overheads and quality deterioration.

Keywords: Distributed Systems, Quantum Networks, Hybrid quantum-classical

# Neutral Atom QPU Compilers

Neutral atoms have become prominent hardware architecture for realizing quantum computers in recent years due to their long coherence times compared to other traditional candidates like superconducting quantum computers. They provide new features like qubit shuttling to mitigate connectivity issues and bring new challenges in circuit compilation. Fully utilizing the benefits of neutral atom quantum computers while not violating their unique limitations is considered a non-trivial task.

The project aims to find efficient compilation methods of quantum circuits to neutral atoms architecture and research how well neutral atoms architecture fits quantum computing.

Keywords: Compilation, Neutral Atoms, Optimization

# Optimizing Compilers for Quantum Computing (QComp)

As quantum computers scale up and larger circuits must be compiled, the compilation stage complexity increases. This increase leads to longer compilation times and higher computational costs which might in the future turn into bottlenecks. Addressing this challenge is crucial for quantum computing technologies’ practical and scalable use.
Qcomp develops a quantum compiler that uses data from previously compiled circuits to enhance the compilation process. By maintaining a database of past compilation information, the compiler identifies and reuses optimized subcircuits and patterns, leading to faster and more efficient compilation of new circuits. This approach not only accelerates the compilation process but, in some cases, also improves the performance of the resulting quantum circuits by applying proven optimization techniques from similar past instances.

Keywords: Fast compilation, Optimization, Scalability

# Quantum Tensor Processor Unit (qTPU)

Tensor network representations of quantum circuits are useful because they provide a structured way to handle the exponential complexity inherent in quantum computations. This method allows for more efficient simulation and manipulation of quantum states by breaking down quantum circuits into smaller, interconnected tensors. It leverages classical and quantum computational resources to optimize performance, making it feasible to execute and analyze large quantum circuits that would otherwise be computationally intractable.

We are developing the qTPU project, a scalable co-processing architecture for hybrid execution of large quantum circuits using both quantum processors (QPUs) and classical tensor processors (TPUs). Our approach represents the execution of a large quantum circuit as the contraction of a hybrid tensor network, combining quantum and classical tensors. This hybrid contraction model employs quasi-probabilistic decomposition (QPD) to enable an exponential speedup in circuit knitting. To implement this efficiently, we develop a compiler that optimizes contraction sequences, assigns contractions to classical or quantum devices, and generates the necessary code. The execution is managed by a runtime, a scalable system for parallel offloading contraction tasks to compute large quantum circuit results.

Keywords: Tensor networks, Tensor Processor Unit, Compilation

Past Projects

# QOS: Quantum Operating System

QOS is a unified system stack for managing quantum resources while holistically tackling quantum computing challenges, namely their limited and noisy qubits, (temporal and spatial) heterogeneities, and load imbalance. QOS features the QOS compiler—a modular and composable compiler for analyzing and optimizing quantum applications to run on small and noisy quantum devices with high performance and configurable overheads. For scalable execution of the optimized applications, QOS implements the QOS runtime—an efficient quantum resource management system that multi-programs and schedules the applications across space and time while achieving high system utilization, low waiting times, and high-quality results.

# QVM: Quantum Virtual Machine

QVM is an end-to-end generic system for scalable execution of large quantum circuits with high fidelity on noisy and small quantum processors (QPUs) by leveraging gate virtualization. QVM exposes a virtual circuit intermediate representation (IR) that extends the notion of quantum circuits to incorporate gate virtualization. Based on the virtual circuit as an IR, QVM features the QVM compiler—an extensible compiler infrastructure to transpile a virtual circuit through a series of modular optimization passes to produce a set of optimized circuit fragments. Lastly, these transpiled circuit fragments are executed on QPUs using the QVM runtime—a scalable and distributed infrastructure to virtualize and execute circuit fragments on a set of distributed QPUs.

# Orchestrating Quantum Cloud Environments with Qonductor

Qonductor is a cloud orchestrator for hybrid quantum-classical workflows that addresses the challenges of NISQ-era quantum devices and fully utilizes the capabilities of hybrid computing. At the top level, Qonductor exposes an extensible API for customizable hybrid workflow execution and system monitoring. Below, the Qonductor control plane features the Qonductor controller and the Qonductor scheduler. The controller abstracts workflow and resource management away by fully automating these processes in a scalable manner. The scheduler supports pluggable scheduling policies for assigning tasks to hybrid resources. Qonductor’s example policy balances the conflicting objectives of Job Completion Time (JCT) and execution quality (fidelity) by employing Pareto-optimal multi-objective optimization techniques.

Group Members

Manos Giortamis

Research Group Leader

Francisco Romão

PhD student

Oğuzcan Kırmemiş

PhD student

Nathaniel Tornow

MSc Student

Related Teaching

SoSe 2024SeminarQuantum Software Systems
SoSe 2023SeminarQuantum Software Systems