ACM Home Page
Please provide us with feedback. Feedback
BSGP: bulk-synchronous GPU programming
Full text MovMov (25:14),  PdfPdf (2.11 MB)
Source
ACM Transactions on Graphics (TOG) archive
Volume 27 ,  Issue 3  (August 2008) table of contents
Proceedings of ACM SIGGRAPH 2008
SESSION: Parallelism table of contents
Article No. 19  
Year of Publication: 2008
ISSN:0730-0301
Also published in ...
Authors
Qiming Hou  Tsinghua University
Kun Zhou  Microsoft Research Asia
Baining Guo  Tsinghua University and Microsoft Research Asia
Publisher
ACM  New York, NY, USA
Bibliometrics
Downloads (6 Weeks): 90,   Downloads (12 Months): 649,   Citation Count: 1
Additional Information:

abstract   references   cited by   index terms   collaborative colleagues  

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

ABSTRACT

We present BSGP, a new programming language for general purpose computation on the GPU. A BSGP program looks much the same as a sequential C program. Programmers only need to supply a bare minimum of extra information to describe parallel processing on GPUs. As a result, BSGP programs are easy to read, write, and maintain. Moreover, the ease of programming does not come at the cost of performance. A well-designed BSGP compiler converts BSGP programs to kernels and combines them using optimally allocated temporary streams. In our benchmark, BSGP programs achieve similar or better performance than well-optimized CUDA programs, while the source code complexity and programming time are significantly reduced. To test BSGP's code efficiency and ease of programming, we implemented a variety of GPU applications, including a highly sophisticated X3D parser that would be extremely difficult to develop with existing GPU programming languages.


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
ARTIS, 2004. X3DToolKit homepage. http://artis.imag.fr/Software/X3D/.
 
2
ATI, 2006. Researcher CTM documentation. http://ati.amd.com/companyinfo/researcher/documents.html.
3
4
5
 
6
Ford, L. R., and Fulkerson, D. R. 1962. Flows in Networks. Princeton University Press.
7
 
8
Gress, A., and Zachmann, G. 2006. GPU-ABiSort: optimal parallel sorting on stream architectures. In Parallel and Distributed Processing Symposium, 45--54.
 
9
Harris, M., Owens, J., Sengupta, S., Zhang, Y., and Davidson, A., 2007. CUDPP homepage. http://www.gpgpu.org/developer/cudpp/.
 
10
11
12
13
 
14
 
15
16
17
 
18
NVIDIA, 2007. CUDA homepage. http://developer.nvidia.com/object/cuda.html.
19
20
 
21
 
22
Popov, S., Günther, J., Seidel, H.-P., and Slusallek, P. 2007. Stackless kd-tree traversal for high performance gpu ray tracing. In Proceedings of Eurographics'07, 415--424.
23
 
24
 
25
Skillicorn, D. B., Hill, J. M. D., and McColl, W. F. 1997. Questions and Answers about BSP. Scientific Programming 6, 3, 249--274.
26
27
28


Collaborative Colleagues:
Qiming Hou: colleagues
Kun Zhou: colleagues
Baining Guo: colleagues