Serverless computing offers a pay-per-use model with high elasticity and automatic scaling for a wide range of applications. Since cloud providers abstract most of the underlying infrastructure, these services work similarly to black-boxes. As a result, users can influence the resources allocated to their functions, but might not be aware that they have to parallelize them to profit from the additionally allocated virtual CPUs (vCPUs). In this paper, we analyze the impact of parallelization within a single function and container instance for AWS Lambda, Google Cloud Functions (GCF), and Google Cloud Run (GCR). We focus on compute-intensive workloads since they benefit greatly from parallelization. Furthermore, we investigate the correlation between the number of allocated CPU cores and vCPUs in serverless environments. Our results show that the number of available cores to a function/container instance does not always equal the number of allocated vCPUs. By parallelizing serverless workloads, we observed cost savings up to 81% for AWS Lambda, 49% for GCF, and 69.8% for GCR.
翻译:无服务器计算为多种应用提供了一种高弹性和自动缩放的付费使用模式。由于云端提供者抽象地抽取了大部分基本基础设施,这些服务与黑箱类似。因此,用户可以影响分配给他们职能的资源,但可能不知道他们必须同时从额外分配的虚拟CPU(VCPU)中获利。在本文中,我们分析了AWS Lambda、Google Cloud功能(GCF)和Google Cloud Rrun (GCR)的单一功能和容器实例中平行化的影响。我们注重计算密集工作量,因为它们从平行化中获益很大。此外,我们调查了在无服务器环境中分配的CPU核心和 vCPU数量之间的关系。我们的结果表明,功能/容器中可用的核心数量并不总是等于分配的VCPU的数量。通过平行化服务器工作量,我们观察到AWS Lambda、49 % 全球合作框架和69.8%的全球化学品统一分类的节省成本高达81%。