Dynamic load balancing of operations for real-time deep learning analytics
AssigneeNVIDIA Corporation
InventorsShaunak Gupte, Amit Kale, Bhushan Rupde, Kaustubh Purandare
Life of this patent
Estimating the term…
Abstract
Apparatuses, systems, and techniques to balance processing load between a plurality of hardware accelerators. In at least one embodiment, operations performed on batches of frames of a video (e.g., as part of a video analytics pipeline) are distributed by a load balancer between a first hardware accelerator and a second hardware accelerator.
Claims34
A system comprising:
- one or more processors;
- and
- memory storing instructions that, as a result of being executed by the one or more processors, cause the system to:
- assign a set of clients to a first hardware accelerator, where a first client of the set of clients provides a batch of frames for processing;
- generate a first determination that a first metric associated with processing the batch of frames using the first hardware accelerator exceeds a threshold;
- and
- assign a subset of clients of the set of clients to a second hardware accelerator in response to the first determination.
A method comprising:
- assigning one or more application clients to a video image compositor (VIC) engine;
- comparing an average time used by the VIC engine to perform processing for the one or more application clients to a frame processing threshold;
- load balancing, to a processing unit, a processing load of an application client of the one or more application clients based at least in part on the average time used by the VIC engine;
- determining an average time used by the processing unit to perform processing for the application client is lower than at least one other application client;
- and
- moving the processing load of the application client from the processing unit back to the VIC.
A non-transitory computer readable storage medium storing thereon executable instructions that, as a result of being executed by one or more processors of a computer system, cause the computer system to:
- obtain performance data associated with a video image compositor (VIC), the performance data related to an application client assigned to the VIC;
- determine, based at least in part on the performance data, that one or more conditions are satisfied;
- and
- as a result of the one or more conditions being satisfied, assign the application client to a second processor to cause the second processor to relieve load from the VIC.
Dependencies are inferred from the claim text.