Previous work has demonstrated that it is possible to generate eicient and highly parallel code for multicore CPUs and GPUs from combinator-based array languages for a range of applications. That work, however, has been limited to operating on lat, rectangular structures without any facilities for irregularity or nesting. In this paper, we show that even a limited form of nesting provides substantial beneits both in terms of the expressiveness of the language (increasing modularity and providing support for simple irregular structures) and the portability of the code (increasing portability across resource-constrained devices, such as GPUs). Speciically, we generalise Blelloch's lattening transformation along two lines: (1) we explicitly di...
Parallel computing hardware is ubiquitous, ranging from cell-phones with multiple cores to super-com...
The last few years has seen an explosion of effort in designing algorithms that harness the power of...
The stream processing paradigm is used in several scientific and enterprise applications in order to...
Previous work has demonstrated that it is possible to generate eicient and highly parallel code for ...
The effective parallelization of applications exhibiting irregular nested parallelism is still an op...
There are many important applications in computational fluid dynamics, circuit simulation and struct...
Specialized accelerators are increasingly attractive solutions to continue expected generational per...
With the advent of programmer-friendly GPU computing environ-ments, there has been much interest in ...
Asymmetric data patterns and workloads pose a challenge to massively parallel algorithm design, in p...
. Most data-parallel languages use arrays to support parallelism. This regular data structure allows...
Irregular applications have frequent data-dependent memory accesses and control flow. They arise in ...
Given the ubiquity of multicore processors, there is an acute need to enable the development of scal...
An approach for the fast analysis of "irregular", i.e., of conformal, periodic or aperiodic, 2D arra...
The Smith Waterman algorithm is used to perform local alignment on biological sequences by calculati...
The combined exploitation of stream and data parallelism is demonstrating encouraging performance re...
Parallel computing hardware is ubiquitous, ranging from cell-phones with multiple cores to super-com...
The last few years has seen an explosion of effort in designing algorithms that harness the power of...
The stream processing paradigm is used in several scientific and enterprise applications in order to...
Previous work has demonstrated that it is possible to generate eicient and highly parallel code for ...
The effective parallelization of applications exhibiting irregular nested parallelism is still an op...
There are many important applications in computational fluid dynamics, circuit simulation and struct...
Specialized accelerators are increasingly attractive solutions to continue expected generational per...
With the advent of programmer-friendly GPU computing environ-ments, there has been much interest in ...
Asymmetric data patterns and workloads pose a challenge to massively parallel algorithm design, in p...
. Most data-parallel languages use arrays to support parallelism. This regular data structure allows...
Irregular applications have frequent data-dependent memory accesses and control flow. They arise in ...
Given the ubiquity of multicore processors, there is an acute need to enable the development of scal...
An approach for the fast analysis of "irregular", i.e., of conformal, periodic or aperiodic, 2D arra...
The Smith Waterman algorithm is used to perform local alignment on biological sequences by calculati...
The combined exploitation of stream and data parallelism is demonstrating encouraging performance re...
Parallel computing hardware is ubiquitous, ranging from cell-phones with multiple cores to super-com...
The last few years has seen an explosion of effort in designing algorithms that harness the power of...
The stream processing paradigm is used in several scientific and enterprise applications in order to...