27619

Kernel-as-a-Service: A Serverless Interface to GPUs

Nathan Pemberton, Anton Zabreyko, Zhoujie Ding, Randy Katz, Joseph Gonzalez
UC Berkeley
arXiv:2212.08146 [cs.DC], (15 Dec 2022)

@misc{https://doi.org/10.48550/arxiv.2212.08146,

   doi={10.48550/ARXIV.2212.08146},

   url={https://arxiv.org/abs/2212.08146},

   author={Pemberton, Nathan and Zabreyko, Anton and Ding, Zhoujie and Katz, Randy and Gonzalez, Joseph},

   keywords={Distributed, Parallel, and Cluster Computing (cs.DC), FOS: Computer and information sciences, FOS: Computer and information sciences},

   title={Kernel-as-a-Service: A Serverless Interface to GPUs},

   publisher={arXiv},

   year={2022},

   copyright={Creative Commons Attribution Share Alike 4.0 International}

}

Serverless computing has made it easier than ever to deploy applications over scalable cloud resources, all the while driving higher utilization for cloud providers. While this technique has worked well for easily divisible resources like CPU and local DRAM, it has struggled to incorporate more expensive and monolithic resources like GPUs or other application accelerators. We cannot simply slap a GPU on a FaaS platform and expect to keep all the benefits serverless promises. We need a more tailored approach if we want to best utilize these critical resources. In this paper we present Kernel-as-a-Service (KaaS), a serverless interface to GPUs. In KaaS, GPUs are first-class citizens that are invoked just like any other serverless function. Rather than mixing host and GPU code as is typically done, KaaS runs graphs of GPU-only code while host code is run on traditional functions. The KaaS system is responsible for managing GPU memory and schedules user kernels across the entire pool of available GPUs rather than relying on static allocations. This approach allows us to more effectively share expensive GPU resources, especially in multitenant environments like the cloud. We add support for KaaS to the Ray distributed computing framework and evaluate it with workloads including a TVM-based deep learning compiler and a BLAS library. Our results show that KaaS is able to drive up to 50x higher throughput and 16x lower latency when GPU resources are contended.
No votes yet.
Please wait...

* * *

* * *

HGPU group © 2010-2024 hgpu.org

All rights belong to the respective authors

Contact us: