| CPC G06F 9/45558 (2013.01) [G06F 9/44594 (2013.01); G06F 2009/45579 (2013.01); G06F 2009/45587 (2013.01)] | 20 Claims |

|
1. A system, comprising:
a control plane server of a virtualized computing service; and
a hypervisor of a virtualization host of the virtualized computing service, wherein the virtualization host comprises a given hardware accelerator of a category of hardware accelerators;
wherein the control plane server is configured to, in response to receiving a programmatic request for a guest virtual machine with access to the given hardware accelerator of the category, transmit a launch request for a guest virtual machine to the virtualization host; and
wherein the hypervisor is configured to verify, prior to a launch of the guest virtual machine at the virtualization host in response to the launch request from the control plane server, that an isolated accelerator management intermediary associated with the given hardware accelerator of the category is running at the virtualization host;
wherein the isolated accelerator management intermediary comprises a user-mode process with permission to access a management interface exposed by the given hardware accelerator of the category, wherein the isolated accelerator management intermediary is configured to communicate with the hypervisor via a secure channel restricted to transmission of messages pertaining to accelerator management, wherein to isolate the isolated accelerator management intermediary from the hypervisor the isolated accelerator management intermediary lacks permission to access at least a portion of memory which is used by the hypervisor;
wherein the hypervisor is configured to:
cause the isolated accelerator management intermediary to perform, using the management interface exposed by the given hardware accelerator of the category, a set of operations to enable access to the given hardware accelerator of the category from the guest virtual machine, wherein the set of operations includes initializing the given hardware accelerator of the category and configuring a guest-accessible interface of the given hardware accelerator of the category; and
launch the guest virtual machine in response to determining via the secure channel that the set of operations has been completed, wherein the guest virtual machine uses the guest-accessible interface of the given hardware accelerator of the category to (a) submit a request for a task to the given hardware accelerator of the category and (b) obtain a result of the task from the given hardware accelerator of the category.
|