EMBA: Efficient memory bandwidth allocation to improve performance on intel commodity processor
Document Type
Conference Proceeding
Publication Date
2019
Department
Department of Computer Science
Abstract
On multi-core processors, contention on shared resources such as the last level cache (LLC) and memory bandwidth may cause serious performance degradation, which makes efficient resource allocation a critical issue in data centers. Intel recently introduces Memory Bandwidth Allocation (MBA) technology on its Xeon scalable processors, which makes it possible to allocate memory bandwidth in a real system. However, how to make the most of MBA to improve system performance remains an open question. In this work, (1) we formulate a quantitative relationship between a program's performance and its LLC occupancy and memory request rate on commodity processors. (2) Guided by the performance formula, we propose a heuristic bound-aware throttling algorithm to improve system performance and (3) we further develop a hierarchical clustering method to improve the algorithm's efficiency. (4) We implement these algorithms in EMBA, a low-overhead dynamic memory bandwidth scheduling system to improve performance on Intel commodity processors. The results show that, when multiple programs run simultaneously on a multi-core processor whose memory bandwidth is saturated, the programs with high memory bandwidth demand usually use bandwidth inefficiently compared with programs with medium memory bandwidth demand from the perspective of CPU performance. By slightly throttling the former's bandwidth, we can significantly improve the performance of the latter. On average, we improve system performance by 36.9% at the expense of 8.6% bandwidth utilization rate.
Publication Title
ICPP 2019 Proceedings of the 48th International Conference on Parallel Processing
Recommended Citation
Xiang, Y.,
Ye, C.,
Wang, X.,
Luo, Y.,
&
Wang, Z.
(2019).
EMBA: Efficient memory bandwidth allocation to improve performance on intel commodity processor.
ICPP 2019 Proceedings of the 48th International Conference on Parallel Processing.
http://doi.org/10.1145/3337821.3337863
Retrieved from: https://digitalcommons.mtu.edu/michigantech-p/576
Publisher's Statement
© 2019 Association for Computing Machinery. Publisher’s version of record: https://doi.org/10.1145/3337821.3337863