IP Library Granted Patent US 12,293,259
Granted Patent B2
US 12,293,259 · App. 16/884,928 · Granted May 6, 2025

Qubit allocation service

Inventors: Leigh Griffin (Waterford, IE); Stephen Coady (Waterford, IE)
Assignee: Red Hat, Inc.
G06N10/00G06F9/44505G06F9/5022
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 12,293,259
App. No.
16/884,928
Granted
May 6, 2025
Kind
B2
Abstract

Qubit allocation service is disclosed. A qubit allocation service determines that a first quantum service requires a qubit for execution. A qubit registry that maintains information about a plurality of qubits on a quantum computing system is accessed to identify a first qubit of the plurality of qubits that is available for allocation. Information indicating that the first qubit is allocated to the first quantum service is stored. The first quantum service is provided qubit information via which the first quantum service can determine that the first qubit is allocated to the first quantum service.

Claims (81)

1. A method comprising:

determining, by a qubit allocation service, that a first quantum service requires a qubit for execution by:

analyzing, by the qubit allocation service, a quantum assembly file (QASM) file that implements the first quantum service; and

determining, based on the QASM file, that the first quantum service requires the qubit for execution;

in response to determining that the first quantum service requires the qubit for execution, accessing, by the qubit allocation service, a qubit registry that maintains information about a plurality of qubits on a quantum computing system to identify a first qubit of the plurality of qubits that is available for allocation;

storing information indicating the first qubit is allocated to the first quantum service;

in response to the first qubit being allocated to the first quantum service, decrementing an integer value that is classically stored in a total available qubits counter of the qubit registry service by an integer of value one, wherein the decremented integer value stored in the total available qubits counter is an integer value indicating a total number of qubits that are currently available for allocation and the total available qubits counter is a classical counter; and

providing, by the qubit allocation service to the first quantum service, qubit information via which the first quantum service is enabled to determine that the first qubit is allocated to the first quantum service.

2. The method of claim 1 wherein determining, by the qubit allocation service, that the first quantum service requires the qubit for execution comprises receiving, by a quantum service orchestrator of the qubit allocation service, from the first quantum service, a request for the qubit to be allocated.

3. The method of claim 1 further comprising:

obtaining, from the qubit registry, a qubit identifier that identifies the first qubit; and

wherein providing, by the qubit allocation service to the first quantum service, the qubit information via which the first quantum service can determine that the first qubit is allocated to the first quantum service comprises:

initiating, by the quantum service orchestrator of the qubit allocation service, the first quantum service; and

providing, to the first quantum service, the qubit information.

4. The method of claim 1 further comprising:

generating, by the qubit allocation service, a first qubit partition that includes the first qubit; and

associating the first qubit partition with the first quantum service.

5. The method of claim 4 wherein the qubit information comprises a first qubit partition identifier that identifies the first qubit partition.

6. The method of claim 4 wherein the qubit information comprises a qubit identifier that identifies the first qubit.

7. The method of claim 4 wherein generating, by the qubit allocation service, the first qubit partition that includes the first qubit further comprises:

receiving, by the qubit registry from a quantum service orchestrator of the qubit allocation service, a first quantum service identifier that identifies the first quantum service;

generating, by the qubit registry, the first qubit partition that includes the first qubit; and

sending, to the quantum service orchestrator, a first qubit partition identifier that identifies the first qubit partition.

8. The method of claim 4 further comprising:

receiving, by the qubit registry, a request from the first quantum service requesting a total number of qubits available to the first quantum service;

accessing, by the qubit registry, the first qubit partition;

determining that the first qubit partition includes the first qubit; and

sending, to the first quantum service, information identifying that a total of one qubit is available to the second quantum service.

9. The method of claim 4 further comprising:

subsequent to providing, by the qubit allocation service to the first quantum service, the qubit information, receiving, by the qubit allocation service from the first quantum service, a request for a second qubit;

accessing, by the qubit allocation service, the qubit registry to identify a second qubit of the plurality of qubits that is available for allocation;

modifying a first partition record to identify the first qubit and the second qubit as being associated with the first qubit partition; and

providing, by the qubit allocation service to the first quantum service, qubit information via which the first quantum service is enabled to determine that the second qubit is allocated to the first quantum service.

10. The method of claim 1 further comprising:

determining, by the qubit allocation service, that the first quantum service has terminated;

reallocating the first qubit so that the first qubit is available for allocation; and

in response to reallocating the first qubit, incrementing the integer value indicating the total available qubits counter by the integer of one.

11. The method of claim 10 wherein reallocating the first qubit comprises deleting a first qubit partition that includes the first qubit.

12. The method of claim 1 further comprising:

receiving, by the qubit registry, a request from a second quantum service requesting a total number of qubits available to the second quantum service;

determining, by the qubit registry, that no qubit partition is associated with the second quantum service; and

sending, to the second quantum service, information identifying that a total of zero qubits are available to the second quantum service.

13. The method of claim 12 further comprising:

subsequent to receiving, by the qubit registry, the request from the second quantum service requesting the total number of qubits available to the second quantum service, receiving, from the qubit allocation service, from the second quantum service, a request for two qu bits;

accessing, by the qubit allocation service, the qubit registry to identify a second qubit and a third qubit that is available for allocation;

generating, by the qubit allocation service, a second qubit partition that includes the second qubit and the third qubit;

associating the second qubit partition with the second quantum service; and

providing, by the qubit allocation service to the second quantum service, qubit information via which the second quantum service can determine that the second qubit and the third qubit are allocated to the second quantum service.

14. The method of claim 13 further comprising:

receiving, by the qubit registry, a second request from the second quantum service requesting the total number of qubits available to the second quantum service;

accessing, by the qubit registry, the second qubit partition;

determining that the second qubit partition includes the second qubit and the third qubit;

sending, to the second quantum service, information identifying that a total of two qubits are available to the second quantum service;

determining, by the qubit registry, that no qubit partition is associated with the second quantum service; and

sending, to the second quantum service, information identifying that a total of zero qubits are available to the second quantum service.

15. The method of claim 1 wherein determining, by the qubit allocation service, that the first quantum service requires the qubit for execution further comprises determining, by the qubit allocation service, that the first quantum service requires the first qubit and a second qubit for execution;

and wherein accessing, by the qubit allocation service, the qubit registry to identify the first qubit of the plurality of qubits that is available for allocation further comprises accessing, by the qubit allocation service, the qubit registry to identify the first qubit, which is available on a first quantum computing system, and the second qubit, which is available on a second quantum computing system;

storing information indicating the first qubit and the second qubit are no longer available for allocation; and

providing, by the qubit allocation service to the first quantum service, the qubit information via which the first quantum service can determine that the first qubit on the first quantum computing system and the second qubit on the second quantum computing system are allocated to the first quantum service.

16. The method of claim 15 further comprising:

generating, by the qubit registry, an qubit update record identifying the first qubit and the second qubit as being allocated to the first quantum service; and

sending, by the qubit registry to at least one other qubit registry, the qubit update record.

17. A computer program product stored on a non-transitory computer-readable storage medium and including instructions to cause a processor device to:

determine that a first quantum service requires a qubit;

access a qubit registry that maintains information about a plurality of qubits on a quantum computing system to identify a first qubit that is available for allocation;

store information indicating the first qubit is allocated to the first quantum service;

in response to the first qubit being allocated to the first quantum service, decrement an integer value that is classically stored in a total available qubits counter of the qubit registry service by an integer of value one, wherein the decremented integer value stored in the total available qubits counter is an integer value indicating a total number of qubits that are currently available for allocation and the total available qubits counter is a classical counter;

provide, to the first quantum service, an identifier via which the first quantum service can determine that the first qubit is allocated to the first quantum service;

receive, by the qubit registry, a request from a second quantum service requesting a total number of qubits available for allocation to the second quantum service;

determine, by the qubit registry, that no qubit partition is associated with the second quantum service; and

in response to determining that no qubit partition is associated with the second quantum service, send, to the second quantum service, information identifying that a total of zero qubits are available for allocation to the second quantum service.

18. A quantum computing system, comprising:

a memory; and

a processor device coupled to the memory to:

determine, by a qubit allocation service, that a first quantum service requires a qubit for execution by:

analyzing, by the qubit allocation service, a quantum assembly file (QASM) file that implements the first quantum service; and

determining, based on the QASM file, that the first quantum service requires the qubit for execution;

in response to determining that the first quantum service requires the qubit for execution, access, by the qubit allocation service, a qubit registry that maintains information about a plurality of qubits on a quantum computing system to identify a first qubit of the plurality of qubits that is available for allocation;

store information indicating the first qubit is allocated to the first quantum service;

in response to the first qubit being allocated to the first quantum service, decrement an integer value that is classically stored in a total available qubits counter of the qubit registry service by an integer of value one, wherein the decremented integer value stored in the total available qubits counter is an integer value indicating a total number of qubits that are currently available for allocation and the total available qubits counter is a classical counter; and

provide, by the qubit allocation service to the first quantum service, qubit information via which the first quantum service is enabled to determine that the first qubit is allocated to the first quantum service.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 27, 2020
From: GRIFFIN, LEIGH; COADY, STEPHEN
To: RED HAT, INC.
Reel/Frame 052765/0681 →
Continuity (1)
Related Publication 20210374583A1 · Dec 2, 2021
References Cited (115)
US 7451292B2 · Routt · 2008 [cited by applicant]
US 7639035B2 · Berkley · 2009 [cited by applicant]
US 7853011B2 · Kuang et al. · 2010 [cited by applicant]
US 8102185B2 · Johansson et al. · 2012 [cited by applicant]
US 8434027B2 · Jones · 2013 [cited by applicant]
US 8600051B2 · Noh · 2013 [cited by applicant]
US 8959115B2 · Marathe · 2015 [cited by applicant]
US 9264226B2 · Harrison et al. · 2016 [cited by applicant]
US 9495644B2 · Chudak et al. · 2016 [cited by applicant]
US 9509506B2 · Hughes et al. · 2016 [cited by applicant]
US 9537953B1 · Dadashikelayeh et al. · 2017 [cited by applicant]
US 9774401B1 · Borrill · 2017 [cited by applicant]
US 9847913B2 · Kanda et al. · 2017 [cited by applicant]
US 9887976B2 · Hughes et al. · 2018 [cited by applicant]
US 10331658B2 · Pennefather et al. · 2019 [cited by applicant]
US 10592216B1 · Richardson et al. · 2020 [cited by applicant]
US 11507872B2 · Cao · 2022 [cited by examiner]
US 20030121028A1 · Coury et al. · 2003 [cited by applicant]
US 20050193221A1 · Yoneyama · 2005 [cited by applicant]
US 20120093521A1 · Harrison et al. · 2012 [cited by applicant]
US 20120124092A1 · Teranishi et al. · 2012 [cited by applicant]
US 20130308956A1 · Meyers et al. · 2013 [cited by applicant]
US 20140254660A1 · La · 2014 [cited by examiner]
US 20140365843A1 · Ashikhmin · 2014 [cited by applicant]
US 20160071021A1 · Raymond · 2016 [cited by applicant]
US 20170351974A1 · Rose et al. · 2017 [cited by applicant]
US 20180091440A1 · Dadashikelayeh et al. · 2018 [cited by applicant]
US 20180144262A1 · Roetteler et al. · 2018 [cited by applicant]
US 20180181685A1 · Roetteler · 2018 [cited by examiner]
US 20180330264A1 · Lanting · 2018 [cited by examiner]
US 20180336371A1 · Fortmann et al. · 2018 [cited by applicant]
US 20180365585A1 · Smith · 2018 [cited by examiner]
US 20190042392A1 · Matsuura · 2019 [cited by examiner]
US 20190042971A1 · Zou · 2019 [cited by examiner]
US 20190102220A1 · Bishop · 2019 [cited by examiner]
US 20190179730A1 · Geller et al. · 2019 [cited by applicant]
US 20190378032A1 · Kliuchnikov · 2019 [cited by examiner]
US 20200074346A1 · Griffin et al. · 2020 [cited by applicant]
US 20200116784A1 · Liu · 2020 [cited by examiner]
US 20200125402A1 · Griffin et al. · 2020 [cited by applicant]
US 20200125983A1 · Hertzberg · 2020 [cited by examiner]
US 20200125985A1 · Narang · 2020 [cited by examiner]
US 20200133947A1 · Wang · 2020 [cited by applicant]
US 20200160204A1 · Johnson · 2020 [cited by examiner]
US 20200184025A1 · Horii et al. · 2020 [cited by applicant]
US 20200184031A1 · Horit · 2020 [cited by applicant]
US 20200184361A1 · Horii · 2020 [cited by examiner]
US 20200201655A1 · Griffin et al. · 2020 [cited by applicant]
US 20200218787A1 · Doi · 2020 [cited by examiner]
US 20200218842A1 · Itoko · 2020 [cited by examiner]
US 20200227522A1 · Leipold et al. · 2020 [cited by applicant]
US 20200272926A1 · Chaplin et al. · 2020 [cited by applicant]
US 20200301562A1 · Gupta et al. · 2020 [cited by applicant]
US 20200313063A1 · Pollanen et al. · 2020 [cited by applicant]
US 20200358187A1 · Tran · 2020 [cited by examiner]
US 20200374211A1 · Griffin et al. · 2020 [cited by applicant]
US 20200380877A1 · James · 2020 [cited by examiner]
US 20200387821A1 · Griffin et al. · 2020 [cited by applicant]
US 20210027188A1 · Nickerson et al. · 2021 [cited by applicant]
US 20210036846A1 · Grice et al. · 2021 [cited by applicant]
US 20210058243A1 · Starodubtsev · 2021 [cited by applicant]
US 20210157877A1 · Mezzacapo · 2021 [cited by examiner]
US 20210173660A1 · Hogaboam · 2021 [cited by examiner]
US 20210182724A1 · Zou · 2021 [cited by examiner]
US 20210286599A1 · Gazda · 2021 [cited by examiner]
US 20210303155A1 · Meister et al. · 2021 [cited by applicant]
US 20220019928A1 · Jiang · 2022 [cited by examiner]
US 20220083626A1 · McMahon · 2022 [cited by examiner]
US 20220084085A1 · Rigetti · 2022 [cited by examiner]
US 20220318661A1 · Meijer · 2022 [cited by examiner]
CN 105164704B · 2018 [cited by applicant]
CN 109816112A · 2019 [cited by applicant]
CN 114503027A · 2022 [cited by applicant]
JP 6465876B2 · 2019 [cited by applicant]
WO 2016206498A1 · 2016 [cited by applicant]
WO 2018111242A1 · 2018 [cited by applicant]
U.S. Appl. No. 16/227,747, filed Dec. 20, 2018. [cited by applicant]
U.S. Appl. No. 15/930,025, filed May 12, 2020. [cited by applicant]
U.S. Appl. No. 16/859,571, filed Apr. 27, 2020. [cited by applicant]
Cheng, S.T. et al., “Quantum Switching and Quantum Merge Sorting,” IEEE Transactions on Circuits and Systems I: Regular Papers, vol. 53, Issue 2, Feb. 2006, IEEE, 10 pages. [cited by applicant]
Whitehouse, L., “Data deduplication methods: Block-level versus byte-leveldedupe,” Nov. 24, 2008, https://www.techtarget.com/searchdatabackup/tip/Data-deduplication-methods-Block-level-versus-byte-level-dedupe, 2 pages. [cited by applicant]
Applicant-Initiated Interview Summary for U.S. Appl. No. 15/930,025, mailed Dec. 17, 2021, 3 pages. [cited by applicant]
Non-Final Office Action for U.S. Appl. No. 16/912,091, mailed Jan. 27, 2022, 14 pages. [cited by applicant]
Notice of Allowance for U.S. Appl. No. 16/227,747, mailed Jun. 10, 2021, 7 pages. [cited by applicant]
Barnum, H. et al., “Authentication of Quantum Messages,” Proceedings of the 43rd Annual IEEE Symposium on Foundations of Computer Science, Nov. 2002, IEEE, 10 pages. [cited by applicant]
Bushwick, S., “New Encryption System Protects Data from Quantum Computers,” Scientific American, Oct. 8, 2019, https://www.scientificamerican.com/article/new-encryption-system-protects-data-from-quantum-computers/, 5 pa… [cited by applicant]
Chen, S., “What if Quantum Computers Used Hard Drives made of DNA?” Wired, Mar. 15, 2017, https://www.wired.com/2017/03/quantum-computers-used-hard-drives-made-dna/, 10 pages. [cited by applicant]
Choi, C., “A Data Bus for Quantum Computers,” IEEE Spectrum, Nov. 9, 2017, https://spectrum.IEEE.org/tech-talk/computing/hardware/a-quantum-bus-for-quantum-computers, 3 pages. [cited by applicant]
Gühne, O., et al., “Entanglement detection,” Physics Reports, vol. 474, No. 1, Feb. 27, 2009, 90 pages. [cited by applicant]
Lee, C., “New form of qubit control may yield longer computation times,” Ars Technica, Jan. 26, 2018, Wired Media Group, 5 pages. [cited by applicant]
Mina, M., et al., “EntangleNet: Theoretical Reestablishment of Entanglement in Quantum Networks,” Applied Science, vol. 8, Issue 10, Oct. 16, 2018, 17 pages. [cited by applicant]
Pathumsoot, P., et al., “Modeling of Measurement-based Quantum Network Coding on IBM Q Experience Devices,” arXiv: 1910.00815v2 [quant-ph], Nov. 12, 2019, 10 pages. [cited by applicant]
Schoute, E., et al., “Shortcuts to Quantum Network Routing,” Jul. 9, 2016, available online at https://obj.umiacs.umd.edu/extended_abstracts/QCrypt_2016_paper_203.pdf, 2 pages. [cited by applicant]
Sillanpaa, M. et al., “Coherent quantum state storage and transfer between two phase qubits via a resonant cavity,” Nature, vol. 449, Sep. 2007, Nature Publishing Group, pp. 438-442. [cited by applicant]
Toyoizumi, H., “Performance Evaluation of Quantum Merging: Negative Queue Length,” Waseda University, accessed Apr. 2020 from http://www.f.waseda.jp/toyoizumi/research/papers/Performance%20Evaluation%20of%20Quantum%20Me… [cited by applicant]
Yamasaki, H. et al., “Quantum State Merging for Arbitrarily Small-Dimensional Systems,” IEEE Transactions on Information Theory, vol. 65, No. 6, Jun. 2019, IEEE, pp. 3950-3972. [cited by applicant]
Yang, C., et al., “Entanglement generation and quantum information transfer between spatiallY-separated qubits in different cavities,” New Journal of Physics, vol. 15, Nov. 1, 2013, 19 pages. [cited by applicant]
Non-Final Office Action for U.S. Appl. No. 15/930,025, mailed Oct. 1, 2021, 10 pages. [cited by applicant]
Non-Final Office Action for U.S. Appl. No. 16/859,571, mailed Oct. 28, 2021, 9 pages. [cited by applicant]
Notice of Allowance for U.S. Appl. No. 16/909,477, mailed Feb. 2, 2023, 13 pages. [cited by applicant]
Non-Final Office Action for U.S. Appl. No. 17/883,280, mailed Jan. 18, 2023, 22 pages. [cited by applicant]
Notice of Allowance for U.S. Appl. No. 16/912,200, mailed Oct. 13, 2022, 9 pages. [cited by applicant]
Notice of Allowance for U.S. Appl. No. 16/912,091, mailed Sep. 14, 2022, 10 pages. [cited by applicant]
Notice of Allowance and Examiner-Initiated Interview Summary for U.S. Appl. No. 15/930,025, mailed Apr. 8, 2022, 13 pages. [cited by applicant]
Notice of Allowance, Examiner's Amendment, and Examiner-Initiated Interview Summary for U.S. Appl. No. 16/912,045, mailed Oct. 4, 2022, 12 pages. [cited by applicant]
Non-Final Office Action for U.S. Appl. No. 16/909,477, mailed Sep. 30, 2022, 34 pages. [cited by applicant]
Non-Final Office Action for U.S. Appl. No. 16/912,200, mailed May 12, 2022, 39 pages. [cited by applicant]
Non-Final Office Action for U.S. Appl. No. 16/912,045, mailed Apr. 14, 2022, 9 pages. [cited by applicant]
Non-Final Office Action for U.S. Appl. No. 16/859,571, mailed May 20, 2022, 21 pages. [cited by applicant]
Final Office Action and Examiner Interview Summary for U.S. Appl. No. 16/859,571, mailed Dec. 8, 2022, 14 pages. [cited by applicant]
Final Office Action for U.S. Appl. No. 16/912,091, mailed Jun. 20, 2022, 14 pages. [cited by applicant]
Non-Final Office Action for U.S. Appl. No. 16/859,571, mailed Jun. 8, 2023, 17 pages. [cited by applicant]
Notice of Allowance and Notice of Allowability for U.S. Appl. No. 17/883,280, mailed Aug. 30, 2023, 11 pages. [cited by applicant]
Corrected Notice of Allowability for U.S. Appl. No. 16/859,571, mailed Oct. 6, 2023, 13 pages. [cited by applicant]
Notice of Allowance and Notice of Allowability for U.S. Appl. No. 16/859,571, mailed Sep. 26, 2023, 20 pages. [cited by applicant]