In this paper, we aim to quantify the performance gains of dynamic parallelism. The newest version of CUDA, CUDA
5, introduces dynamic parallelism, which allows GPU threads to create new threads, without CPU intervention, and
adapt to its data. This effectively eliminates the superfluous back and forth communication between the GPU and CPU
through nested kernel computations. The change in performance will be measured using two well-known clustering
algorithms that exhibit data dependencies: the K-means clustering and the hierarchical clustering. K-means has a
sequential data dependence wherein iterations occur in a linear fashion, while the hierarchical clustering has a tree-like
dependence that produces split tasks. Analyzing the performance of these data-dependent algorithms gives us a better
understanding of the benefits or potential drawbacks of CUDA 5’s new dynamic parallelism feature.
We present the study of two important trade-offs in heterogeneous systems (i.e., between performance versus portability
and between performance and accuracy) for a relevant linear algebra problem, matrix multiplication modulo primes. Integer
matrix linear algebra methods rely heavily on matrix multiplication modulo primes. Double precision is necessary for exact
representation of sufficiently many primes. We examine the performance losses due to the use of OpenCL versus CUDA
and the use of double versus single precision. Our results indicate that performance losses from the former are minimal
with the benefit of cross-platform portability and from the latter are acceptable when double precision is required.
As multithreaded and reconfigurable logic architectures play an increasing role in high-performance computing (HPC),
the scientific community is in need for new programming models for efficiently mapping existing applications to the new
parallel platforms. In this paper, we show how we can effectively exploit tightly coupled fine-grained parallelism in architectures
such as GPU and FPGA to speedup applications described by uniform recurrence equations. We introduce the
concept of rolling partial-prefix sums to dynamically keep track of and resolve multiple dependencies without having to
evaluate intermediary values. Rolling partial-prefix sums are applicable in low-latency evaluation of dynamic programming
problems expressed as uniform or affine equations. To assess our approach, we consider two common problems in
computational biology, hidden Markov models (HMMER) for protein motif finding and the Smith-Waterman algorithm.
We present a platform independent, linear time solution to HMMER, which is traditionally solved in bilinear time, and a
platform independent, sub-linear time solution to Smith-Waterman, which is normally solved in linear time.
Access to the requested content is limited to institutions that have purchased or subscribe to SPIE eBooks.
You are receiving this notice because your organization may not have SPIE eBooks access.*
*Shibboleth/Open Athens users─please
sign in
to access your institution's subscriptions.
To obtain this item, you may purchase the complete book in print or electronic format on
SPIE.org.
INSTITUTIONAL Select your institution to access the SPIE Digital Library.
PERSONAL Sign in with your SPIE account to access your personal subscriptions or to use specific features such as save to my library, sign up for alerts, save searches, etc.