GPU durch CPU entlasten?

raven

Well-known member
20 April 2006
5.038
540
Hallo,

hab mal ne Frage, die sich vielleicht ein bisschen komisch anhört, mich aber wirklich mal interessiert:
Kann man die GPU auf der Grafikkarte durch die CPU, bei Dual-Core am besten noch durch einen einzelnen Kern, entlasten oder gar ersetzen? :ugly:

Meines Wissens nach interpretiert die doch die Befehle genauso wie die GPU oder?
Ich kann mir zwar nicht vorstellen, dass das geht, aber wenn es geht - das wär klasse ;)

Meine GPU ist eine ATI Radeon 9550 Pro (Takt: 250 MHz, passiver Kühler - läuft schnell heiß!), auf der Grafikkarte von Connect3D liegen 256 MB DDR-Speicher von Elixir. Meine CPU ist ein Pentium D 2x 2,66 GHz @ 2x 3,40 GHz

Da Gothic 3 anscheinend nicht dazu zu überreden ist, beide Kerne zu nutzen (obwohl mir der Taskmanager mehrere Threads beim Prozess anzeigt), ist einer praktisch am schlafen. Wenn man das irgendwie nutzen könnte, wäre das natürlich toll ;)

Raven

(btw.: ich war mir nicht sicher, ob ich das in Hardware oder in Windows posten sollte, weil ich die Lösung ja für Windows brauche - deswegen, wenn es euch in Hardware besser passt, verschiebt es bitte :))
 
Eines vorweg: Du Freak. :mrgreen:
Was du vor hast, geht leider nicht. Wenn das Spiel nicht dafür programmiert ist, beide CPU-Kerne zu nutzen, dann kannst du daran auch nichts ändern.
Da musst du also auf DirectX10 und damit Windows Vista warten:
pc-welt schrieb:
Laut Angaben von Microsoft soll zu den Vorteilen von DirectX 10 gehören, dass Grafik bis zu acht Mal flotter dargestellt werden kann, als dies unter DirectX 9 – zur Erinnerung: es ist schon vier Jahre her, dass das erste DirectX 9 erschien - möglich wäre.

Erreicht wird dies, vereinfacht ausgedrückt, durch die direktere Ansteuerung der Grafikkarte und durch Aufhebung von Einschränkungen, die bei DirectX 9 aufgrund dessen Architektur nicht umgangen werden können. Außerdem erlaubt DirectX 10 beispielsweise Geometrie-Shader, Shader Modell 4.0, verbesserte Texturen-Verwaltung, der Speicher der Grafikkarte wird besser ausgenutzt und mehrere Prozesses/Threads können zeitgleich auf die GPU zugreifen.

Die CPU wird bei DirectX 10 entlastet, kann sich um andere Dinge kümmern und die GPU kümmert sich überwiegend darum, wofür sie konzipiert ist: die Berechnung von Grafik. Nachteil der neuen DirectX-Generation: Um alle Vorteile ausnutzen zu können, sind neue Grafikkarten notwendig, die DirectX 10 unterstützen. Von der Konzeption von DirectX 10 her ergibt sich aber für Entwickler der Vorteil, dass jede DirectX-10-kompatble Grafikkarte dasselbe können muss und nicht wie bisher Entwickler die Art der DirectX-9-Grafikkarte (beispielsweise: welcher Pixel-Shader) berücksichtigen müssen.

DirectX 10 selbst ist nicht mehr kompatibel zu DirectX 9. Daher stecken in Windows Vista sowohl DirectX 10 als auch eine angepasste Variante von DirectX 9, die DirectX 9.L oder DirectX 9.Ex genannt wird. Das "L" steht für Longhorn, dem Codenamen von Windows Vista. DirectX 9.L übernimmt die Kontrolle, sobald für DirectX 9 oder ältere DirectX-Versionen entwickelte Spiele gestartet werden.

Mit DirectX10 wird also alles besser. :mrgreen:
 
hmm, also generell halte ich die Idee für unmöglich weil:
das Betriebssystem ist in Schichten aufgebaut und soll daher eine Abstraktion bieten, das du nicht direkt auf die Hardware zugreifen kannst, um soetwas umzusetzen wie du vor hast (Grafikberechnung in CPU und nicht GPU) würde dann ja nicht mal ein Treiber reichen (vllt gehts auch mit Treiber)
 
grafikkarte durch cpu entlasten gibts nicht... ganz einfach aus dem grund da ne grafikkarte die cpu entlasten soll :roll: technisch gesehen würde sowas auch nicht viel bringen... hast du schon mal 3d mark laufen lassen? da gibts nen cpu benchmark... der ein szene rendert. schau dir mal die auflösung und die geschwindigkeit an ;) das leigt einfach daran das eine gpu optimiert für grafikberechnungen ist... und eine normale cpu ebend nicht. dann komm noch solche sachen wie speicheranbindung dazu... ne moderne gpu kann bis zu 10mal zu schneller auf den grafikspeicher zugreifen (mit bis zu 40GB/s) als eine cpu auf den arbeitspeicher (4gb/s-8gb/s). (moderne system natürlich)