18.11.2013 Aufrufe

Particle Systems used for Visualization - ZIB

Particle Systems used for Visualization - ZIB

Particle Systems used for Visualization - ZIB

MEHR ANZEIGEN
WENIGER ANZEIGEN

Erfolgreiche ePaper selbst erstellen

Machen Sie aus Ihren PDF Publikationen ein blätterbares Flipbook mit unserer einzigartigen Google optimierten e-Paper Software.

Abbildung 5: Beispiel einer fertigen Kachelung<br />

3 General Purpose GPU<br />

Es wurde nun eingehend beschrieben, wie man eine effiziente Verteilung der Partikel<br />

garantieren kann. Doch kann es immer noch durch ungünstige Darstellungsalgorithmen<br />

zu langen Wartezeiten kommen. Ein wichtiger Schritt um dies zu vermeiden<br />

ist es, so viel Berechnungsschritte wie möglich auf der GPU selbst durchzuführen.<br />

Dadurch wird vermieden, dass die GPU auf Ergebnisse der CPU, des RAM oder der<br />

Festplatte warten muss. Erreichen kann man dies dank der Flexibilität mit der moderne<br />

GPU entworfen werden. In der Regel ähneln diese einer CPU welche darauf<br />

spezialisiert wurde, eine Operation gleichzeitig auf mehreren Datensätzen ausführen<br />

zu können. Gesteuert wird sie hierbei von Mikroprogrammen, den Shadern. Ein<br />

solcher Shader kann von einem Programmierer leicht selbst entworfen werden.<br />

Es ist also möglich, durch einen geschickten Entwurf alle Algorithmen auf der GPU<br />

ausführen zu können, wodurch sie quasi zu einem vollwertigen Coprozessor wird.<br />

Da die Entwicklung neuer GPUs durch die Nachfrage schnell voranschreitet ist es<br />

sinnvoll diese Rechenleistung auch zu nutzen.<br />

Wie muss nun aber ein solches Shadermodell aufgebaut werden, damit man eine<br />

“General Purpose GPU” (kurz: GPGPU) erhält?<br />

Jeder Algorithmus besteht aus drei “Komponenten”:<br />

• einer Eingabe<br />

• einem Verarbeitungsschritt<br />

• einer Ausgabe<br />

10

Hurra! Ihre Datei wurde hochgeladen und ist bereit für die Veröffentlichung.

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!