IP Library Granted Patent US 10,514,954
Granted Patent B2
US 10,514,954 · App. 15/879,182 · Granted Dec 24, 2019

Platform for hierarchy cooperative computing

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 10,514,954
App. No.
15/879,182
Filed
Jan 24, 2018
Granted
Dec 24, 2019
Kind
B2
Examiner
LEE, ADAM
Art Unit
2193
USPC
718/104
Abstract

A system for hierarchical cooperative computing is provided, comprising a vector definition service configured to receive a user-submitted request, and compile the request into a vector; a rules engine configured to retrieve the vector from the vector definition service, and evaluate the vector for appropriateness; a parametric evaluator configured to parameterize the vector, and generate at least a run from the parameterized vector; and an optimizer configured to retrieve the run from the parametric evaluator, and determine an optimal plan for executing the user-submitted request.

Claims (38)

1. A system for hierarchical cooperative computing, comprising:

a vector definition service platform comprising a memory, a processor, and a plurality of programming instructions stored in the memory thereof and operable on the processor thereof, wherein the programming instructions, when operating on the processor, cause the processor to:

receive a user-submitted request comprising at least a cooperative computing request; and

compile the request into a vector using at least a model definition language;

a rules engine comprising a memory, a processor, and a plurality of programming instructions stored in the memory thereof and operable on the processor thereof, wherein the programming instructions, when operating on the processor, cause the processor to:

retrieve the vector from the vector definition service platform; and

evaluate the vector for appropriateness based at least on predefined rules, data associated with the user-submitted request, and processing localities;

a parametric evaluator comprising a memory, a processor, and a plurality of programming instructions stored in the memory thereof and operable on the processor thereof, wherein the programming instructions, when operating on the processor, cause the processor to:

parameterize the vector based at least on an intended purpose of the user-submitted request and predefined constraints included in the user-submitted request; and

generate at least a run from the parameterized vector; and

an optimizer comprising a memory, a processor, and a plurality of programming instructions stored in the memory thereof and operable on the processor thereof, wherein the programming instructions, when operating on the processor, cause the processor to:

retrieve the run from the parametric evaluator; and

determine an optimal plan for executing the user-submitted request based at least on the run, wherein the optimal plan includes executing the user-submitted request in an optimal processing locality of the processing localities, and wherein the optimal processing locality is determined based at least on the status of connections from the system to the optimal processing locality and availability of computational resources of the optimal processing locality.

2. The system of claim 1 , further comprising:

a data migration service platform comprising a memory, a processor, and a plurality of programming instructions stored in the memory thereof and operable on the processor thereof, wherein the programming instructions, when operating on the processor, cause the processor to:

initiate migration of the data associated with the user-submitted request from one processing locality to a different processing locality for processing.

3. The system of claim 1 , further comprising:

a resource modulation service platform comprising a memory, a processor, and a plurality of programming instructions stored in the memory thereof and operable on the processor thereof, wherein the programming instructions, when operating on the processor, cause the processor to:

automatically acquire additional resources for the optimal processing locality to execute the user-submitted request from a service provider external to the optimal processing locality.

4. The system of claim 1 , wherein the optimizer uses a simulation service external to the optimizer to operate an instanced copy of a compute environment to identify bottlenecks in the system.

5. The system of claim 1 , wherein the rules engine is further configured to conduct a feasibility analysis on the vector.

6. The system of claim 5 , wherein the rules engine denies the vector and submits a request to the vector definition service platform for additional information.

7. A method for hierarchical cooperative computing, comprising the steps of:

receiving a user-submitted request comprising at least a cooperative computing request using a vector definition service;

compiling the request into a vector using at least a model definition language using the vector definition service;

retrieving the vector from the vector definition service using a rules engine;

evaluating the vector for appropriateness based at least on predefined rules, data associated with the user-submitted request, and processing localities using the rules engine;

parameterizing the vector based at least on an intended purpose of the user-submitted request and predefined constraints included in the user-submitted request using a parametric evaluator;

generating at least a run from the parameterized vector using the parametric evaluator;

retrieving the run from the parametric evaluator using an optimizer; and

determining an optimal plan for executing the user-submitted request based at least on the run, wherein the optimal plan includes executing the user-submitted request in an optimal processing locality of the processing localities, and wherein the optimal processing locality is determined based at least on the status of connections from a system to the optimal processing locality and availability of computational resources of the optimal processing locality using the optimizer.

8. The method of claim 7 , further comprising:

initiating migration of the data associated with the user-submitted request from one processing locality to a different processing locality for processing using a data migration service.

9. The method of claim 7 , further comprising:

automatically acquiring additional resources for the optimal processing locality to execute the user-submitted request from a service provider external to the optimal processing locality using a resource modulation service.

10. The method of claim 7 , wherein the optimizer uses a simulation service external to the optimizer to operate an instanced copy of a compute environment to identify bottlenecks in the system.

11. The method of claim 7 , wherein the rules engine is further configured to conduct a feasibility analysis on the vector.

12. The method of claim 11 , wherein the rules engine denies the vector and submits a request to the vector definition service platform for additional information.

Assignments (9)
CHANGE OF ADDRESS Recorded Oct 1, 2024
From: QOMPLX LLC
To: QOMPLX LLC
Reel/Frame 069083/0279 →
CHANGE OF NAME Recorded Sep 27, 2023
From: QPX LLC
To: QOMPLX LLC
Reel/Frame 065036/0449 →
CORRECTIVE ASSIGNMENT TO CORRECT THE RECEIVING PARTY PREVIOUSLY RECORDED AT REEL: 064674 FRAME: 0408. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNMENT. Recorded Sep 20, 2023
From: QOMPLX, INC.
To: QPX LLC
Reel/Frame 064966/0863 →
PATENT ASSIGNMENT AGREEMENT TO ASSET PURCHASE AGREEMENT Recorded Aug 23, 2023
From: QOMPLX, INC.
To: QPX, LLC.
Reel/Frame 064674/0407 →
CHANGE OF ADDRESS Recorded Dec 29, 2022
From: QOMPLX, INC.
To: QOMPLX, INC.
Reel/Frame 062251/0629 →
CHANGE OF ADDRESS Recorded Oct 27, 2020
From: QOMPLX, INC.
To: QOMPLX, INC.
Reel/Frame 054298/0094 →
CHANGE OF NAME Recorded Aug 7, 2019
From: FRACTAL INDUSTRIES, INC.
To: QOMPLX, INC.
Reel/Frame 049996/0698 →
CHANGE OF ADDRESS Recorded Aug 7, 2019
From: FRACTAL INDUSTRIES, INC.
To: QOMPLX, INC.
Reel/Frame 049996/0683 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 5, 2018
From: SELLERS, ANDREW; CRABTREE, JASON
To: FRACTAL INDUSTRIES, INC.
Reel/Frame 044836/0026 →