论文标题
利用不规则算法中无服务器的固有弹性
Exploiting Inherent Elasticity of Serverless in Irregular Algorithms
论文作者
论文摘要
无服务器计算,尤其是函数即服务(FAAS)执行模型,最近已证明对运行大规模计算有效。但是,对具有不平衡和不规则工作量的高度并联应用程序的关注很少。通常,由于不可能提前预期其计算资源,这些工作负载已被排除在云之外,经常导致严重的资源过度和欠缺情况。但是,我们在本文中的主要见解是,无服务器计算技术的弹性和易于管理可以是首次在云中有效运行这些有问题的工作负载的关键推动力。更具体地说,我们证明,使用一个简单的无服务器执行器池抽象,就可以实现比在大型EC2虚拟机上建造的静态尺寸的火花簇实现更好的成本效果权衡。为了支持这一结论,我们评估了三种不规则算法:不平衡的树搜索(UTS),使用Mariani-Silver算法的Mandelbrot设置和随机图上的中心性(BC)。例如,我们的无服务器实现UTS能够以相同的成本胜过高达55%的火花。我们还表明,使用相同数量的虚拟CPU,无服务器环境可以在BC算法中胜过10%的大EC2。这提供了第一个具体的证据,即可以使用纯粹的无状态功能有效地执行高度平行,不规则的工作负载,而用户几乎零负担,即无需用户了解非明显的系统级参数和优化。此外,我们表明,UTS可以从FAA付款模式中受益,这使得首次值得启用某些应用程序级优化,这些优化可以带来显着改善(例如41%),而成本可忽略不计。
Serverless computing, in particular the Function-as-a-Service (FaaS) execution model, has recently shown to be effective for running large-scale computations. However, little attention has been paid to highly-parallel applications with unbalanced and irregular workloads. Typically, these workloads have been kept out of the cloud due to the impossibility of anticipating their computing resources ahead of time, frequently leading to severe resource over- and underprovisioning situations. Our main insight in this article is, however, that the elasticity and ease of management of serverless computing technology can be a key enabler for effectively running these problematic workloads for the first time in the cloud. More concretely, we demonstrate that with a simple serverless executor pool abstraction one can achieve a better cost-performance trade-off than a Spark cluster of static size built upon large EC2 virtual machines. To support this conclusion, we evaluate three irregular algorithms: Unbalanced Tree Search (UTS), Mandelbrot Set using the Mariani-Silver algorithm and Betweenness Centrality (BC) on a random graph. For instance, our serverless implementation of UTS is able to outperform Spark by up to 55% with the same cost. We also show that a serverless environment can outperform a large EC2 in the BC algorithm by a 10% using the same amount of virtual CPUs. This provides the first concrete evidence that highly-parallel, irregular workloads can be efficiently executed using purely stateless functions with almost zero burden on users i.e., no need for users to understand non-obvious system-level parameters and optimizations. Furthermore, we show that UTS can benefit from the FaaS pay-as-you-go billing model, which makes it worth for the first time to enable certain application-level optimizations that can lead to significant improvements (e.g. of 41%) with negligible increase in cost.