rFaaS: Enabling High Performance Serverless with RDMA and Decentralization
The need for high performance is present in many computing platforms, from batch-managed and scientific-oriented supercomputers to general-purpose cloud platforms. At the same time, data centers and clusters still suffer from low utilization of computing resources. Function-as-a-Service, a modern cloud programming paradigm for pay-as-you-go execution of stateless functions, brought the elasticity needed to take advantage of ephemeral resources. However, its performance characteristics cannot
... ch coarse-grained IaaS and cluster allocations. To make serverless computing viable for high-performance and latency-sensitive applications, we present rFaaS, the first RDMA-accelerated FaaS platform. We identify key limitations of modern serverless systems - centralized scheduling and inefficient network transport - and propose an overhaul of FaaS architectures with decentralized allocations and low-latency invocations. We show that our remote functions add only negligible overhead on top of the fastest available networks, and we improve the execution latency by orders of magnitude compared to contemporary FaaS platforms. Furthermore, we demonstrate the performance of rFaaS by evaluating real-world FaaS benchmarks and parallel applications. Overall, our results show that decentralization and remote memory access help serverless applications to achieve high performance while increasing server utilization.