Quantum hybrid computation
AssigneeIonQ, Inc.
InventorsAndrew Maps Ducore, Matthew Joseph Keesan, Yunseong Nam, Omar Shehab
Life of this patent
Estimating the term…
Abstract
Technologies are described herein to implement quantum hybrid computations. Embodiments include receiving a hybrid program, assigning respective functions corresponding to the hybrid program to either of CPU processing or QPU processing, scheduling processing for the respective functions, initiating execution of the hybrid program, and collating results of the execution of the classical-quantum hybrid program.
Claims24
A method (OS perspective), comprising:
- assigning respective functions corresponding to a hybrid program to either of classical information processing or quantum information processing;
- scheduling processing for the respective functions corresponding to the hybrid program;
- initiating execution of the hybrid program;
- transferring partial results of functions between classical processors and quantum processors;
- and
- collating results of the execution of the hybrid program.
An apparatus (OS perspective), comprising:
- a receiver to receive a hybrid program;
- an arbiter to assign respective functions to either of classical information processing or quantum information processing, based on one or more criteria for the respective functions;
- a scheduler to schedule processing of the respective functions on either of a classical processor or a quantum processor, as assigned by the arbiter;
- and
- a manager to:
- transfer partial results of the scheduled processing between the classical processor and the quantum processor,
- collate results of the processing on the classical processor and the quantum processor.
A computer-readable medium storing executable instructions that, upon execution, cause a digital computing processor to perform functions comprising:
- receiving a hybrid program having one or more executable components written in a first language and one or more executable components written in a second language;
- assigning the one or more executable components written in the first language for execution in a first computing environment;
- assigning the one or more executable components written in the second language for execution in a second computing environment;
- scheduling execution in the first computing environment relative to execution in the second computing environment;
- collating results of the scheduled execution;
Dependencies are inferred from the claim text.