System level acceleration server
First Claim
Patent Images
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.
4 Assignments
0 Petitions
Accused Products
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.
-
Citations
16 Claims
-
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. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8)
-
-
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. - View Dependent Claims (10, 11, 12, 13, 14, 15, 16)
-
Specification