Publication Date:
2010
abstract:
We introduce K-model, a computational model
to evaluate the algorithms designed for graphic processors,
and other architectures adhering to the stream programming
model. We address the lack of a formal complexity model that
properly accounts for memory contention, address coalescing
in memory accesses, or the serial control of instruction flows.
We study the impact of K-model rules on algorithm design.
We devise a coalesced and low contention data access technique
for Batcher's networks, and we evaluate the effectiveness of this
technique within our K-model. To evaluate the benefits in using
K-model in evaluating solutions for streaming architectures,
we compare the complexity of a sorting network built using
our technique, and quicksort. Although in theory quicksort is
more efficient than bitonic sort, empirically, our bitonic sorting
network has been shown to be faster than the state-of-theart implementation of quicksort on graphics processing units
(GPUs). We use our K-model to prove that this observation
should generally hold.
As a side result, our technique to perform a Batcher's
network on GPUs improves the performance of one the fastest
comparison-based solution for integers sorting.
Iris type:
04.01 Contributo in Atti di convegno
Keywords:
Computer Systems Organization. GENERAL Modeling of computer architecture; Computational model; GPU; Stream programming
List of contributors: