IP Library Granted Patent US 9,842,001
Granted Patent B2
US 9,842,001 · App. 13/534,880 · Granted Dec 12, 2017

System level acceleration server

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 9,842,001
App. No.
13/534,880
Granted
Dec 12, 2017
Kind
B2
Abstract

A method for system level acceleration includes managing, by a system level acceleration server, an accelerator program running on an accelerator machine on behalf of a client, receiving, by the system level acceleration server, a communication from the client, interacting, by the system level acceleration server, with the accelerator program on behalf of the client according to the communication from the client, and generating, by the accelerator machine, a deliverable for provision to the client based upon an output of the accelerator program.

Claims (30)

1. A method for executing a computer application, comprising:

running a computer application from a client machine, the computer application including one or more parallel computations that are too large to be computed by the client machine;

sending the one or more parallel computations to a system level acceleration server;

assigning, at the system level acceleration server, each of the one or more parallel computations to one of a plurality of accelerators;

computing each of the one or more parallel computations in its assigned accelerator;

returning computation results from the plurality of accelerators back to the system level acceleration server; and

passing each of the computation results from the system level acceleration server back to the computer application running on the client machine,

wherein commands and simple responses are sent between the plurality of accelerators and the computer application running on the client machine via the system level acceleration server, while bulk data is transferred directly between the plurality of accelerators and the computer application running on the client machine, bypassing the system level acceleration server by using a file system that is shared between the plurality of accelerators and the computer application running on the client machine.

2. The method of claim 1 , wherein the system level acceleration server assigns parallel computations to the plurality of accelerators from multiple client machines simultaneously.

3. The method of claim 1 , wherein the system level acceleration server assigned each of the one or more parallel computations to one of a plurality of accelerators according to the computational needs of the parallel computations and the capabilities and availability of the accelerators.

4. The method of claim 1 , wherein the plurality of accelerators includes distinct accelerators with varying capabilities.

5. The method of claim 4 , wherein the plurality of accelerators includes at least one accelerator for computing MATLAB commands.

6. The method of claim 4 , wherein the plurality of accelerators includes at least one accelerator for computing Octave commands.

7. The method of claim 4 , wherein the plurality of accelerators includes at least one accelerator for computing simulations.

8. The method of claim 4 , wherein the plurality of accelerators includes at least one accelerator for processing medical images.

9. A computer program product for executing a computer application, the computer program product comprising a non-transitory computer readable storage medium having computer readable program code embodied therewith, the computer readable program code comprising:

computer readable program code configured to run a computer application from a client machine, the computer application including one or more parallel computations that are too large to be computed by the client machine;

computer readable program code configured to send the one or more parallel computations to a system level acceleration server;

computer readable program code configured to assign, at the system level acceleration server, each of the one or more parallel computations to one of a plurality of accelerators;

computer readable program code configured to compute each of the one or more parallel computations in its assigned accelerator;

computer readable program code configured to compute return computation results from the plurality of accelerators back to the system level acceleration server; and

computer readable program code configured to pass each of the computation results from the system level acceleration server back to the computer application running on the client machine,

wherein commands and simple responses are sent between the plurality of accelerators and the client machine via the system level acceleration server, while bulk data is transferred directly between the plurality of accelerators and the client machine, bypassing the system level acceleration server by using a file system that is shared between the plurality of accelerators and the client machine.

10. The computer program product of claim 9 , wherein the system level acceleration server assigns parallel computations to the plurality of accelerators from multiple client machines simultaneously.

11. The computer program product of claim 9 , wherein the system level acceleration server assigned each of the one or more parallel computations to one of a plurality of accelerators according to the computational needs of the parallel computations and the capabilities and availability of the accelerators.

12. The computer program product of claim 9 , wherein the plurality of accelerators includes distinct accelerators with varying capabilities.

13. The computer program product of claim 12 , wherein the plurality of accelerators includes at least one accelerator for computing MATLAB commands.

14. The computer program product of claim 12 , wherein the plurality of accelerators includes at least one accelerator for computing Octave commands.

15. The computer program product of claim 12 , wherein the plurality of accelerators includes at least one accelerator for computing simulations.

16. The computer program product of claim 12 , wherein the plurality of accelerators includes at least one accelerator for processing medical images.

Assignments (4)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 3, 2024
From: BEIJING PIANRUOJINGHONG TECHNOLOGY CO., LTD.
To: BEIJING ZITIAO NETWORK TECHNOLOGY CO., LTD.
Reel/Frame 066565/0952 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 4, 2023
From: AWEMANE LTD.
To: BEIJING PIANRUOJINGHONG TECHNOLOGY CO., LTD.
Reel/Frame 064501/0498 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 2, 2021
From: INTERNATIONAL BUSINESS MACHINES CORPORATION
To: AWEMANE LTD.
Reel/Frame 057991/0960 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 27, 2012
From: DRAHZAL, MATTHEW R.; JORDAN, KIRK E.; SEXTON, JAMES C.; SIMPSON, RICHARD O.
To: INTERNATIONAL BUSINESS MACHINES CORPORATION
Reel/Frame 028454/0927 →