Partial Compilation for Variational Quantum Algorithms

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Variational algorithms in quantum computing face significant compilation latency issues due to the need for iterative recompilation during runtime, which becomes burdensome as the complexity of quantum circuits increases, especially in Noisy Intermediate-Scale Quantum (NISQ) machines with hundreds or thousands of qubits.

Innovation Solution

A quantum computing system and method that employs partial compilation strategies, where the classical processor identifies blocks of gates within a quantum program, pre-compiles these blocks using Gradient Ascent Pulse Engineering (GRAPE), and iteratively executes the program using pre-compiled blocks while recompiling remainder subcircuits at each iteration, optimizing control pulses for efficient execution.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Speed

If full compilation is performed using GRAPE for the entire quantum circuit, then execution time is optimized, but compilation latency becomes excessively long

Engineering Contradiction:
Improveexecution timeVSAvoidcompilation latency
Core Design Contradiction:
SpeedVSLoss of time

Solution Approach 1:

The quantum circuit is divided into multiple blocks, where each block is compiled separately using GRAPE. This segmentation allows the compilation process to focus on smaller subcircuits rather than the entire circuit, reducing overall compilation latency while maintaining optimized execution for each segment.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

Blocks are pre-compiled before execution using GRAPE optimization. By performing compilation in advance for static blocks, the system avoids repeated compilation during iterative execution, thereby reducing total compilation latency while preserving execution time optimizations.

Inventive Principle:
Principle #10Preliminary action

2Adaptability or versatility

If compilation is performed at each iteration during runtime, then adaptability is maintained, but compilation latency accumulates significantly

Engineering Contradiction:
Improveruntime adaptabilityVSAvoidcompilation latency
Core Design Contradiction:
Adaptability or versatilityVSLoss of time

Solution Approach 1:

The circuit is segmented into static blocks and dynamic remainder subcircuits. Static blocks are pre-compiled and reused across iterations, while only the dynamic remainder subcircuits are recompiled at each iteration. This segmentation dramatically reduces compilation latency while preserving runtime adaptability for changing portions of the circuit.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

Instead of compiling the entire circuit at each iteration, only the necessary remainder subcircuits are compiled. This partial compilation approach reduces redundant compilation work while maintaining adaptability for the varying portions of the algorithm.

Inventive Principle:
Principle #16Partial or excessive action

3Loss of time

If the quantum circuit is divided into blocks for partial compilation, then compilation latency is reduced, but device complexity increases

Engineering Contradiction:
Improvecompilation latencyVSAvoidcompilation system complexity
Core Design Contradiction:
Loss of timeVSDevice complexity

Solution Approach 1:

The compilation system is segmented into modular components that handle different blocks independently. This modular approach manages complexity by dividing the compilation task into manageable units, each with its own compilation logic, rather than implementing a monolithic complex system.

Inventive Principle:
Principle #1Segmentation

Data Source

PatentUS11886379B2System and method of partial compilation with variational algorithms for quantum computers
Publication Date: 2024.01.30 UNIVERSITY OF CHICAGO
  • US11886379B2 patent drawing
  • US11886379B2 patent drawing
  • US11886379B2 patent drawing

AI summary

A computing system includes a quantum processor with qubits, a classical memory including a quantum program defining a plurality of instructions in a source language, and a classical processor configured to: (i) receive a circuit of gates representing a quantum program for a variational algorithm in which computation is interleaved with compilation; (ii) identify a plurality of blocks, each block includes a subcircuit of gates, leaving one or more remainder subcircuits of the circuit of gates outside of the plurality of blocks; (iii) pre-compile each block of the plurality of blocks with a pulse generation program to generate a plurality of pre-compiled blocks including control pulses configured to perform the associated block on the quantum processor; and (iv) iteratively execute the quantum program using the pre-compiled blocks as static during runtime and recompiling the one or more remainder subcircuits on the classical processor at each iteration of execution.