Efficient stream compaction on wide SIMD many-core architectures
Paper i proceeding, 2009

Stream compaction is a common parallel primitive used to remove unwanted elements in sparse data. This allows highly parallel algorithms to maintain performance over several processing steps and reduces overall memory usage. For wide SIMD many-core architectures, we present a novel stream compaction algorithm and explore several variations thereof. Our algorithm is designed to maximize concurrent execution, with minimal use of synchronization. Bandwidth and auxiliary storage requirements are reduced significantly, which allows for substantially better performance. We have tested our algorithms using CUDA on a PC with an NVIDIA GeForce GTX280 GPU. On this hardware, our reference implementation provides a 3x speedup over previous published algorithms.

GPGPU

parallel sorting

stream compaction

CUDA

prefix sum

Författare

Markus Billeter

Chalmers, Data- och informationsteknik, Datorteknik

Ola Olsson

Chalmers, Data- och informationsteknik, Datorteknik

Ulf Assarsson

Chalmers, Data- och informationsteknik, Datorteknik

Proceedings of the Conference on High Performance Graphics

Vol. 2009 159-166

Ämneskategorier

Datorteknik

ISBN

978-1-60558-603-8