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 ske...
This work has been partially supported by the EU Horizon 2020 grant “RePhrase: Refactoring Parallel ...
. This paper presents a new approach to parallel programming with algorithmic skeletons, i.e. common...
Parallel divide and conquer computations, encompassing a wide variety of applications, can be modele...
The proliferation of widely available, but very different, parallel architectures makes the ability...
The proliferation of widely available, but very different, parallel architectures makes the ability...
Tracing JIT compilation generates units of compilation that are easy to analyse and are known to exe...
Parallel programming is extremely challenging. Worse yet, parallel architectures evolve quickly, and...
Tracing JIT compilation generates units of compilation that are easy to analyse and are known to exe...
Parallel and heterogeneous systems are ubiquitous. Unfortunately, both require significant complexit...
Algorithmic skeletons abstract commonly-used patterns of parallel computation, communication, and in...
Tracing JIT compilation generates units of compilation that are easy to analyse and are known to ex...
Programming parallel machines is notoriously dicult. Factors contribut-ing to this diculty include t...
This work focuses on compiler and run-time techniques for improving the productivity and the perform...
Multicore clusters provide cost-effective platforms for running CPU-intensive and data-intensive para...
Computational environments, such as clusters and grids, provide a cost-effective platform for runnin...
This work has been partially supported by the EU Horizon 2020 grant “RePhrase: Refactoring Parallel ...
. This paper presents a new approach to parallel programming with algorithmic skeletons, i.e. common...
Parallel divide and conquer computations, encompassing a wide variety of applications, can be modele...
The proliferation of widely available, but very different, parallel architectures makes the ability...
The proliferation of widely available, but very different, parallel architectures makes the ability...
Tracing JIT compilation generates units of compilation that are easy to analyse and are known to exe...
Parallel programming is extremely challenging. Worse yet, parallel architectures evolve quickly, and...
Tracing JIT compilation generates units of compilation that are easy to analyse and are known to exe...
Parallel and heterogeneous systems are ubiquitous. Unfortunately, both require significant complexit...
Algorithmic skeletons abstract commonly-used patterns of parallel computation, communication, and in...
Tracing JIT compilation generates units of compilation that are easy to analyse and are known to ex...
Programming parallel machines is notoriously dicult. Factors contribut-ing to this diculty include t...
This work focuses on compiler and run-time techniques for improving the productivity and the perform...
Multicore clusters provide cost-effective platforms for running CPU-intensive and data-intensive para...
Computational environments, such as clusters and grids, provide a cost-effective platform for runnin...
This work has been partially supported by the EU Horizon 2020 grant “RePhrase: Refactoring Parallel ...
. This paper presents a new approach to parallel programming with algorithmic skeletons, i.e. common...
Parallel divide and conquer computations, encompassing a wide variety of applications, can be modele...