120 likes | 246 Views
GPU Computing. Burim Kameri Fachhochschule Hannover (FHH) Institut für Solarforschung Hameln (ISFH). Inhalt. Sequentielle vs. parallele Programmierung GPU GPGPU CUDA, OpenCL , etc. Problemstellung Beispiele Optimierung. Motivation. Motivation: Beispiel.
E N D
GPU Computing BurimKameri Fachhochschule Hannover (FHH) Institut für Solarforschung Hameln (ISFH)
GPU - Computing Inhalt • Sequentielle vs. parallele Programmierung • GPU • GPGPU • CUDA, OpenCL, etc. • Problemstellung • Beispiele • Optimierung
GPU - Computing Motivation
GPU - Computing Sequentielle vs. parallele Programmierung • Sequentielle Programmierung Quelle: https://computing.llnl.gov/tutorials/parallel_comp/
GPU - Computing Sequentielle vs. parallele Programmierung • Parallele Programmierung Quelle: https://computing.llnl.gov/tutorials/parallel_comp/
GPU - Computing GPGPU - OpenCL • Zusätzliche Verwendung der GPU für allgemeine Aufgaben Quelle: CUDA C Programming Guide Quelle: http://de.wikipedia.org/wiki/OpenCL
GPU - Computing Beispiel (Matrix-Skalar-Multiplikation) • CPU • GPU (OpenCL) voidmultMatrix(float* A, float c, float* B) { for( i = 0;i < 225;i++ ) { B[i] = A[i] * c; } } __kernel__ voidmultMatrix(float* A, float c, float* B) { intidx = get_global_id(0); B[idx] = A[idx] * c; }
GPU - Computing Optimierung
GPU - Computing Zusammenfassung • Aufteilung des Domänenproblems • Tieferes Verständnis des Domänenproblems nötig • Wissen über das Programmiermodell • work-items, work-groups, Kernels, Speicherhirachien, etc. • Synchronisierung • Tiefes Wissen über die GPU-Architektur • Shared Memory • Kontrollstrukturen mit bedingten Verzweigungen vermeiden
GPU - Computing Dankeschön! Fragen?