Anwendungen auf die GPU auslagern

Hey,

hab mal irgendwo gelesen/gehört das man anwendungen auf die GPU auslagern kann.
Wollte mal hören wo man Programme findet die dies tun oder wie solche heißen.

Danke

Ps. Habe bei google nix gefunden:(
 
nVidia Cuda ist hier glaube ich das beste Stichwort.
Ist eine Entwicklerumgebung in C welche halt die GPU stark einbezieht.

Hab bisher lediglich ne Hand voll Demonstrationen gesehen, sahen aber alle sehr vielversprechend aus. Macht ja auch sinn wenn man sich heutige GPU's anschaut, die bei durchschnitts heimrechnern nicht in Berechnungsprozesse einzubeziehen ist pure Verschwendung.
 
Das was du dir vorstellst wird imho nicht funktionieren.

Die Applikation muss halt für die GPU optimiert sein, sonst wird das nichts. Der Programmierer muss die entsprechenden Bibliotheken einbinden und die Funktionen benutzen damit das fertige Programm die GPU für Berechnungen benutzt.

Es würde gegebenfalls funktionieren wenn du ein Programm hättest das die Binärdatei für GPU-Optimierung umschreibt, mir ist allerdings nicht bekannt, dass so etwas existiert.
 
Hallo Black Doom,

um ein Programm rein auf der GPU zu betreiben, müsste das Betriebsystem im Kern dafür entwickelt sein. Die GPU unterstützt die optimierte Berechnung spezieller Probleme wie sie vorrangig in der 3d Simulation auftreten. nvidia cuda/physix ist eine tolle Sache, da hier viele Sonderprobleme zusätzlich behandelt werden, bin aber mal gespannt ob sich die Herstellerabhängigkeit in einen Standard verwandeln kann.
Die Cpu muss wie ein Kindermädchen verstanden werden, die den hungrigen Gpu Babies Aufgaben zuschiebt. Einen Standard für die gpus gibt's ja schon: hlsl/glsl . Man kann die shader language auch für diverse Realweltprobleme benutzen, vor allem wenn es um Transformation von Binärmustern geht :D

http://www.paradoxalpress.com/LayoutSamples/HLSLReference.pdf
 
Ich habe mich im Rahmen eines Projekts mal mit CUDA befasst. CUDA ist vor allem dann nützlich wenn es darum geht eine große Anzahl von sich wiederholenden Berechnungen auszuführen. Die Prozesse werden zusammengefasst und parellel gestartet. Ein großer Vorteil von CUDA ist, dass math.h umgeschrieben und für die GPU optimiert wurde. Ausserdem gibt es mehrere Speicherbereiche mit verschiedenen Scopes. Ich muss leider gestehen, dass ich es nicht geschafft habe CUDA wirklich anzuwenden, da es doch ziemlich komplex ist.
 
Original von Cyberm@ster
Ich habe mich im Rahmen eines Projekts mal mit CUDA befasst. CUDA ist vor allem dann nützlich wenn es darum geht eine große Anzahl von sich wiederholenden Berechnungen auszuführen. Die Prozesse werden zusammengefasst und parellel gestartet. Ein großer Vorteil von CUDA ist, dass math.h umgeschrieben und für die GPU optimiert wurde. Ausserdem gibt es mehrere Speicherbereiche mit verschiedenen Scopes. Ich muss leider gestehen, dass ich es nicht geschafft habe CUDA wirklich anzuwenden, da es doch ziemlich komplex ist.
Die Demonstrationen die ich gesehen habe haben auch mathematische Algorithmen zum Thema gehabt. z.B. sehr genaue Pi genauigkeit auf einem Heimcomputer.

Wirklich beeindruckend wäre wenn aus Cuda (o.ä.) ein Standard werden würde und das vom OS genutzt werden würde. Ist sicherlich nur eine Frage der Zeit und Marktpolitik ... aber das kann ja noch bis zum quantencomputer dauern :rolleyes:
 
Original von Golgotha
Huch, wer doziert denn so gestelzt? ;) :P :D

:D sorry in einem Forum für 3d/hlsl wäre ich für eine Ausdrucksweise ohne das Wort Transformation verhöhnt worden :)

Da hlsl grundsätzlich vertex und pixelshader pipelines bedient, ist Letzteres für die Verarbeitung von texturen geschaffen. texturen sind bitmaps, bitmaps binärmuster...., desweiteren kann man im Bereich der matrizenrechnung hlsl gut benutzen. Die Frage ist allerdings, ob man sein Problem dazu zwingt in der Welt der Matrizen zu existieren oder es wirklich schon hier seine Gestalt hat.

Ich hoffe der letzte Satz war gestelzt genug :P
 
Zurück
Oben