The Community for Technology Leaders
Green Image
Issue No. 12 - Dec. (2012 vol. 23)
ISSN: 1045-9219
pp: 2205-2218
Marcelo Cintra , University of Edinburgh, Edinburgh
Luís Fabrício Wanderley Góes , University of Edinburgh, Edinburgh
Murray Cole , University of Edinburgh, Edinburgh
Nikolas Ioannou , University of Edinburgh, Edinburgh
Polychronis Xekalakis , Intel Barcelona Research Center, Barcelona
Skeleton or pattern-based programming allows parallel programs to be expressed as specialized instances of generic communication and computation patterns. In addition to simplifying the programming task, such well structured programs are also amenable to performance optimizations during code generation and also at runtime. In this paper, we present a new skeleton framework that transparently selects and applies performance optimizations in transactional worklist applications. Using a novel hierarchical autotuning mechanism, it dynamically selects the most suitable set of optimizations for each application and adjusts them accordingly. Our experimental results on the STAMP benchmark suite show that our skeleton autotuning framework can achieve performance improvements of up to 88 percent, with an average of 46 percent, over a baseline version for a 16-core system and up to 115 percent, with an average of 56 percent, for a 32-core system. These performance improvements match or even exceed those obtained by a static exhaustive search of the optimization space.
Skeleton programming, Optimization, Prefetching, Runtime, Parallel programming, Concurrent computing, parallel patterns and application-transparent adaptation, Concurrent programming, transactional memory
Marcelo Cintra, Luís Fabrício Wanderley Góes, Murray Cole, Nikolas Ioannou, Polychronis Xekalakis, "Autotuning Skeleton-Driven Optimizations for Transactional Worklist Applications", IEEE Transactions on Parallel & Distributed Systems, vol. 23, no. , pp. 2205-2218, Dec. 2012, doi:10.1109/TPDS.2012.140
181 ms
(Ver 3.1 (10032016))