Building GPU TEEs using CPU Secure Enclaves with GEVisor

Building GPU TEEs using CPU Secure Enclaves with GEVisor
复制标题

DOI:
10.1145/3620678.3624659
复制
发表时间:
2023-10
期刊:
Proceedings of the 2023 ACM Symposium on Cloud Computing
影响因子:
--
通讯作者:
Xiaolong Wu;Dave Jing Tian;Chung Hwan Kim
Xiaolong Wu;Dave Jing Tian;Chung Hwan Kim
中科院分区:
其他
文献类型:
--
作者:
Xiaolong Wu;Dave Jing Tian;Chung Hwan Kim

文献摘要

相似文献

可信执行环境 (TEE) 已被提出来保护在敏感数据上运行的机器学习应用程序的 GPU 计算。然而,现有的GPU TEE解决方案要么需要对CPU和/或GPU硬件进行修改才能实现GPU的TEE,这阻止了当前系统采用它们,要么依赖于不可信的系统软件(例如GPU设备驱动程序)。在本文中,我们建议使用 CPU 安全区域(例如 Intel SGX)来构建 GPU TEE,而无需修改现有硬件。为了解决这些 enclave 的基本限制(例如不支持 I/O 操作),我们设计和开发了 GEVisor,这是一款经过正式验证的安全参考监控软件,可在 enclave 和 GPU 之间建立可信的 I/O 路径,而无需信任 GPU 设备驱动程序。 GEVisor 在虚拟机扩展 (VMX) 根模式下运行,监视主机系统软件以防止未经授权访问 enclave 外部的 GPU 代码和数据,并在 GPU 计算期间将 enclave GPU 上下文与其他上下文隔离。我们在配备 Intel SGX CPU 和 NVIDIA Pascal GPU 的商用机器上实现并评估 GEVisor。我们的实验结果表明,与原生 GPU 计算相比,我们的方法在深度学习方面保持了 13.1% 的平均开销,在 GPU 基准方面保持了 18% 的平均开销,同时为现有 CPU 和 GPU 硬件提供了 GPU TEE。
Trusted execution environments (TEEs) have been proposed to protect GPU computation for machine learning applications operating on sensitive data. However, existing GPU TEE solutions either require CPU and/or GPU hardware modification to realize TEEs for GPUs, which prevents current systems from adopting them, or rely on untrusted system software such as GPU device drivers. In this paper, we propose using CPU secure enclaves, e.g., Intel SGX, to build GPU TEEs without modifications to existing hardware. To tackle the fundamental limitations of these enclaves, such as no support for I/O operations, we design and develop GEVisor, a formally verified security reference monitor software to enable a trusted I/O path between enclaves and GPU without trusting the GPU device driver. GEVisor operates in the Virtual Machine Extension (VMX) root mode, monitors the host system software to prevent unauthorized access to the GPU code and data outside the enclave, and isolates the enclave GPU context from other contexts during GPU computation. We implement and evaluate GEVisor on a commodity machine with an Intel SGX CPU and an NVIDIA Pascal GPU. Our experimental results show that our approach maintains an average overhead of 13.1% for deep learning and 18% for GPU benchmarks compared to native GPU computation while providing GPU TEEs for existing CPU and GPU hardware.