  As an emerging cloud computing deployment paradigm, serverless computing is
gaining traction due to its efficiency and ability to harness on-demand cloud
resources. However, a significant hurdle remains in the form of the cold start
problem, causing latency when launching new function instances from scratch.
Existing solutions tend to use over-simplistic strategies for function
pre-loading/unloading without full invocation pattern exploitation, rendering
unsatisfactory optimization of the trade-off between cold start latency and
resource waste. To bridge this gap, we propose SPES, the first differentiated
scheduler for runtime cold start mitigation by optimizing serverless function
provision. Our insight is that the common architecture of serverless systems
prompts the concentration of certain invocation patterns, leading to
predictable invocation behaviors. This allows us to categorize functions and
pre-load/unload proper function instances with finer-grained strategies based
on accurate invocation prediction. Experiments demonstrate the success of SPES
in optimizing serverless function provision on both sides: reducing the
75th-percentile cold start rates by 49.77% and the wasted memory time by
56.43%, compared to the state-of-the-art. By mitigating the cold start issue,
SPES is a promising advancement in facilitating cloud services deployed on
serverless architectures.
