Sponge: Inference Serving with Dynamic SLOs Using In-Place Vertical Scaling
Kamran Razavi, Saeid Ghafouri, Max Mühlhäuser, Pooyan Jamshidi, Lin Wang
TL;DR
This work tackles end-to-end SLO variability for deep learning inference on mobile/IoT over volatile wireless networks. It introduces Sponge, a system combining in-place vertical scaling, dynamic batching, and request reordering, guided by an Integer Programming formulation that links latency $l(b,c)$, throughput $h(b,c)$, and resources $c$ (cores) and $b$ (batch). A prototype demonstrates substantial improvements, reducing SLO violations (often by >15× vs horizontal autoscalers) and lowering resource use, even under dynamic bandwidth, by leveraging a performance model with $l(b,c)$ and $L(b,c)$ and an EDF queue to guarantee per-request SLOs. The approach highlights practical gains for resource-efficient DL inference in mobile-edge settings and outlines future work to support model pipelines, multiple variants, and joint horizontal scaling.
Abstract
Mobile and IoT applications increasingly adopt deep learning inference to provide intelligence. Inference requests are typically sent to a cloud infrastructure over a wireless network that is highly variable, leading to the challenge of dynamic Service Level Objectives (SLOs) at the request level. This paper presents Sponge, a novel deep learning inference serving system that maximizes resource efficiency while guaranteeing dynamic SLOs. Sponge achieves its goal by applying in-place vertical scaling, dynamic batching, and request reordering. Specifically, we introduce an Integer Programming formulation to capture the resource allocation problem, providing a mathematical model of the relationship between latency, batch size, and resources. We demonstrate the potential of Sponge through a prototype implementation and preliminary experiments and discuss future works.
