CPU und GPU bündeln

Alles, was nicht direkt mit Python-Problemen zu tun hat. Dies ist auch der perfekte Platz für Jobangebote.
Antworten
Py-Prog
User
Beiträge: 673
Registriert: Dienstag 16. Februar 2010, 17:52
Wohnort: G:\ermany

Hallo, weiß er wie man dei CPU und Die GPU zusammen arbeiten lassen kann? Ich hab mal einen Bericht drüber gelesen, aber da stand nicht drin wie.
Technik ist: wenn alles funktioniert und keiner weiß warum.
Wer Rechtschreibfehler findet darf sie behalten.
BlackJack

@Py-Prog: Das kommt auf das System und die GPU an würde ich mal sagen.
Dav1d
User
Beiträge: 1437
Registriert: Donnerstag 30. Juli 2009, 12:03
Kontaktdaten:

the more they change the more they stay the same
Benutzeravatar
cofi
Python-Forum Veteran
Beiträge: 4432
Registriert: Sonntag 30. März 2008, 04:16
Wohnort: RGFybXN0YWR0

Daneben gibt es noch OpenCL.
Py-Prog
User
Beiträge: 673
Registriert: Dienstag 16. Februar 2010, 17:52
Wohnort: G:\ermany

Sorry, ich hab da noch vergessen:
1. Ich hab ne Intel GPU
und
2. Will ich nicht nur mit Python-Skripten sondern mit dem Ganzen System darauf zugreifen.
Technik ist: wenn alles funktioniert und keiner weiß warum.
Wer Rechtschreibfehler findet darf sie behalten.
Benutzeravatar
cofi
Python-Forum Veteran
Beiträge: 4432
Registriert: Sonntag 30. März 2008, 04:16
Wohnort: RGFybXN0YWR0

Nein, es gibt keinen Schalter den man umlegen kann und ploetzlich wird der Rechner schneller.

Intel GPUs sind IIRC OpenCL tauglich.
lunar

Py-Prog hat geschrieben:2. Will ich nicht nur mit Python-Skripten sondern mit dem Ganzen System darauf zugreifen.
Und was darf man sich darunter jetzt vorstellen?!
Py-Prog
User
Beiträge: 673
Registriert: Dienstag 16. Februar 2010, 17:52
Wohnort: G:\ermany

@lunar Du darfst dir das so vorstellen das z. B. Der Viren-Scanner nicht stunden brauchen soll um die Festplatte zu scannen, Und wenn ich mit Super 2010 Videos konvertiere soll das auch schneller gehen. Die neuen Browser nehmen ja auch die GPU um Text schneller anzuzeigen. Kurz ich will mehr Geschwindigkeit, aber keinen neuen Rechner! (2,66 GHz sollten normal noch reichen)
Technik ist: wenn alles funktioniert und keiner weiß warum.
Wer Rechtschreibfehler findet darf sie behalten.
DasIch
User
Beiträge: 2718
Registriert: Montag 19. Mai 2008, 04:21
Wohnort: Berlin

Wenn das Design einer GPU sinnvoller wäre als dass einer CPU gebe es dar keinen Unterschied. Du wirst da bei weitem nicht für alles einen Geschwindigkeitsvorteil bekommen können, wahrscheinlich dürfte eher das Gegenteil der Fall sein.

Abgesehen davon lassen sich Prozessoren austauschen, sogar ohne Säge und Klebstoff.
lunar

@Py-Prog: So funktioniert das nicht. Man kann nicht einfach irgendwie auf die Grafikkarte „zugreifen“, so dass alles auf magische Weise schneller wird.

Um von Grafikkarten zu profitieren, muss man entweder spezielle Bibliotheken wie OpenGL nutzen oder spezielle Sprachen wie OpenCL oder CUDA. Bibliotheken wie OpenGL erfüllen nur spezielle Aufgaben, v.a. eben Zeichenoperationen. Davon kann ein Browser Gebrauch machen, aber bei einem Virenscanner ist beschleunigte Grafikausgabe reichlich nutzlos. Spezielle Sprachen bzw. Laufzeitumgebungen können zwar in der Theorie beliebige Aufgaben an die GPU übergeben. Praktisch müssen Anwendungen aber speziell für solche Umgebung geschrieben werden und unterliegen allerlei technischen Einschränkungen, die ein GPU nun mal mit sich bringt. GPUs haben verhältnismäßig wenig Speicher, wenig oder gar keinen Aufrufstack, und relativ langsame, aber dafür sehr viele Einzelkerne, und keinen direkten Zugriff auf andere Hardware bzw. Systemfunktionen (e.g. Festplatten oder Dateisysteme). Die Programme müssen also wenig Speicherbedarf haben, dürfen kaum oder gar keine Rekursion verwenden, müssen stark parallelisierbar sein, und dürfen kaum oder gar keinen Gebrauch von Systemfunktionen machen (e.g. Zugriff auf das Dateisystem, usw.). Das trifft auf Virenscanner nicht wirklich zu.

Im Allgemeinen ist GPU-Programmierung nichts, wovon Endbenutzer direkt profitieren oder Gebrauch machen könnten. Das richtet sich an spezielle Anwendungen, v.a. Grafikberechnungen und Simulationsprogramme. Bis auf Computerspiele und Videokodierung hat ein normaler Benutzer mit nichts Berührung, wo GPU-Programmierung sinnvoll wäre.

Kurz: Vergiss es, Du hast nicht wirklich verstanden, was GPUs sind, wie sie sich von einer CPU unterscheiden, und wie Dein System auf Hardware-Ebene im Allgemeinen funktioniert. Wenn Dir Dein Rechner zu langsam ist, kauf Dir einen neuen.
BlackJack

Und zum Thema Virenscanner: Der dürfte wahrscheinlich gar nicht so sehr von der Rechenleistung abhängen, sondern eher vom Datendurchsatz von der Festplatte.
Leonidas
Python-Forum Veteran
Beiträge: 16025
Registriert: Freitag 20. Juni 2003, 16:30
Kontaktdaten:

BlackJack hat geschrieben:Und zum Thema Virenscanner: Der dürfte wahrscheinlich gar nicht so sehr von der Rechenleistung abhängen, sondern eher vom Datendurchsatz von der Festplatte.
Und ich glaube auch nicht dass die GPU-Zugriff auf DMA hat.

Andererseits, es ist schon zu vermuten dass Symantec Anitvirus im Hintergrund Primzahlen oder sowas berechnet, so träge wie der immer war ;)
My god, it's full of CARs! | Leonidasvoice vs (former) Modvoice
lunar

@Leonidas: Die GPU hat Zugriff auf den Hauptspeicher und kommt somit prinzipiell schon an die Geräte. Allerdings muss der Zugriff auf den globalen Speicher explizit erfolgen, und ist sehr langsam, weil GPUs (mit Ausnahme neuer Fermi-Karten) keinen Cache besitzen. Außerdem kann direkt aus der GPU heraus kein Code auf der CPU ausgeführt werden. Dementsprechend kann man aus der GPU heraus keine Funktionen aus Bibliotheken und keine Systemaufrufe ausführen.
Benutzeravatar
snafu
User
Beiträge: 6740
Registriert: Donnerstag 21. Februar 2008, 17:31
Wohnort: Gelsenkirchen

Achso, wenn Ubuntu nach einem Absturz so lange braucht, um das Dateisystem zu prüfen, kann man also das Zeichnen der nächsten Prozentzahl nicht durch eine schnellere Grafikkarte beschleunigen? Hm, schade. :(
Antworten