ACM Home Page
Please provide us with feedback. Feedback
Efficient gather and scatter operations on graphics processors
Full text PdfPdf (346 KB)
Source
Conference on High Performance Networking and Computing archive
Proceedings of the 2007 ACM/IEEE conference on Supercomputing - Volume 00 table of contents
Reno, Nevada
SESSION: Storage, file systems, and GPU hashing table of contents
Article No. 46  
Year of Publication: 2007
ISBN:978-1-59593-764-3
Authors
Bingsheng He  Hong Kong Univ. of Science and Technology
Naga K. Govindaraju  Microsoft Corp.
Qiong Luo  Hong Kong Univ. of Science and Technology
Burton Smith  Microsoft Corp.
Sponsors
IEEE-CS\DATC : IEEE Computer Society
ACM: Association for Computing Machinery
Publisher
ACM  New York, NY, USA
Bibliometrics
Downloads (6 Weeks): 4392,   Downloads (12 Months): 4581,   Citation Count: 6
Additional Information:

abstract   references   cited by   index terms   collaborative colleagues  

Tools and Actions: Review this Article  
DOI Bookmark: Use this link to bookmark this Article: http://doi.acm.org/10.1145/1362622.1362684
What is a DOI?

ABSTRACT

Gather and scatter are two fundamental data-parallel operations, where a large number of data items are read (gathered) from or are written (scattered) to given locations. In this paper, we study these two operations on graphics processing units (GPUs).

With superior computing power and high memory bandwidth, GPUs have become a commodity multiprocessor platform for general-purpose high-performance computing. However, due to the random access nature of gather and scatter, a naive implementation of the two operations suffers from a low utilization of the memory bandwidth and consequently a long, unhidden memory latency. Additionally, the architectural details of the GPUs, in particular, the memory hierarchy design, are unclear to the programmers. Therefore, we design multi-pass gather and scatter operations to improve their data access locality, and develop a performance model to help understand and optimize these two operations. We have evaluated our algorithms in sorting, hashing, and the sparse matrix-vector multiplication in comparison with their optimized CPU counterparts. Our results show that these optimizations yield 2--4X improvement on the GPU bandwidth utilization and 30--50% improvement on the response time. Overall, our optimized GPU implementations are 2--7X faster than their optimized CPU counterparts.


REFERENCES

Note: OCR errors may be found in this Reference List extracted from the full text article. ACM has opted to expose the complete List rather than only correct and linked references.

 
1
CWI Calibrator, http://monetdb.cwi.nl/Calibrator/.
 
2
HPF, http://hpff.rice.edu/.
 
3
Intel Math Kernel Library 9.0, http://www.intel.com/cd/software/products/asmona/eng/266853.htm.
 
4
MPI, http://www.mpi-forum.org/docs/.
 
5
NAS parallel benchmarks, http://www.nas.nasa.gov/Resources/Software/npb.html.
 
6
NVIDIA CUDA (Compute Unified Device Architecture), http://developer.nvidia.com/object/cuda.html.
 
7
Sparse matrix collection, http://www.cise.ufl.edu/research/sparse/matrices/.
 
8
ZPL, http://www.cs.washington.edu/research/zpl/home/.
 
9
M. Abramowitz and I. A. Stegun (Eds.). Stirling numbers of the second kind. In Handbook of Mathematical Functions with Formulas, Graphs, and Mathematical Tables, 9th printing. New York: Dover, 1972.
10
 
11
 
12
G. E. Blelloch. Prefix sums and their applications. Technical report, CMU-CS-90-190, Nov 1990.
 
13
 
14
I. Buck. Taking the plunge into GPU computing. In GPU Gems 2, Pharr M., (Ed.). Addison Wesley, Mar. 2005, pp. 509--519.
15
16
 
17
 
18
H. Gahvari. Benchmarking sparse matrix-vector multiply. Master thesis, Computer Science Division, U.C. Berkeley, December 2006.
 
19
20
21
22
23
 
24
D. Horn. Lib GPU FFT, http://sourceforge.net/proiects/gpufft/, 2006.
25
 
26
27
 
28
 
29
J. D. Owens, D. Luebke, N. Govindaraju, M. Harris, J. Krüger, A. E. Lefohn and T. J. Purcell. A survey of general-purpose computation on graphics hardware. Computer Graphics Forum, Volume 26, 2007.
 
30
 
31
32
 
33
S. Williams, J. Shalf, L. Oliker, P. Husbands and K. Yelick, Dense and sparse matrix operations on the Cell processor. May, 2005. Lawrence Berkeley National Laboratory. Paper LBNL-58253.
34


Collaborative Colleagues:
Bingsheng He: colleagues
Naga K. Govindaraju: colleagues
Qiong Luo: colleagues
Burton Smith: colleagues