Accelerated serverless computing based on GPU virtualization

Abstract This paper introduces a platform to support serverless computing for scalable event-driven data processing that features a multi-level elasticity approach combined with virtualization of GPUs. The platform supports the execution of applications based on Docker containers in response to file uploads to a data storage in order to perform the data processing in parallel. This is managed by an elastic Kubernetes cluster whose size automatically grows and shrinks depending on the number of files to be processed. To accelerate the processing time of each file, several approaches involving virtualized access to GPUs, either locally or remote, have been evaluated. A use case that involves the inference based on deep learning techniques on transthoracic echocardiography imaging has been carried out to assess the benefits and limitations of the platform. The results indicate that the combination of serverless computing and GPU virtualization introduce an efficient and cost-effective event-driven accelerated computing approach that can be applied for a wide variety of scientific applications.

[1]  Ignacio Blanquer,et al.  Dynamic Management of Virtual Infrastructures , 2015, Journal of Grid Computing.

[2]  Alfonso Pérez,et al.  Serverless computing for container-based architectures , 2018, Future Gener. Comput. Syst..

[3]  Giulio Giunta,et al.  A GPGPU Transparent Virtualization Component for High Performance Computing Clouds , 2010, Euro-Par.

[4]  Theo Lynn,et al.  A Preliminary Review of Enterprise Serverless Cloud Computing (Function-as-a-Service) Platforms , 2017, 2017 IEEE International Conference on Cloud Computing Technology and Science (CloudCom).

[5]  David A. Patterson,et al.  Cloud Programming Simplified: A Berkeley View on Serverless Computing , 2019, ArXiv.

[6]  Vanish Talwar,et al.  GViM: GPU-accelerated virtual machines , 2009, HPCVirt '09.

[7]  Carlos Reaño,et al.  Providing CUDA Acceleration to KVM Virtual Machines in InfiniBand Clusters with rCUDA , 2016, DAIS.

[8]  Josef Spillner,et al.  FaaSter, Better, Cheaper: The Prospect of Serverless Scientific Computing and HPC , 2017, CARLA.

[9]  Manuel Ujaldon,et al.  CUDA Achievements and GPU Challenges Ahead , 2016, AMDO.

[10]  B. Nascimento,et al.  Echocardiographic prevalence of rheumatic heart disease in Brazilian schoolchildren: Data from the PROVAR study. , 2016, International journal of cardiology.

[11]  Lan Vu,et al.  GPU virtualization for high performance general purpose computing on the ESX hypervisor , 2014, SpringSim.

[12]  Ion Stoica,et al.  Occupy the cloud: distributed computing for the 99% , 2017, SoCC.

[13]  Ion Stoica,et al.  Numpywren: Serverless Linear Algebra , 2018, ArXiv.

[14]  Vatche Ishakian,et al.  Serving Deep Learning Models in a Serverless Platform , 2017, 2018 IEEE International Conference on Cloud Engineering (IC2E).

[15]  Vicente Hernández,et al.  An energy management system for cluster infrastructures , 2013, Comput. Electr. Eng..

[16]  Tae Joon Jun,et al.  GPU Enabled Serverless Computing Framework , 2018, 2018 26th Euromicro International Conference on Parallel, Distributed and Network-based Processing (PDP).

[17]  Kenli Li,et al.  vCUDA: GPU-Accelerated High-Performance Computing in Virtual Machines , 2012, IEEE Trans. Computers.

[18]  Randy H. Katz,et al.  Mesos: A Platform for Fine-Grained Resource Sharing in the Data Center , 2011, NSDI.

[19]  Shinpei Kato,et al.  GPUvm: GPU Virtualization at the Hypervisor , 2016, IEEE Transactions on Computers.

[20]  Geoffrey C. Fox,et al.  GPU Passthrough Performance: A Comparison of KVM, Xen, VMWare ESXi, and LXC for CUDA and OpenCL Applications , 2014, 2014 IEEE 7th International Conference on Cloud Computing.

[21]  Federico Silla,et al.  rCUDA: Reducing the number of GPU-based accelerators in high performance clusters , 2010, 2010 International Conference on High Performance Computing & Simulation.

[22]  Alexandru Iosup,et al.  The SPEC cloud group's research vision on FaaS and serverless architectures , 2017, WOSC@Middleware.

[23]  Germán Moltó,et al.  A framework and a performance assessment for serverless MapReduce on AWS Lambda , 2019, Future Gener. Comput. Syst..

[24]  Carlos Reaño,et al.  A Performance Comparison of CUDA Remote GPU Virtualization Frameworks , 2015, 2015 IEEE International Conference on Cluster Computing.

[25]  John B. Shoven,et al.  I , Edinburgh Medical and Surgical Journal.

[26]  C. Rossbach,et al.  Full Virtualization for GPUs Reconsidered , 2017 .

[27]  Kenli Li,et al.  A Virtual Multi-Channel GPU Fair Scheduling Method for Virtual Machines , 2019, IEEE Transactions on Parallel and Distributed Systems.

[28]  Alfonso Pérez,et al.  On-Premises Serverless Computing for Event-Driven Data Processing Applications , 2019, 2019 IEEE 12th International Conference on Cloud Computing (CLOUD).

[29]  Carlos Reaño,et al.  Local and Remote GPUs Perform Similar with EDR 100G InfiniBand , 2015, Middleware Industry.

[30]  Lin Shi,et al.  vCUDA: GPU accelerated high performance computing in virtual machines , 2009, 2009 IEEE International Symposium on Parallel & Distributed Processing.