Issue No. 01 - January/February (2011 vol. 28)
DOI Bookmark: http://doi.ieeecomputersociety.org/10.1109/MS.2010.134
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
F. Feinbube, P. Troger and A. Polze, "Joint Forces: From Multithreaded Programming to GPU Computing," in IEEE Software, vol. 28, no. , pp. 51-57, 2010.