Computer Science – Distributed – Parallel – and Cluster Computing
Scientific paper
2010-03-31
Computer Science
Distributed, Parallel, and Cluster Computing
17 pages, 17 figures
Scientific paper
Much of the current focus in high-performance computing is on multi-threading, multi-computing, and graphics processing unit (GPU) computing. However, vectorization and non-parallel optimization techniques, which can often be employed additionally, are less frequently discussed. In this paper, we present an analysis of several optimizations done on both central processing unit (CPU) and GPU implementations of a particular computationally intensive Metropolis Monte Carlo algorithm. Explicit vectorization on the CPU and the equivalent, explicit memory coalescing, on the GPU are found to be critical to achieving good performance of this algorithm in both environments. The fully-optimized CPU version achieves a 9x to 12x speedup over the original CPU version, in addition to speedup from multi-threading. This is 2x faster than the fully-optimized GPU version.
Dickson Neil G.
Hamze Firas
Karimi Kamran
No associations
LandOfFree
Importance of Explicit Vectorization for CPU and GPU Software Performance does not yet have a rating. At this time, there are no reviews or comments for this scientific paper.
If you have personal experience with Importance of Explicit Vectorization for CPU and GPU Software Performance, we encourage you to share that experience with our LandOfFree.com community. Your opinion is very important and Importance of Explicit Vectorization for CPU and GPU Software Performance will most certainly appreciate the feedback.
Profile ID: LFWR-SCP-O-35270