GPU als Koprozessor nutzen?

25/01/2011 - 16:48 von lano | Report spam
Moin,

da meine CPU (AMD Sempron(tm) Processor 3000+) angesichts ihrer
mittlerweile zahlreichen Aufgaben schon ein wenig in die Jahre gekommen
ist, frage ich mich:

Wie kann ich meine GPU (HD3850 / RV670) dazu überreden meine CPU zu
unterstützen?

Rein theoretisch sollte das doch funktionieren, oder liege ich da falsch?
Braucht es unbedingt eine Compute Unified Device Architektur?

Die Grafikkarte hat sonst recht wenig zu tun, das aufregendste wird wohl
der KNewsTicker sein. Ob das ganze auch einen wirklichen
Geschwindigkeitsvorteil bringt ist mir dabei noch nicht mal soo wichtig,
wàre nett, ist aber kein muss, das reine experimentieren reizt mich
wesentlich mehr.

Hàtte da jemand Erfahrungen? Tipps und Tricks?

so dankend -Sven-
 

Lesen sie die antworten

#1 Marcel Müller
25/01/2011 - 18:50 | Warnen spam
Hallo,

lano wrote:
da meine CPU (AMD Sempron(tm) Processor 3000+) angesichts ihrer
mittlerweile zahlreichen Aufgaben schon ein wenig in die Jahre gekommen
ist, frage ich mich:

Wie kann ich meine GPU (HD3850 / RV670) dazu überreden meine CPU zu
unterstützen?



als Privatman? Für allgemeine Aufgaben? Wirtschaftlich vertretbar?
=> Gar nicht!

Rein theoretisch sollte das doch funktionieren, oder liege ich da falsch?
Braucht es unbedingt eine Compute Unified Device Architektur?



Nein, braucht man technisch gesehen nicht.

Fühle dich frei ein beliebiges Programm für den Grafikchip zu schreiben,
und eine Schnittstellen-API für die x86-Architektur sowie die
Anwendungsprogramme, die deine API dann auch nutzen.

Ob einem die > 2 Mannjahre Arbeit ein Board nebst CPU für 150€ wert
sind, muss jeder selbst wissen.


Geschwindigkeitsvorteil bringt ist mir dabei noch nicht mal soo wichtig,
wàre nett, ist aber kein muss, das reine experimentieren reizt mich
wesentlich mehr.



Dann würde ich damit beginnen, erst einmal Programmierunterlagen
(vollstàndige Datasheets) für den Grafikchip zu besorgen. Bei einigen
Herstellern bekommt man die nur gegen Non Disclosure Agreement, zuweilen
gekoppelt mit $$$. Als nàchstes brauchst Du eine Entwicklungsumgebung
für die Architektur. Jetzt sind definitiv $$$$$ oder gar ein
Kooperationsvertrag fàllig. Dafür ist Doku dabei. Knackpunkt: die
Hersteller haben möglicherweise gar nicht das Recht, alle zur
Entwicklungsumgebung gehörigen Bibliotheken an jede Pappnase
weiterzugeben. (Patente, fremdlizensierter Code und was weiß ich für ein
Firlefanz.)

Genau da setzt CUDA an. Eine standardisierte, abstrakte Schnittstelle,
die ohne all das Brimborium genutzt werden kann. Eine
Entwicklungsumgebung braucht man trotzdem. Aber die gibt es vielleicht
für lau, solange sie nur mit den Chips eines Herstellers funktioniert,
die selbiger natürlich auch verkaufen will. Das ist ein schönes
Alleinstellungsmerkmal.


Hàtte da jemand Erfahrungen? Tipps und Tricks?



Erfahrungen nicht. Das gebe ich mir nicht.


Marcel

Ähnliche fragen