Quantum Instruction Streaming via Segmented Memory

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Quantum computing systems face performance issues due to the need for quick instruction fetching and execution, as they can execute multiple instructions simultaneously, but are limited by short coherence times of qubits and insufficient memory access, leading to low performance when using classical memory fetching methods.

Innovation Solution

A system that streams quantum instructions from a classical processing system to a quantum processor, utilizing a small program memory close to the quantum processing unit, allowing scheduled instructions to be loaded and executed efficiently, reducing memory requirements and enabling just-in-time compilation.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Quantity of substance

If quantum instructions are fetched from a large memory space on a classical system, then the quantum system can access large quantum programs, but the memory access time increases and performance decreases

Engineering Contradiction:
Improvememory capacityVSAvoidinstruction fetch speed
Core Design Contradiction:
Quantity of substanceVSSpeed

Solution Approach 1:

The patent divides the memory system into two segments: a large classical memory for storing complete quantum programs and a small fast program memory for quick instruction access. The classical memory stores the entire quantum program while the program memory holds only the instructions currently needed for execution, enabling both large capacity and fast access speeds.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The system performs preliminary action by pre-loading scheduled quantum instructions from the large classical memory into the small program memory before they are needed for execution. This advance preparation ensures that instructions are ready in fast memory when the quantum processor needs them, eliminating access delays during critical execution windows.

Inventive Principle:
Principle #10Preliminary action

2Speed

If a small program memory is used close to the quantum processor, then instruction fetch speed increases, but the memory capacity is insufficient for large quantum programs

Engineering Contradiction:
Improveinstruction fetch speedVSAvoidmemory capacity
Core Design Contradiction:
SpeedVSQuantity of substance

Solution Approach 1:

The classical computing system acts as an intermediary between the large storage memory and the quantum processor. It manages the transfer of instructions from large memory to the small program memory, handles scheduling, and coordinates the streaming of instructions to the quantum system, enabling the small memory to function effectively despite its limited capacity.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Reliability

If quantum instructions are compiled and stored in advance, then execution can proceed smoothly, but the system cannot adapt to dynamic compilation requirements

Engineering Contradiction:
Improveexecution smoothnessVSAvoidjust-in-time compilation capability
Core Design Contradiction:
ReliabilityVSAdaptability or versatility

Solution Approach 1:

The patent implements a dynamic instruction streaming approach where the classical system continuously manages the flow of instructions from large memory to program memory based on real-time quantum processor needs. This dynamic adaptation allows the system to switch between pre-loaded instructions and just-in-time compilation, providing both execution reliability and adaptability to changing requirements.

Inventive Principle:
Principle #15Dynamics

Data Source

PatentUS11829753B1Streaming execution for a quantum processing system
Publication Date: 2023.11.28 RIGETTI & CO INC
  • US11829753B1 patent drawing
  • US11829753B1 patent drawing
  • US11829753B1 patent drawing

AI summary

Interactions between a classical computing system and a quantum computing system can be structured to increase the effective memory available to hold instructions for a quantum processor. The system stores a schedule of compiled quantum processing instructions in a memory storage location on a classical computing system. A small program memory is included in close proximity to a control system for the quantum processor on the quantum computing system. The classical computing system sends a subset of instructions from the schedule of quantum instructions to the program memory. The control system manages execution of the instructions by accessing them at the program memory and configuring the quantum processor accordingly. While the quantum processor executes the instructions, additional instructions are transferred from the classical computing system to the program memory to await execution. The quantum system can execute many instructions quickly without idling while instructions are fetched from a large memory.