Skip to main content

Lund University Publications

LUND UNIVERSITY LIBRARIES

Homunculus : Auto-Generating Efficient Data-Plane ML Pipelines for Datacenter Networks

Swamy, Tushar ; Zulfiqar, Annus ; Nardi, Luigi LU ; Shahbaz, Muhammad and Olukotun, Kunle (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)
Please use this url to cite or link to this publication:
author
; ; ; and
organization
publishing date
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}},
}