LibProf: A Python Profiler for Improving Cold Start Performance in Serverless Applications
Syed Salauddin Mohammad Tariq, Ali Al Zein, Soumya Sripad Vaidya,, Arati Khanolkar, Probir Roy

TL;DR
LibProf is a Python profiling tool that identifies inefficient library initializations causing cold-start latency in serverless applications, enabling targeted optimizations that significantly improve startup time and memory usage.
Contribution
The paper introduces LibProf, a novel Python profiler that uses dynamic analysis and sampling to detect inefficiencies in library initialization for serverless apps.
Findings
LibProf effectively identifies inefficiencies in library usage.
Optimizations guided by LibProf achieve up to 2.26x faster cold starts.
Memory usage is reduced by up to 1.51x.
Abstract
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…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsIoT and Edge/Fog Computing · Distributed and Parallel Computing Systems · Software System Performance and Reliability
