Hybrid Scheduling
Hybrid Scheduling
Composer Resource Allocation is a hybrid quantum scheduling system that uses knowledge on the state of the network to have an awareness of the connected quantum hardware and simulation resources.
Architecture
flowchart TD
classDef smallText font-size:12px;
A["Composer Gateway (API)"] --> B["Composer Resource Allocation"]
B --> C["Composer Orchestrator"]
C --> D["Maestro (Simulator)"]
C --> E["Composer Interfaces (QPU Access)"]
E --> F{{"IBM"}}
E --> G{{"IQM"}}
E --> H{{"AWS Braket"}}
E --> I{{"LRZ"}}
How It Works
Step 1: Job Submission
When a user submits a quantum program through Divi or the Composer Gateway API, the job enters the scheduling pipeline. Each job carries metadata including circuit structure, qubit count, shot count, and any hardware preferences.
Step 2: Resource Assessment
Composer Resource Allocation maintains a live view of available resources:
- Simulators: Maestro instances and their current capacity
- QPU Backends: Available hardware via Composer Interfaces, including queue depths and calibration status
- Network State: Latency and bandwidth between computing nodes
Step 3: Intelligent Routing
Based on the job’s requirements and available resources, the scheduler routes to the optimal backend:
| Factor | Decision |
|---|---|
| Small circuit, few qubits | Route to Maestro simulator |
| Large circuit, many shots | Route to QPU hardware |
| Batch of mixed circuits | Split between simulator and hardware |
| High queue times on hardware | Fall back to simulation |
Step 4: Execution and Aggregation
The Composer Orchestrator manages the job through its lifecycle:
- Circuits are dispatched to assigned backends
- Results are collected asynchronously
- Error mitigation is applied where configured
- Aggregated results are returned to the user