US 12,361,909 B2
Virtualizing graphics processing in a provider network
Nicholas Patrick Wilt, Mercer Island, WA (US); Ashutosh Tambe, Bellevue, WA (US); Nathan Lee Burns, Mountain View, CA (US); and Nafea Bshara, San Jose, CA (US)
Assigned to Amazon Technologies, Inc., Seattle, WA (US)
Filed by Amazon Technologies, Inc., Seattle, WA (US)
Filed on Oct. 8, 2021, as Appl. No. 17/497,785.
Application 17/497,785 is a continuation of application No. 14/822,511, filed on Aug. 10, 2015, granted, now 11,145,271.
Prior Publication US 2022/0028351 A1, Jan. 27, 2022
This patent is subject to a terminal disclaimer.
Int. Cl. G09G 5/00 (2006.01); G06F 9/50 (2006.01); G06T 1/20 (2006.01); G06T 1/60 (2006.01)
CPC G09G 5/003 (2013.01) [G06F 9/5044 (2013.01); G06F 9/5072 (2013.01); G06F 9/5077 (2013.01); G06T 1/20 (2013.01); G06T 1/60 (2013.01); G09G 2370/022 (2013.01)] 20 Claims
OG exemplary drawing
 
1. A system, comprising:
a plurality of virtual compute instances, implemented using respective central processing unit (CPU) resources and memory resources of a plurality of physical compute instances of a provider network, wherein the plurality of virtual compute instances exceeds the plurality of physical compute instances in number;
a host comprising one or more physical graphics processing units (GPUs) that implement a plurality of virtual GPUs that are accessible to the virtual compute instances over the provider network, the one or more physical GPUs distinct from the plurality of physical compute instances that implements the virtual compute instances, wherein the plurality of virtual GPUs exceeds the one or more physical GPUs in number; and
one or more computing devices configured to implement a multi-tenant elastic graphics service configured to:
receive, from a plurality of different clients of the multi-tenant elastic graphics service, respective provisioning requests individually comprising requirements to provision respective virtual compute instances with respective attached virtual GPUs, wherein responsive to receiving an individual request of the respective provisioning requests, the multi-tenant elastic graphics service is configured to:
communicate via the provider network to provision a virtual compute instance of the plurality of virtual compute instances, including to reserve computational and memory resources of a physical compute instance of the plurality of physical compute instances for the virtual compute instance and to launch an operating system for the virtual compute instance;
communicate via the provider network to provision a virtual GPU of the plurality of virtual GPUs using the one or more physical GPUs distinct from the physical compute instance for the virtual compute instance; and
attach the provisioned virtual GPU to the provisioned virtual compute instance to provide for the physical compute instance to communicate with the one or more physical GPUs over the provider network, wherein subsequent to attaching the provisioned virtual GPU to the provisioned virtual compute instance, the provisioned virtual compute instance is configured to:
begin executing an application on behalf of the respective client using the respective virtual GPU attached during the provisioning;
wherein the virtual compute instance and the virtual GPU are both provisioned and attached in response to the individual request.