Maier, P., Morton, J. M., and Trinder, P. (2016) JIT Costing Adaptive Skeletons for Performance Portability. In: The 5th ACM SIGPLAN Workshop on Functional High-Performance Computing (FHPC'16), Nara, Japan, 22 Sept 2016, pp. 23-30. ISBN 9781450344333 (doi:10.1145/2975991.2975995)
The proliferation of widely available, but very different, parallel architectures makes the ability to deliver good parallel performance on a range of architectures, or performance portability, highly desirable. Irregular parallel problems, where the number and size of tasks is unpredictable, are particularly challenging and require dynamic coordination. The paper outlines a novel approach to delivering portable parallel performance for irregular parallel programs. The approach combines JIT compiler technology with dynamic scheduling and dynamic transformation of declarative parallelism. We specify families of algorithmic skeletons plus equations for rewriting skeleton expressions. We present the design of a framework that unfolds skeletons into task graphs, dynamically schedules tasks, and dynamically rewrites skeletons, guided by a lightweight JIT trace-based cost model, to adapt the number and granularity of tasks for the architecture. We outline the system architecture and prototype implementation in Racket/Pycket. As the current prototype does not yet automatically perform dynamic rewriting we present results based on manual offline rewriting, demonstrating that (i) the system scales to hundreds of cores given enough parallelism of suitable granularity, and (ii) the JIT trace cost model predicts granularity accurately enough to guide rewriting towards a good adaptive transformation.
|Item Type:||Conference Proceedings|
|Glasgow Author(s) Enlighten ID:||Morton, Mr John and Maier, Dr Patrick and Trinder, Professor Phil|
|Authors:||Maier, P., Morton, J. M., and Trinder, P.|
|College/School:||College of Science and Engineering > School of Computing Science|
|Copyright Holders:||Copyright © 2016 ACM|
|Publisher Policy:||Reproduced in accordance with the copyright policy of the publisher|