System and method for distributed graphics processing unit (GPU) computation
First Claim
1. A system comprising:
- a data processor; and
a distributed task management module, executable by the data processor, the distributed task management module being configured to;
receive a user task service request from a user node;
query resource availability from a plurality of slave nodes having a plurality of graphics processing units (GPUs) thereon, the plurality of slave nodes configured with multiple GPUs mounted on distributed processing containers;
generate a list of uniform resource locators (URLs), each URL on the list corresponding to a path to an available distributed processing container on the plurality of slave nodes;
issue the list of URLs to a load balancing node;
receive from the load balancing node an overall unique URL corresponding to the list of URLs;
use the overall unique URL to assign the user task service request to a plurality of available GPUs based on the resource availability and resource requirements of the user task service request, the assigning including using available distributed processing containers on the plurality of slave nodes; and
retain the list of URLs corresponding to the distributed processing containers assigned to the user task service request.
2 Assignments
0 Petitions
Accused Products
Abstract
A system and method for distributed graphics processing unit (GPU) computation are disclosed. A particular embodiment includes: receiving a user task service request from a user node; querying resource availability from a plurality of slave nodes having a plurality of graphics processing units (GPUs) thereon; assigning the user task service request to a plurality of available GPUs based on the resource availability and resource requirements of the user task service request, the assigning including starting a service on a GPU using a distributed processing container and creating a corresponding uniform resource locator (URL); and retaining a list of URLs corresponding to the resources assigned to the user task service request.
-
Citations
14 Claims
-
1. A system comprising:
-
a data processor; and a distributed task management module, executable by the data processor, the distributed task management module being configured to; receive a user task service request from a user node; query resource availability from a plurality of slave nodes having a plurality of graphics processing units (GPUs) thereon, the plurality of slave nodes configured with multiple GPUs mounted on distributed processing containers; generate a list of uniform resource locators (URLs), each URL on the list corresponding to a path to an available distributed processing container on the plurality of slave nodes; issue the list of URLs to a load balancing node; receive from the load balancing node an overall unique URL corresponding to the list of URLs; use the overall unique URL to assign the user task service request to a plurality of available GPUs based on the resource availability and resource requirements of the user task service request, the assigning including using available distributed processing containers on the plurality of slave nodes; and retain the list of URLs corresponding to the distributed processing containers assigned to the user task service request. - View Dependent Claims (2, 3, 4, 5)
-
-
6. A method comprising:
-
receiving a user task service request from a user node; querying resource availability from a plurality of slave nodes having a plurality of graphics processing units (GPUs) thereon, the plurality of slave nodes configured with multiple GPUs mounted on distributed processing containers; generating a list of uniform resource locators (URLs), each URL on the list corresponding to a path to an available distributed processing container on the plurality of slave nodes; issuing the list of URLs to a load balancing node; receiving from the load balancing node an overall unique URL corresponding to the list of URLs; using the overall unique URL to assign the user task service request to a plurality of available GPUs based on the resource availability and resource requirements of the user task service request, the assigning including using available distributed processing containers on the plurality of slave nodes; and retaining the list of URLs corresponding to the distributed processing containers assigned to the user task service request. - View Dependent Claims (7, 8, 9, 10)
-
-
11. A non-transitory machine-useable storage medium embodying instructions which, when executed by a machine, cause the machine to:
-
receive a user task service request from a user node; query resource availability from a plurality of slave nodes having a plurality of graphics processing units (GPUs) thereon, the plurality of slave nodes configured with multiple GPUs mounted on distributed processing containers; generate a list of uniform resource locators (URLs), each URL on the list corresponding to a path to an available distributed processing container on the plurality of slave nodes; issue the list of URLs to a load balancing node; receive from the load balancing node an overall unique URL corresponding to the list of URLs; use the overall unique URL to assign the user task service request to a plurality of available GPUs based on the resource availability and resource requirements of the user task service request, the assigning including using available distributed processing containers on the plurality of slave nodes; and retain the list of URLs corresponding to the distributed processing containers assigned to the user task service request. - View Dependent Claims (12, 13, 14)
-
Specification