JIT costing adaptive skeletons for performance portability

MAIER, Patrick, MORTON, John Magnus and TRINDER, Phil (2016). JIT costing adaptive skeletons for performance portability. In: Proceedings of the 5th International Workshop on Functional High-Performance Computing - FHPC 2016. ACM, 23-30.

[img]
Preview
PDF
FHPC2016-accepted_version.pdf - Accepted Version
All rights reserved.

Download (252kB) | Preview
Official URL: https://doi.org/10.1145/2975991.2975995
Link to published version:: https://doi.org/10.1145/2975991.2975995

Abstract

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: Book Section
Departments - Does NOT include content added after October 2018: Faculty of Science, Technology and Arts > Department of Computing
Identification Number: https://doi.org/10.1145/2975991.2975995
Page Range: 23-30
Depositing User: Patrick Maier
Date Deposited: 28 Feb 2018 13:22
Last Modified: 18 Mar 2021 15:30
URI: https://shura.shu.ac.uk/id/eprint/18623

Actions (login required)

View Item View Item

Downloads

Downloads per month over past year

View more statistics