  Making serverless computing widely applicable requires detailed performance
understanding. Although contemporary benchmarking approaches exist, they report
only coarse results, do not apply distributed tracing, do not consider
asynchronous applications, and provide limited capabilities for (root cause)
analysis. Addressing this gap, we design and implement ServiBench, a serverless
benchmarking suite. ServiBench (i) leverages synchronous and asynchronous
serverless applications representative of production usage, (ii) extrapolates
cloud-provider data to generate realistic workloads, (iii) conducts
comprehensive, end-to-end experiments to capture application-level performance,
(iv) analyzes results using a novel approach based on (distributed) serverless
tracing, and (v) supports comprehensively serverless performance analysis. With
ServiBench, we conduct comprehensive experiments on AWS, covering five common
performance factors: median latency, cold starts, tail latency, scalability,
and dynamic workloads. We find that the median end-to-end latency of serverless
applications is often dominated not by function computation but by external
service calls, orchestration, or trigger-based coordination. We release
collected experimental data under FAIR principles and ServiBench as a tested,
extensible open-source tool.
