Abstract
Schedulers are a crucial component in datacenter resource management. Each scheduler offers different capabilities, and users use them through their APIs. However, there is no clear understanding of what programming abstractions they offer, nor why they offer some and not others. Consequently, it is difficult to understand their differences and the performance costs imposed by their APIs. In this work, we study the programming abstractions offered by industrial schedulers, their shortcomings, and their related performance costs. We propose a general reference architecture for scheduler programming abstractions. Specifically, we analyze the programming abstractions of five popular industrial schedulers, understand the differences in their APIs, and identify the missing abstractions. Finally, we carry out exemplary experiments using trace-driven simulation demonstrating that an API extension, such as container migration, can improve total execution time per task by 81%, highlighting how schedulers sacrifice performance by implementing simpler programming abstractions. All the relevant software and data artifacts are publicly available at https://github.com/atlarge-research/quantifying-api-design.
Original language | English |
---|---|
Title of host publication | ICPE '24 |
Subtitle of host publication | Proceedings of the 15th ACM/SPEC International Conference on Performance Engineering |
Publisher | Association for Computing Machinery, Inc |
Pages | 166-177 |
Number of pages | 12 |
ISBN (Electronic) | 9798400704444 |
DOIs | |
Publication status | Published - May 2024 |
Event | 15th ACM/SPEC International Conference on Performance Engineering, ICPE 2024 - London, United Kingdom Duration: 7 May 2024 → 11 May 2024 |
Conference
Conference | 15th ACM/SPEC International Conference on Performance Engineering, ICPE 2024 |
---|---|
Country/Territory | United Kingdom |
City | London |
Period | 7/05/24 → 11/05/24 |
Bibliographical note
Publisher Copyright:© 2024 Copyright held by the owner/author(s).
Keywords
- API
- cloud
- design
- performance
- scheduler