Data sharing or resource contention: toward performance transparency on multicore systems
Sharanyan Srikanthan, Sandhya Dwarkadas, Kai Shen · 2015
Modern multicore platforms suffer from inefficiencies due to contention and communication caused by shar-ing resources or accessing shared data. In this pa-per, we demonstrate that information from low-cost hard-ware performance counters commonly available on mod-ern processors is sufficient to identify and separate the causes of communication traffic and performance degra-dation. We have developed SAM, a Sharing-Aware Map-per that uses the aggregated coherence and bandwidth event counts to separate traffic caused by data sharing from that due to memory accesses. When these counts ex-ceed pre-determined thresholds, SAM effects task to core assignments that colocate tasks that share data and dis-tribute tasks with high demand for cache capacity and memory bandwidth. Our new mapping policies automat-ically improve execution speed by up to 72 % for individ-ual parallel applications compared to the default Linux scheduler, while reducing performance disparities across applications in multiprogrammed workloads. 1