Homunculus : Auto-Generating Efficient Data-Plane ML Pipelines for Datacenter Networks
(2023) 28th ACM International Conference on Architectural Support for Programming Languages and Operating Systems, ASPLOS 2023 In International Conference on Architectural Support for Programming Languages and Operating Systems - ASPLOS 3. p.329-342- Abstract
Support for Machine Learning (ML) applications in networking has significantly improved over the last decade. The availability of public datasets and programmable switching fabrics (including low-level languages to program them) presents a full-stack to the programmer for deploying in-network ML. However, the diversity of tools involved, coupled with complex optimization tasks of ML model design and hyperparameter tuning while complying with the network constraints (like throughput and latency), puts the onus on the network operator to be an expert in ML, network design, and programmable hardware. We present Homunculus, a high-level framework that enables network operators to specify their ML requirements in a declarative rather than... (More)
Support for Machine Learning (ML) applications in networking has significantly improved over the last decade. The availability of public datasets and programmable switching fabrics (including low-level languages to program them) presents a full-stack to the programmer for deploying in-network ML. However, the diversity of tools involved, coupled with complex optimization tasks of ML model design and hyperparameter tuning while complying with the network constraints (like throughput and latency), puts the onus on the network operator to be an expert in ML, network design, and programmable hardware. We present Homunculus, a high-level framework that enables network operators to specify their ML requirements in a declarative rather than imperative way. Homunculus takes as input the training data and accompanying network and hardware constraints, and automatically generates and installs a suitable model onto the underlying switching target. It performs model design-space exploration, training, and platform code-generation as compiler stages, leaving network operators to focus on acquiring high-quality network data. Our evaluations on real-world ML applications show that Homunculus's generated models achieve up to 12% better F1 scores compared to hand-tuned alternatives, while operating within the resource limits of the underlying targets. We further demonstrate the high performance and increased reactivity (seconds to nanoseconds) of the generated models on emerging per-packet ML platforms to showcase Homunculus's timely and practical significance.
(Less)
- author
- Swamy, Tushar ; Zulfiqar, Annus ; Nardi, Luigi LU ; Shahbaz, Muhammad and Olukotun, Kunle
- organization
- publishing date
- 2023-03-25
- type
- Chapter in Book/Report/Conference proceeding
- publication status
- published
- subject
- keywords
- ML Compilers, Per-packet ML, Self-driving Networks
- host publication
- ASPLOS 2023 - Proceedings of the 28th ACM International Conference on Architectural Support for Programming Languages and Operating Systems
- series title
- International Conference on Architectural Support for Programming Languages and Operating Systems - ASPLOS
- editor
- Aamodt, Tor M. ; Jerger, Natalie Enright and Swift, Michael
- volume
- 3
- pages
- 14 pages
- publisher
- Association for Computing Machinery (ACM)
- conference name
- 28th ACM International Conference on Architectural Support for Programming Languages and Operating Systems, ASPLOS 2023
- conference location
- Vancouver, Canada
- conference dates
- 2023-03-25 - 2023-03-29
- external identifiers
-
- scopus:85159360104
- ISBN
- 9781450399180
- DOI
- 10.1145/3582016.3582022
- language
- English
- LU publication?
- yes
- id
- e764ee2d-5cf5-40b2-84da-d507a0c8a070
- date added to LUP
- 2023-08-14 08:19:52
- date last changed
- 2023-11-22 21:01:11
@inproceedings{e764ee2d-5cf5-40b2-84da-d507a0c8a070, abstract = {{<p>Support for Machine Learning (ML) applications in networking has significantly improved over the last decade. The availability of public datasets and programmable switching fabrics (including low-level languages to program them) presents a full-stack to the programmer for deploying in-network ML. However, the diversity of tools involved, coupled with complex optimization tasks of ML model design and hyperparameter tuning while complying with the network constraints (like throughput and latency), puts the onus on the network operator to be an expert in ML, network design, and programmable hardware. We present Homunculus, a high-level framework that enables network operators to specify their ML requirements in a declarative rather than imperative way. Homunculus takes as input the training data and accompanying network and hardware constraints, and automatically generates and installs a suitable model onto the underlying switching target. It performs model design-space exploration, training, and platform code-generation as compiler stages, leaving network operators to focus on acquiring high-quality network data. Our evaluations on real-world ML applications show that Homunculus's generated models achieve up to 12% better F1 scores compared to hand-tuned alternatives, while operating within the resource limits of the underlying targets. We further demonstrate the high performance and increased reactivity (seconds to nanoseconds) of the generated models on emerging per-packet ML platforms to showcase Homunculus's timely and practical significance.</p>}}, author = {{Swamy, Tushar and Zulfiqar, Annus and Nardi, Luigi and Shahbaz, Muhammad and Olukotun, Kunle}}, booktitle = {{ASPLOS 2023 - Proceedings of the 28th ACM International Conference on Architectural Support for Programming Languages and Operating Systems}}, editor = {{Aamodt, Tor M. and Jerger, Natalie Enright and Swift, Michael}}, isbn = {{9781450399180}}, keywords = {{ML Compilers; Per-packet ML; Self-driving Networks}}, language = {{eng}}, month = {{03}}, pages = {{329--342}}, publisher = {{Association for Computing Machinery (ACM)}}, series = {{International Conference on Architectural Support for Programming Languages and Operating Systems - ASPLOS}}, title = {{Homunculus : Auto-Generating Efficient Data-Plane ML Pipelines for Datacenter Networks}}, url = {{http://dx.doi.org/10.1145/3582016.3582022}}, doi = {{10.1145/3582016.3582022}}, volume = {{3}}, year = {{2023}}, }