arrow
Return

FaaSBatch: Boosting Serverless Efficiency With In-Container Parallelism and Resource Multiplexing

delete2024-04-01
delete1
PRE
AI
Z
Zhaorui Wu
Y
Yuhui Deng *
周毅 cover
周毅 (Yi Zhou)
李婕 cover
李婕 (Jie Li)
S
Shujie Pang
X
Xiao Qin
DOI:10.1109/TC.2024.3352834delete
deleteOriginal
deleteOriginal request for help
deleteShare
deleteSave
Abstract

Abstract

En 中文
With high scalability and flexibility, serverless computing is becoming the most promising computing model. Existing serverless computing platforms initiate a container for each function invocation, which leads to a huge waste of computing resources. Our examinations reveal that (i) executing invocations concurrently within a single container can provide comparable performance to that provided by multiple containers (i.e., traditional approaches); (ii) redundant resources generated within a container result in memory resource waste, which prolongs the execution time of function invocations. Motivated by these insightful observations, we propose FaaSBatch - a serverless framework that reduces invocation latency and saves scarce computing resources. In particular, FaaSBatch first classifies concurrent function requests into different function groups according to the invocation information. Next, FaaSBatch batches the invocations of each group, aiming to minimize resource utilization. Then, FaaSBatch utilizes an inline parallel policy to map each group of batched invocations into a single container. Finally, FaaSBatch expands and executes invocations of containers in parallel. To further reduce invocation latency and resource utilization, within each container, FaaSBatch reuses redundant resources created during function execution. We conduct extensive experiments based on Azure traces to evaluate the effectiveness and performance of FaaSBatch. We compare FaaSBatch with three state-of-the-art schedulers Vanilla, SFS, and Kraken. Our experimental results show that FaaSBatch effectively and remarkably slashes invocation latency and resource overhead. For instance, when executing I/O functions, FaaSBatch cuts back the invocation latency of Vanilla, SFS, and Kraken by up to 72.58%, 74.10%, and 72.62%, respectively; FaaSBatch also slashes the resource overhead of Vanilla, SFS, and Kraken by 70.2% to 98.40%, 67.74% to 98.12%, and 43.01% to 78.90%, respectively.
Keywords:
Containers
Concurrent computing
Serverless computing
Multiplexing
Monopoly
Costs
Computer science
Cloud computing
serverless computing
batching request
resource management

Journal

IEEE Transactions on Computers cover
IEEE Transactions on Computers
IF:
3.8
Papers:
5.3K
Citations:
9.8K

Organization

U
university system of georgia
Scholars:
7.3W
Papers: 6.5W
Citations: 101
Columbus State University cover
Columbus State University
Scholars:
151
Papers: 120
Citations: 196
J
jinan university
Scholars:
4.3W
Papers: 2.6W
Citations: 38
researcher View more organizations