TY - GEN
T1 - FuncMem
T2 - 39th Annual ACM Symposium on Applied Computing, SAC 2024
AU - Pandey, Manish
AU - Kwon, Young Woo
N1 - Publisher Copyright:
© 2024 Copyright is held by the owner/author(s). Publication rights licensed to ACM.
PY - 2024/4/8
Y1 - 2024/4/8
N2 - Because serverless computing can scale automatically and affordably, it has become a popular choice for cloud-based services. However, despite these advantages, a serverless architecture is not suitable for applications requiring instantaneous executions because of cold starts. Existing techniques primarily focus on extending keep-alive time or pre-warming containers, which alleviate performance issues for specific serverless functions but introduce additional overhead to the architecture. To address these issues, we introduce FuncMem, a methodology designed to manage memory resources by prioritizing non-blocking asynchronous requests in a serverless architecture. First, FuncMem predicts and reduces excessive memory requirements for serverless functions. Second, it dynamically reschedules functions within an invoker, creating an adaptive task queue at runtime to mitigate cold starts and reduce wait times. We implemented our approach in OpenWhisk, a popular open-source framework, and evaluated it with multiple FaaS applications. Through comprehensive evaluations, we show that FuncMem achieves significant performance improvements, including a 63.48% reduction in cold start latency, a 46.98% decrease in memory allocation, a 54.93% reduction in cumulative execution time, a decrease in average waiting time from 5.22 seconds to 2 seconds, an increase in average throughput from 0.76 to 1.63 functions per second, and a decrease in average initialization time from 0.16 seconds to 0.7 seconds. Our results show the effectiveness of FuncMem in terms of latency and resource usage.
AB - Because serverless computing can scale automatically and affordably, it has become a popular choice for cloud-based services. However, despite these advantages, a serverless architecture is not suitable for applications requiring instantaneous executions because of cold starts. Existing techniques primarily focus on extending keep-alive time or pre-warming containers, which alleviate performance issues for specific serverless functions but introduce additional overhead to the architecture. To address these issues, we introduce FuncMem, a methodology designed to manage memory resources by prioritizing non-blocking asynchronous requests in a serverless architecture. First, FuncMem predicts and reduces excessive memory requirements for serverless functions. Second, it dynamically reschedules functions within an invoker, creating an adaptive task queue at runtime to mitigate cold starts and reduce wait times. We implemented our approach in OpenWhisk, a popular open-source framework, and evaluated it with multiple FaaS applications. Through comprehensive evaluations, we show that FuncMem achieves significant performance improvements, including a 63.48% reduction in cold start latency, a 46.98% decrease in memory allocation, a 54.93% reduction in cumulative execution time, a decrease in average waiting time from 5.22 seconds to 2 seconds, an increase in average throughput from 0.76 to 1.63 functions per second, and a decrease in average initialization time from 0.16 seconds to 0.7 seconds. Our results show the effectiveness of FuncMem in terms of latency and resource usage.
KW - and cold starts
KW - job scheduling
KW - memory estimation
KW - non-blocking requests
KW - serverless computing
UR - http://www.scopus.com/inward/record.url?scp=85197702785&partnerID=8YFLogxK
U2 - 10.1145/3605098.3636033
DO - 10.1145/3605098.3636033
M3 - Conference contribution
AN - SCOPUS:85197702785
T3 - Proceedings of the ACM Symposium on Applied Computing
SP - 131
EP - 138
BT - 39th Annual ACM Symposium on Applied Computing, SAC 2024
PB - Association for Computing Machinery
Y2 - 8 April 2024 through 12 April 2024
ER -