IP Library Granted Patent US 11,714,730
Granted Patent B2
US 11,714,730 · App. 16/997,252 · Granted Aug 1, 2023

Systems and methods for high availability, failover and load balancing of heterogeneous resources

Inventor: Radomir Stevanovic (Vancouver, CA)
Assignee: D-WAVE SYSTEMS INC.
G06F11/2028G06F9/4843G06F9/505G06F9/541G06N10/00G06F2201/805
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 11,714,730
App. No.
16/997,252
Granted
Aug 1, 2023
Kind
B2
Abstract

Systems, methods and article provide the services of heterogeneous resources, for example the services analog processors, e.g., quantum processors, in a robust manner that can include high availability, failover, and load balancing of the heterogeneous resources. A virtual solver is selected based at least in part on a first set of requirements, a first set of analog processors is identified based at least in part on the first set of requirements, and a first handle returned to the first virtual solver. A load balancer may balance loads. Failure over may be implemented.

Claims (35)

1. A method of operation of a hybrid computing system including at least one digital processor and a plurality of analog processors, the method executed by the at least one digital processor, the method comprising:

receiving a first set of requirements;

selecting a first virtual solver satisfying the first set of requirements;

identifying a first set of analog processors in the plurality of analog processors satisfying the first set of requirements;

returning a first handle to the first virtual solver;

receiving a problem via a solver application programming interface;

queuing the problem in a first virtual solver queue;

mapping the first virtual solver queue to a first set of analog processor queues of the first set of analog processors; and

servicing the first virtual solver queue via a load balancer.

2. The method of claim 1 wherein receiving a problem via a solver application programming interface includes receiving, by the first virtual solver, a problem.

3. The method of claim 1 wherein servicing the first virtual solver queue via a load balancer includes dispatching a first task to a first one of the first set of analog processor queues.

4. The method of claim 3 wherein dispatching a first task to a first one of the first set of analog processor queues includes sequentially dispatching the first task to each analog processor queue of the first set of analog processor queues.

5. The method of claim 3 wherein dispatching a first task to a first one of the first set of analog processor queues includes dispatching a first task to a first one of a set of quantum processor queues.

6. The method of claim 1 wherein mapping the first virtual solver queue to a set of analog processor queues includes mapping the first virtual solver queue to a set of quantum processor queues.

7. The method of claim 1 further comprising returning a problem status.

8. The method of claim 1 wherein receiving a first set of requirements includes receiving a first set of requirements for a first set of virtual solver features.

9. A computing system comprising:

at least one digital processor;

a plurality of analog processors; and

at least one non-transitory processor-readable medium communicatively coupleable to the at least one digital processor and that stores at least one of a set of processor-executable instructions or data which, when executed by the at least one digital processor, causes the at least one digital processor to:

receive a first set of requirements, wherein the first set of requirements are properties of at least one analog processor in the plurality of analog processors;

select a first virtual solver satisfying the first set of requirements;

identify a first set of analog processors in the plurality of analog processors satisfying the first set of requirements;

return a first handle to the first virtual solver;

receive a problem via a solver application programming interface;

queue the problem in a first virtual solver queue;

map the first virtual solver queue to a first set of analog processor queues of the first set of analog processors; and

service the first virtual solver queue via a load balancer.

10. The computing system of claim 9 wherein the non-transitory processor-readable medium stores processor-executable instructions which, when executed, causes the digital processor to receive, by the first virtual solver, a problem.

11. The computing system of claim 9 wherein the non-transitory processor-readable medium stores processor-executable instructions which, when executed, causes the digital processor to dispatch a first task to a first one of the first set of analog processor queues.

12. The computing system of claim 9 wherein the non-transitory processor-readable medium stores processor-executable instructions which, when executed, causes the digital processor to sequentially dispatch a first task to each analog processor queue of the first set of analog processor queues.

13. The computing system of claim 11 wherein the non-transitory processor-readable medium stores processor-executable instructions which, when executed, causes the digital processor to dispatch a first task to a first one of a set of quantum processor queues.

14. The computing system of claim 9 wherein the non-transitory processor-readable medium stores processor-executable instructions which, when executed, causes the digital processor to map the first virtual solver queue to a set of quantum processor queues.

15. The computing system of claim 9 wherein the non-transitory processor-readable medium stores processor-executable instructions which, when executed, further causes the digital processor to return a problem status.

16. The computing system of claim 9 wherein the non-transitory processor-readable medium stores processor-executable instructions which, when executed, causes the digital processor to receive a first set of requirements for a first set of virtual solver features.

Assignments (12)
RELEASE OF SECURITY INTEREST Recorded Mar 11, 2025
From: PSPIB UNITAS INVESTMENTS II INC.
To: D-WAVE SYSTEMS INC.; 1372934 B.C. LTD.
Reel/Frame 070470/0098 →
INTELLECTUAL PROPERTY SECURITY AGREEMENT Recorded Apr 14, 2023
From: D-WAVE SYSTEMS INC.; 1372934 B.C. LTD.
To: PSPIB UNITAS INVESTMENTS II INC., AS COLLATERAL AGENT
Reel/Frame 063340/0888 →
RELEASE OF SECURITY INTEREST Recorded Sep 20, 2022
From: PSPIB UNITAS INVESTMENTS II INC., IN ITS CAPACITY AS COLLATERAL AGENT
To: D-WAVE SYSTEMS INC.
Reel/Frame 061493/0694 →
SECURITY INTEREST Recorded Mar 3, 2022
From: D-WAVE SYSTEMS INC.
To: PSPIB UNITAS INVESTMENTS II INC.
Reel/Frame 059317/0871 →
CORRECTIVE ASSIGNMENT TO CORRECT THE ASSIGNOR (REMOVE COMMA) PREVIOUSLY RECORDED ON REEL 057334 FRAME 0596. ASSIGNOR(S) HEREBY CONFIRMS THE MERGER AND CHANGE OF NAME. Recorded Sep 24, 2021
From: D-WAVE SYSTEMS INC.; DWSI HOLDINGS INC.
To: DWSI HOLDINGS INC.
Reel/Frame 057597/0646 →
CORRECTIVE ASSIGNMENT TO CORRECT THE ASSIGNEE (REMOVE COMMA) PREVIOUSLY RECORDED ON REEL 057125 FRAME 0358. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNMENT. Recorded Sep 24, 2021
From: STEVANOVIC, RADOMIR
To: D-WAVE SYSTEMS INC.
Reel/Frame 057597/0636 →
CORRECTIVE ASSIGNMENT TO CORRECT THE ASSIGNOR AND ASSIGNEE (REMOVE COMMA) PREVIOUSLY RECORDED ON REEL 057334 FRAME 0594. ASSIGNOR(S) HEREBY CONFIRMS THE CONTINUATION. Recorded Sep 24, 2021
From: D-WAVE SYSTEMS INC.
To: D-WAVE SYSTEMS INC.
Reel/Frame 057597/0643 →
CORRECTIVE ASSIGNMENT TO CORRECT THE ASSIGNEE PREVIOUSLY RECORDED AT REEL: 057302 FRAME: 0392. ASSIGNOR(S) HEREBY CONFIRMS THE CHANGE OF NAME. Recorded Sep 24, 2021
From: DWSI HOLDINGS INC.
To: D-WAVE SYSTEMS INC.
Reel/Frame 057597/0655 →
MERGER AND CHANGE OF NAME Recorded Aug 26, 2021
From: D-WAVE SYSTEMS, INC.; DWSI HOLDINGS INC.; DWSI HOLDINGS INC.
To: DWSI HOLDINGS INC.
Reel/Frame 057334/0596 →
CONTINUATION Recorded Aug 26, 2021
From: D-WAVE SYSTEMS, INC.
To: D-WAVE SYSTEMS, INC.
Reel/Frame 057334/0594 →
CHANGE OF NAME Recorded Aug 26, 2021
From: DWSI HOLDINGS INC.
To: D-WAVE SYSTEMS, INC.
Reel/Frame 057302/0392 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 9, 2021
From: STEVANOVIC, RADOMIR
To: D-WAVE SYSTEMS, INC.
Reel/Frame 057125/0358 →