Slowing Down for Performance and Energy: An OS-Centric Study in Network Driven Workloads
Han Dong, Sanjay Arora, Yara Awad, Tommy Unger, Orran Krieger, and, Jonathan Appavoo

TL;DR
This study investigates how OS-level techniques like batching, processor settings, and path logic influence network workload performance and energy efficiency, revealing significant improvements and surprising findings on polling energy use.
Contribution
It introduces a methodology and tools for fine-grained energy analysis and demonstrates how OS optimizations can substantially enhance network processing efficiency.
Findings
Batching and interrupt delay can double energy and performance.
Polling can be energy efficient and outperform Linux by up to 11X.
OS path specialization impacts energy and performance significantly.
Abstract
This paper studies three fundamental aspects of an OS that impact the performance and energy efficiency of network processing: 1) batching, 2) processor energy settings, and 3) the logic and instructions of the OS networking paths. A network device's interrupt delay feature is used to induce batching and processor frequency is manipulated to control the speed of instruction execution. A baremetal library OS is used to explore OS path specialization. This study shows how careful use of batching and interrupt delay results in 2X energy and performance improvements across different workloads. Surprisingly, we find polling can be made energy efficient and can result in gains up to 11X over baseline Linux. We developed a methodology and a set of tools to collect system data in order to understand how energy is impacted at a fine-grained granularity. This paper identifies a number of other…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsCloud Computing and Resource Management · Parallel Computing and Optimization Techniques · Caching and Content Delivery
