The Community for Technology Leaders
RSS Icon
Issue No.01 - January/February (2011 vol.28)
pp: 51-57
Frank Feinbube , University of Potsdam
Peter Troger , University of Potsdam
Andreas Polze , University of Potsdam
Desktop software developers' interest in graphics hardware is increasing as a result of modern graphics cards' capabilities to act as compute devices that augment the main processor. This capability means parallel computing is no longer a dedicated task for the CPU. A trend toward heterogeneous computing combines the main processor and graphics processing unit (GPU). This overview of how to utilize GPU compute power in the best possible way includes explanations of the primary GPU hardware concepts and the corresponding programming principles. On this foundation, the authors discuss a collection of commonly agreed-upon critical performance optimization strategies that are the key factor for getting true scalability and performance improvements when moving parts of your application from a multithreaded to a GPU-enhanced version.
graphics processors, optimization, parallel processors, SIMD processors
Frank Feinbube, Peter Troger, Andreas Polze, "Joint Forces: From Multithreaded Programming to GPU Computing", IEEE Software, vol.28, no. 1, pp. 51-57, January/February 2011, doi:10.1109/MS.2010.134
1. K. Asanovic et al., The Landscape of Parallel Computing Research: A View from Berkeley, tech. report UCB/EECS-2006-183, Univ. of California, Berkeley, Dec. 2006.
2. The OpenCL Specification–Version 1.1, Khronos OpenCL Working Group, Sept. 2010;
3. V.W. Lee, "Debunking the 100X GPU vs. CPU Myth: An Evaluation of Throughput Computing on CPU and GPU," Proc. 37th Ann. Int'l Symp. Computer Architecture (ISCA 10), ACM Press, 2010, pp. 451–460.
4. S.-Z. Ueng et al., "CUDA-Lite: Reducing GPU Programming Complexity," Proc. 21th Int'l Workshop Languages and Compilers for Parallel Computing (LCPC 08), LNCS 5335, Springer, 2008, pp. 1–15.
5. Advanced Micro Devices, ATI Stream Computing OpenCL Programming Guide, June 2010; programming/Pagesdefault.aspx.
6. Nvidia, Nvidia OpenCL Best Practices Guide, Version 2.3, Aug. 2009;
441 ms
(Ver 2.0)

Marketing Automation Platform Marketing Automation Tool