LibProf: A Python Profiler for Improving Cold Start Performance in Serverless Applications
Serverless computing abstracts away server management, enabling automatic scaling and efficient resource utilization. However, cold-start latency remains a significant challenge, affecting end-to-end performance. Our preliminary study reveals that inefficient library initialization and usage are maj...
Gespeichert in:
Hauptverfasser: | , , , , |
---|---|
Format: | Artikel |
Sprache: | eng |
Schlagworte: | |
Online-Zugang: | Volltext bestellen |
Tags: |
Tag hinzufügen
Keine Tags, Fügen Sie den ersten Tag hinzu!
|
Zusammenfassung: | Serverless computing abstracts away server management, enabling automatic
scaling and efficient resource utilization. However, cold-start latency remains
a significant challenge, affecting end-to-end performance. Our preliminary
study reveals that inefficient library initialization and usage are major
contributors to this latency in Python-based serverless applications. We
introduce LibProf, a Python profiler that uses dynamic program analysis to
identify inefficient library initializations. LibProf collects library usage
data through statistical sampling and call-path profiling, then generates a
report to guide developers in addressing four types of inefficiency patterns.
Systematic evaluations on 15 serverless applications demonstrate that LibProf
effectively identifies inefficiencies. LibProf guided optimization results up
to 2.26x speedup in cold-start execution time and 1.51x reduction in memory
usage. |
---|---|
DOI: | 10.48550/arxiv.2406.11734 |