• Keine Ergebnisse gefunden

GPU-Berechnung mit CUDA bzw. Stream unter Erklärung der Shader-Architekturen

N/A
N/A
Protected

Academic year: 2022

Aktie "GPU-Berechnung mit CUDA bzw. Stream unter Erklärung der Shader-Architekturen"

Copied!
20
0
0

Wird geladen.... (Jetzt Volltext ansehen)

Volltext

(1)

GPU-Berechnung mit CUDA bzw. Stream unter Erklärung der Shader-Architekturen

Fakultät Informatik, Institut für Technische Informatik, Professur für VLSI-Entwurfssysteme, Diagnostik und Architektur

Dresden, 02.06.2006

(2)

Überlick

01 GPU-Computing

Anwendungsgebiete

02 Architekturen

Unified Shader Architektur Nvidia CUDA

Nvidia Fermi ATI Stream

TU Dresden, 15.06.2010 General-purpose computation on GPU Folie 2 von 20

(3)

TU Dresden, 15.06.2010 General-purpose computation on GPU Folie 3 von 20

01 GPU-Computing

ƒ General-purpose computation on GPU (GPGPU)

ƒ gemeinsame Verwendung von CPU und Grafikprozessor für heterogene Berechnungen

ƒ sequenzieller Teil der Anwendung läuft auf der CPU

ƒ rechenintensiver Teil läuft auf dem Grafikprozessor

(4)

TU Dresden, 15.06.2010 General-purpose computation on GPU Folie 4 von 20

01 GPU-Computing

ƒ Strömungssimulation

ƒ Bioinformatik

ƒ Data-Mining, Analysen und Datenbanken

ƒ Wetter-, Atmosphären- und Ozeanmodelle und Weltraumwissenschaften

ƒ Bild-/Videorendering

Anwendungsgebiete

(5)

TU Dresden, 15.06.2010 General-purpose computation on GPU Folie 5 von 20

01 GPU-Computing

[1]

(6)

TU Dresden, 15.06.2010 General-purpose computation on GPU Folie 6 von 20

02 Architekturen

Unified Shader-Architektur

klassische 3D-Pipeline

(7)

TU Dresden, 15.06.2010 General-purpose computation on GPU Folie 7 von 20

02 Architekturen

Unified Shader-Architektur

(8)

TU Dresden, 15.06.2010 General-purpose computation on GPU Folie 8 von 20

02 Architekturen

Unified Shader-Architektur

Unified Shader-Architektur

(9)

TU Dresden, 15.06.2010 General-purpose computation on GPU Folie 9 von 20

02 Architekturen

Unified Shader-Architektur

klassische 3D-Pipeline

(10)

TU Dresden, 15.06.2010 General-purpose computation on GPU Folie 10 von 20

02 Architekturen

ƒ CUDA (compute unified device architecture) von Nvidia

ƒ Hardware und Software Architektur

ƒ einführt mit der G80-Architektur (ab GeForce8800)

ƒ unterstützt C, C++, Fortan, OpenCL, DirectCompute, etc.

ƒ bis zu 128 Streamprozessoren (CUDA-Kerne)

Nvidia CUDA

(11)

TU Dresden, 15.06.2010 General-purpose computation on GPU Folie 11 von 20

02 Architekturen

Nvidia CUDA

Kernel: - (Teil-)Progamm

Thread: - Grundelement aus zu bearbeitenden Daten Warp: - Gruppe von 32 Threads

Thread Block: - 64 bis 512 Threads

- können sich untereinander synchronisieren - verfügen über Shared Memory

Grid: - Sammlung von Threads die den selben Kernel bearbeiten

- Lesen/Schreiben in globalen Speicher

- kann sich mit anderen „kernel call“ synchronisieren

(12)

TU Dresden, 15.06.2010 General-purpose computation on GPU Folie 12 von 20

02 Architekturen

Nvidia CUDA

Hardware

(13)

TU Dresden, 15.06.2010 General-purpose computation on GPU Folie 13 von 20

02 Architekturen

Nvidia CUDA

Software

ƒ C ähnlicher Sprachstil

ƒ Erweiterung von Funktions- und Variablenqualifizierern

ƒ Bsp.:

__global__ -> Kernel-Aufruf

__device__ -> GPU-Funktion

__host__ -> reine CPU-Operation (optional)

__shared__ -> Variable wird im Shared Memory gespeichert

• Beispiel: __global__ void Func(float* Parameter);

(14)

TU Dresden, 15.06.2010 General-purpose computation on GPU Folie 14 von 20

02 Architekturen

Nvidia CUDA

(15)

TU Dresden, 15.06.2010 General-purpose computation on GPU Folie 15 von 20

02 Architekturen

ƒ nächste Generation der CUDA Architektur

ƒ Nachfolger der GT200 – Prozessorarchitektur

ƒ unterstüzt bis zu 512 „CUDA cores“

ƒ bis zu 6GB GDDR5 DRAM

ƒ doppelte Gleitkomma-Genauigkeit von 32-bit und 64-bit

ƒ ECC-Unterstützung

ƒ Cache Hierachy mit L1 und L2-Cache

Nvidia Fermi

(16)

TU Dresden, 15.06.2010 General-purpose computation on GPU Folie 16 von 20

02 Architekturen

Nvidia Fermi

(17)

TU Dresden, 15.06.2010 General-purpose computation on GPU Folie 17 von 20

02 Architekturen

Nvidia Fermi

(18)

TU Dresden, 15.06.2010 General-purpose computation on GPU Folie 18 von 20

02 Architekturen

ƒ 1. verfügbare Technologie im Bereich GPGPU (2006)

ƒ vergleichbar mit CUDA bzw. Fermi

ƒ weniger unterstütze Software

ƒ Programmier-Schnittstelle ist OpenCL

ATI Stream

(19)

TU Dresden, 15.06.2010 General-purpose computation on GPU Folie 19 von 20

Quellen

ƒ http://www.nvidia.de/page/tesla_computing_solutions.html

ƒ http://www.nvidia.de/content/PDF/fermi_white_papers/NVIDIA_Fermi_Comp ute_Architecture_Whitepaper.pdf

ƒ http://www.hardware-

mag.de/artikel/grafikkarten/unified_geforce_8800_serie_unter_der_lupe/

ƒ http://www.tomshardware.de/CUDA-Nvidia-CPU-GPU,testberichte- 240065.html

ƒ http://www.tomshardware.de/ATi-Stream-AMD-gpgpu,testberichte- 240350.html

ƒ http://www.amd.com/de/products/technologies/stream- technology/Pages/stream-technology.aspx

ƒ Spezialarchitekturen I (GPGPU: Architektur,Programmierung und Anwendungen) Mario Kicherer

(20)

TU Dresden, 15.06.2010 General-purpose computation on GPU Folie 20 von 20

Referenzen

ÄHNLICHE DOKUMENTE

Die Studienkommission für die Studienrichtung Informatik an der Fakultät für Technische Naturwissenschaften und Informatik der Technischen Universität Wien und der Fakultät für

Studienrichtung Informatik an der Fakultät für Wirtschaftswissenschaften und Informatik der Universität Wien und mit der Fakultät für Technische Naturwissenschaften und Informatik

„Unsere App hilft durch alle Fachsemester und studiengangsübergreifend die richtigen Leute zusammenzubringen – ob man nun einen Lern- oder Praxispartner sucht oder jemanden

Da eine Software aber auch Qualitäten aufweisen kann, die durch Muster nicht beeinflussbar sind (siehe Kapitel 3.3 - Bewertbarkeit der Kriterien), sich aber auf die

Treten Sie danach in eine Endloss- chleife ein, in der Sie einfach die vom Consoler ¨uber die Pipe gelieferten Eingaben dem Logger ¨ubergeben und senden Sie dann eine Meldung mit

ist verantwortlich für die Erstellung des Protokolls für die Pflichtkonsultation (siehe Template).  kümmert sich um die Behebung

Letztendlich muss meist doch in der Newsgroup gefragt werden, wobei man nicht selten die Antwort bekommt, dass etwas zwar in MagicDraw selbst, nicht jedoch über MagicDraws

Das Studium gliedert sich in den Pflichtbereich (mit 69 ECTS-Punkten) und einen kleinen Wahlpflichtbereich (mit 6 ECTS-Punkten). Im ersten Studienjahr erwerben die