Graviton: Trusted Execution Environments On GPUs

Authors:
Stavros Volos Microsoft Research
Kapil Vaswani Microsoft Research
Rodrigo Bruno University of Lisbon

Introduction:

the authors propose Graviton, an architecture for supporting trusted execution environments on GPUs. We also propose extensions to the CUDA runtime for securely copying data and executing kernels on the GPU.Our evaluation shows that overheads are low(17-33%)with encryption and decryption of traffic to and from the GPU being the main source of overheads.

Abstract:

We propose Graviton, an architecture for supporting trusted execution environments on GPUs. Graviton enables applications to offload security- and performance-sensitive kernels and data to a GPU, and execute kernels in isolation from other code running on the GPU and all software on the host, including the device driver, the operating system, and the hypervisor. Graviton can be integrated into existing GPUs with relatively low hardware complexity; all changes are restricted to peripheral components, such as the GPU’s command processor, with no changes to existing CPUs, GPU cores, or the GPU’s MMU and memory controller. We also propose extensions to the CUDA runtime for securely copying data and executing kernels on the GPU. We have implemented Graviton on off-the-shelf NVIDIA GPUs, using emulation for new hardware features. Our evaluation shows that overheads are low(17-33%)with encryption and decryption of traffic to and from the GPU being the main source of overheads.

You may want to know: