Application Performance Prediction and Optimization Under Cache Allocation Technology

Yeseong Kim1,a, Ankit More2,c, Emily Shriver2,d and Tajana Rosing1,b
1University of California San Diego
ayek048@ucsd.edu
btajana@ucsd.edu
2Intel Corporation
cankit.more@intel.com
demily.shriver@intel.com

ABSTRACT


Many applications running on high-performance computing systems share limited resources such as the lastlevel cache, often resulting in lower performance. Intel recently introduced a new control mechanism, called cache allocation technology (CAT), which controls the cache size used by each application. To intelligently utilize this technology for automated management, it is essential to accurately identify application performance behavior for different cache allocation scenarios. In this work, we show a novel approach which automatically builds a prediction model for application performance changes with CAT. We profile the workload characteristics based on Intel Top-down Microarchitecture Analysis Method (TMAM), and train the model using machine learning. The model predicts instructions per cycle (IPC) across available cache sizes allocated for the applications.We also design a dynamic cache management technique which utilizes the prediction model and intelligently partitions the cache resource to improve application throughput. We implemented and evaluated the proposed framework in Intel PMU profiling tool running on Xeon Platinum 8186 Skylake processor. In our evaluation, we show that the proposed model accurately predicts the IPC changes of applications with 4.7% error on average for different cache allocation scenarios. Our predictive online cache managements achieves improvements on application performance of up to 25% as compared to a prediction-agnostic policy.

Keywords: Performance prediction, Cache allocation technology, Top-down analysis methodology.



Full Text (PDF)