Rechenprozesse auf GPU auslagern?

Übersicht BlitzMax, BlitzMax NG Allgemein

Neue Antwort erstellen

 

CO2

ehemals "SirMO"

Betreff: Rechenprozesse auf GPU auslagern?

BeitragDo, Nov 06, 2014 21:14
Antworten mit Zitat
Benutzer-Profile anzeigen
Hallo,
ich hätte da mal eine mehr oder weniger komplexe Frage: Gibt es einen Weg in BM, Berechnungen explizit auf die GPU auszulagern? Wenn ja, wie? Oder ist dies in dieser Form gar nicht möglich?
mfG, CO²

Sprachen: BlitzMax, C, C++, C#, Java
Hardware: Windows 7 Ultimate 64-Bit, AMX FX-6350 (6x3,9 GHz), 32 GB RAM, Nvidia GeForce GTX 750 Ti

ZEVS

BeitragDo, Nov 06, 2014 22:18
Antworten mit Zitat
Benutzer-Profile anzeigen
Es ist zumindest nicht ganz einfach. Im Wikipedia-Artikel zu beliebigen Berechnungen auf Grafikkarten (GPGPU) werden verschiedene Schnittstellen erwähnt. Weil ich offene Standards mag, finde ich OpenCL am besten. Die GPU-Programme kannst du allerdings nicht in BlitzMax abfassen, sondern musst eine eigene Programmiersprache benutzen. In BlitzMax kommunizierst du mit der OpenCL-API. Das sind C-Funktionen. Am besten schreibst du dir in C einen Wrapper, den du in BlitzMax einbindest. Deine GPU-Programme schreibst du in OpenCL-C. Den Code übergibst du zur Laufzeit an die OpenCL-API, die ihn kompilliert. Anschließend kannst du das Programm auf einem OpenCL-fähigen Gerät (z.B. einer Grafikkarte) ausführen lassen.
Ich schaue mal, ob ich ein lauffähiges Beispiel zusammenbekomme.
ZEVS

Neue Antwort erstellen


Übersicht BlitzMax, BlitzMax NG Allgemein

Gehe zu:

Powered by phpBB © 2001 - 2006, phpBB Group