论文标题
没有配置的并发:快速RDMA编码设计的遥控叉用于无服务器计算
No Provisioned Concurrency: Fast RDMA-codesigned Remote Fork for Serverless Computing
论文作者
论文摘要
无服务器平台实质上面临着容器启动时间和配置并发(即缓存实例)之间的权衡,这被频繁的远程容器初始化需求进一步夸大了。本文介绍了有丝分裂,这是一种操作系统,可提供快速的遥控叉,它用RDMA利用了OS内核的深度代码。通过利用RDMA的快速远程读取功能和跨无服务器容器的部分状态传输,有丝分裂弥合了本地容器和远程容器初始化之间的性能差距。有丝分裂是第一个在几秒钟内从一台机器上跨多个机器的10,000多个新容器的叉子,同时允许新容器有效地传递叉子式呈叉状状态。我们已经在Linux上实施了有丝分裂,并将其与流行的无服务器平台FN集成在一起。在实际无服务器工作负载中的负载尖峰下,有丝分裂将功能尾部潜伏期降低了89%,并且记忆使用率较低。对于需要状态转移的无服务器工作流程,有丝分裂将其执行时间提高了86%。
Serverless platforms essentially face a tradeoff between container startup time and provisioned concurrency (i.e., cached instances), which is further exaggerated by the frequent need for remote container initialization. This paper presents MITOSIS, an operating system primitive that provides fast remote fork, which exploits a deep codesign of the OS kernel with RDMA. By leveraging the fast remote read capability of RDMA and partial state transfer across serverless containers, MITOSIS bridges the performance gap between local and remote container initialization. MITOSIS is the first to fork over 10,000 new containers from one instance across multiple machines within a second, while allowing the new containers to efficiently transfer the pre-materialized states of the forked one. We have implemented MITOSIS on Linux and integrated it with FN, a popular serverless platform. Under load spikes in real-world serverless workloads, MITOSIS reduces the function tail latency by 89% with orders of magnitude lower memory usage. For serverless workflow that requires state transfer, MITOSIS improves its execution time by 86%.