TY - GEN
T1 - Reactive tiling
AU - Srinivas, Jithendra
AU - Ding, Wei
AU - Kandemir, Mahmut
N1 - Publisher Copyright:
© 2015 IEEE.
PY - 2015/3/3
Y1 - 2015/3/3
N2 - To fully exploit the power of emerging multicore architectures, managing shared resources (i.e., caches) across applications and over time is critical. However, to our knowledge, most prior efforts view this problem from the OS/hardware side, and do not consider whether applications themselves can also participate in this process of managing shared resources. In this paper, we show how an application can react to OS/hardware-based resource management decisions by adapting itself (called reactive application), with the goal of maximizing the utilization of the shared resources allocated to it. Specifically, we present a framework that can generate code for adaptive (reactive) tiling, and propose an execution model in which a reactive application can react to the modulations in its cache space allocations to prevent its performance from degrading. One can expect two potential benefits from this approach. First, matching tile size to available cache capacity dynamically (during execution) improves performance of the target application. Second and equally important, better utilization of shared cache space reduces pressure on other applications (co-runners) that execute concurrently with the target application. Our experimental results show that the proposed scheme improves the performance of applications (over the best static tiles) by 8.4%, on average, when using synthetic cache allocations. Further with dynamic cache allocations determined by the utility-based cache partitioning (a state-of-the-art cache partitioning scheme), it improves performance of a set of eleven HPC applications by 11.3%.
AB - To fully exploit the power of emerging multicore architectures, managing shared resources (i.e., caches) across applications and over time is critical. However, to our knowledge, most prior efforts view this problem from the OS/hardware side, and do not consider whether applications themselves can also participate in this process of managing shared resources. In this paper, we show how an application can react to OS/hardware-based resource management decisions by adapting itself (called reactive application), with the goal of maximizing the utilization of the shared resources allocated to it. Specifically, we present a framework that can generate code for adaptive (reactive) tiling, and propose an execution model in which a reactive application can react to the modulations in its cache space allocations to prevent its performance from degrading. One can expect two potential benefits from this approach. First, matching tile size to available cache capacity dynamically (during execution) improves performance of the target application. Second and equally important, better utilization of shared cache space reduces pressure on other applications (co-runners) that execute concurrently with the target application. Our experimental results show that the proposed scheme improves the performance of applications (over the best static tiles) by 8.4%, on average, when using synthetic cache allocations. Further with dynamic cache allocations determined by the utility-based cache partitioning (a state-of-the-art cache partitioning scheme), it improves performance of a set of eleven HPC applications by 11.3%.
UR - http://www.scopus.com/inward/record.url?scp=84926060332&partnerID=8YFLogxK
UR - http://www.scopus.com/inward/citedby.url?scp=84926060332&partnerID=8YFLogxK
U2 - 10.1109/CGO.2015.7054190
DO - 10.1109/CGO.2015.7054190
M3 - Conference contribution
AN - SCOPUS:84926060332
T3 - Proceedings of the 2015 IEEE/ACM International Symposium on Code Generation and Optimization, CGO 2015
SP - 91
EP - 102
BT - Proceedings of the 2015 IEEE/ACM International Symposium on Code Generation and Optimization, CGO 2015
PB - Institute of Electrical and Electronics Engineers Inc.
T2 - 2015 IEEE/ACM International Symposium on Code Generation and Optimization, CGO 2015
Y2 - 7 February 2015 through 11 February 2015
ER -