Why Parallelize?
In distributed quantum computing, parallelism is essential for scalability and performance. Our platform is designed to automate the parallelization and distribution hybrid quantum-classical programs onto the available quantum backends, by analyzing the quantum algorithms, partitioning the problem, and generating batch jobs.
This page provides a technical overview of how our stack handles parallelization.
The Bottlenecks and our Approach
Quantum algorithms often require repeated circuit executions—whether for sampling, variational parameter optimization, or decomposed subproblem evaluation. However, today’s quantum hardware typically suffers from two major limitations:
- Limited qubit counts restrict the size and complexity of problems that can be executed on a single device.
- Long runtimes, depending on the hardware backend, can result in prohibitively slow time-to-solution—especially when thousands of circuit evaluations are required.
These constraints make it challenging to apply quantum algorithms to real-world problems without intelligent orchestration and parallelization strategies. Our platform addresses these limitations through the following techniques:
- Problem Decomposition: Large optimization problems are broken into smaller, independent subproblems to maximize utilization across quantum resources.
- Automated Circuit Cutting: When a subproblem still exceeds hardware capacity, our platform automatically partitions the circuit with minimal or no user intervention.
- Parallel Quantum Subroutine Execution: From multi-term Hamiltonian evaluations to parameter shift-based gradient calculations, our tools generate and dispatch quantum jobs in parallel.
Quantum tasks are further constrained by execution latency and queuing delays—especially when using cloud-based hardware. We mitigates these issues by:
- Reducing end-to-end runtime through saturation of quantum service pipelines.
- Overlapping classical and quantum computation, such as evaluating parameters or computing gradients while circuits are running.
- Enabling batch-style execution of parameter sets to improve throughput and resource efficiency.