Computer Science > Machine Learning
[Submitted on 26 Oct 2022 (v1), revised 28 Oct 2022 (this version, v2), latest version 2 Jan 2024 (v3)]
Title:A case for disaggregation of ML data processing
View PDFAbstract:Machine Learning (ML) computation requires feeding input data for the models to ingest. Traditionally, input data processing happens on the same host as the ML computation. The input data processing can however become a bottleneck of the ML computation if there are insufficient resources to process data quickly enough. This slows down the ML computation and wastes valuable and scarce ML hardware (e.g. GPUs and TPUs) used by the ML computation.
In this paper, we present this http URL service, a disaggregated input data processing service built on top of this http URL. Our work goes beyond describing the design and implementation of a new system which disaggregates preprocessing from ML computation and presents: (1) empirical evidence based on production workloads for the need of disaggregation, as well as quantitative evaluation of the impact disaggregation has on the performance and cost of production workloads, (2) benefits of disaggregation beyond horizontal scaling, (3) analysis of this http URL service's adoption at Google, the lessons learned during building and deploying the system and potential future lines of research opened up by our work.
We demonstrate that horizontally scaling data processing using this http URL service helps remove input bottlenecks, achieving speedups of up to 110x and job cost reductions of up to 89x. We further show that this http URL service can support computation reuse through data sharing across ML jobs with identical data processing pipelines (e.g. hyperparameter tuning jobs), incurring no performance penalty and reducing overall resource cost. Finally, we show that this http URL service advanced features can benefit performance of non-input bound jobs; in particular, coordinated data reads through this http URL service can yield up to 2x speedups and job cost savings for NLP jobs.
Submission history
From: Dan-Ovidiu Graur [view email][v1] Wed, 26 Oct 2022 16:15:45 UTC (499 KB)
[v2] Fri, 28 Oct 2022 10:08:32 UTC (526 KB)
[v3] Tue, 2 Jan 2024 15:54:24 UTC (427 KB)
References & Citations
Bibliographic and Citation Tools
Bibliographic Explorer (What is the Explorer?)
Connected Papers (What is Connected Papers?)
Litmaps (What is Litmaps?)
scite Smart Citations (What are Smart Citations?)
Code, Data and Media Associated with this Article
alphaXiv (What is alphaXiv?)
CatalyzeX Code Finder for Papers (What is CatalyzeX?)
DagsHub (What is DagsHub?)
Gotit.pub (What is GotitPub?)
Hugging Face (What is Huggingface?)
Papers with Code (What is Papers with Code?)
ScienceCast (What is ScienceCast?)
Demos
Recommenders and Search Tools
Influence Flower (What are Influence Flowers?)
CORE Recommender (What is CORE?)
IArxiv Recommender
(What is IArxiv?)
arXivLabs: experimental projects with community collaborators
arXivLabs is a framework that allows collaborators to develop and share new arXiv features directly on our website.
Both individuals and organizations that work with arXivLabs have embraced and accepted our values of openness, community, excellence, and user data privacy. arXiv is committed to these values and only works with partners that adhere to them.
Have an idea for a project that will add value for arXiv's community? Learn more about arXivLabs.