The paradigm of nested data parallelism (NDP) allows a variety of semi-regular computation tasks to be mapped onto SIMD-style hardware, including GPUs and vector units. However, some care is needed to keep down space consumption in situations where the available parallelism may vastly exceed the available computation resources. To allow for an accurate space-cost model in such cases, we have previously proposed the Streaming NESL language, a refinement of NESL with a high-level notion of streamable sequences.
In this paper, we report on experience with a prototype implementation of Streaming NESL on a 2-level parallel platform, namely a multicore system in which we also aggressively utilize vector instructions on each core. We show that for several examples of simple, but not trivially parallelizable, text-processing tasks, we obtain single-core performance on par with off-the-shelf GNU Coreutils code, and near-linear speedups for multiple cores.
Thu 22 SepDisplayed time zone: Osaka, Sapporo, Tokyo change
15:20 - 16:10
Streaming and DataflowFHPC at Conference Room 2
Chair(s): Hai Liu Intel Labs
|Streaming Nested Data Parallelism on Multicores|
Frederik M. Madsen DIKU, University of Copenhagen, Andrzej Filinski DIKU, University of Copenhagen
|Polarized Data Parallel Data Flow|
Ben Lippmeier University of New South Wales, Fil Mackay Vertigo Technology (Australia), Amos Robinson Ambiata (Australia)