PhysX-Karte wegen Synch-Overhead ein Schuss ins Knie!!

mocad_tom

Admiral Special
Mitglied seit
17.06.2004
Beiträge
1.234
Renomée
52
Hier gibt es erste Benches mit der Ageia PhysX-Karte:
http://forums.overclockers.co.uk/showthread.php?t=17568825&page=4&pp=30

Dabei wird Ghost Recon 3: Advanced Warfighter, eines der ersten PhysX-Games gebencht. Ergebnis:
Ein Athlon FX60 mit Geforce 7900 SLI-System und PhysX-PPU mit 800x600 Auflösung:

800x600 with all lowest options enabled, same story.

On

Explosion 35
Grenade 55
Gunshot 80

Off

Explosion 60
Grenade 90
Gunshot 110

Hierbei erkennt man, das der Synchronisations-Overhead, der zwischen CPU->PPU->CPU->GPU stattfindet das ganze System so sehr einschränkt, das die Frame-Rates absinken, dabei sind die Eyecandy-Effekte noch gar nicht so umwerfend.

Und ich hatte schon im letzten Jahr den richtigen Riecher:
http://www.planet3dnow.de/vbulletin/showthread.php?t=204449&page=7&highlight=physx#post2144159

Die Kapselung von NovodeX sieht OpenGL sehr ähnlich(war nicht anders zu erwarten), allerdings sehe ich keine Übergabe von der Physics-Engine zu OpenGL -> Keine Möglichkeit des interaktiven eingreifens.

gScene->simulate(1.0f/60.0f);
gScene->flushStream(); // Physik-Berechnung
gScene->fetchResults(NX_RIGID_BODY_FINISHED, true);

....OpenGL-Szenen-Initialisierung....

gScene->visualize(); // OpenGL-Ausgabe

Für Objekte, die miteinander Kollidieren, müssen Callback-Funktionen initialisiert werden.

Ich vermute jede Kollision, die mit einer CallBack-Funktion verknüpft ist erzeugt für sich Last auf dem Bus.
Laut Docu kann man auch auf Kollision pollen, was sich aber auch Ressourcenintensiv anhört
Will man die Kollision Out-Of-The-Box aus diesem SDK übernehmen kann der Rückkanal nicht gut genug sein.


>Bei den Grafikkarten wird dies ja auch nicht als Nachteil
>gesehen -- im Gegenteil.

Dort geht es ja auch nur in eine Richtung Hauptspeicher->Grafikkarte->Monitorausgang

Grüße,
Tom
 
Es kann sein, dass es sich dabei nur um Kinderkrankheiten handelt, die durch verbesserte Treiber oder ein Firmwareupdate aus der Welt zu schaffen ist. Das halte ich zwar für unwahrscheinlich, dass sich der Overhead damit eindämmen lässt, aber vielleicht lässt sich dieser auf ein erträgliches Maß drücken. Eigentlich müsste ein ähnlicher Overhead auch bei der Verwendung der Pixel Pipelines der Grafikprozessors eintreten und trotzdem kann man hier keine Geschwindigkeitseinbußen verzeichnen. Ich denke man sollte deshalb erst einmal abwarten und schauen, wie sich die Lage darstellt, wenn die Physikbeschleunigerkarten in den ersten Serien Rechnern beispielsweise der XPS Serie von Dell verbaut wurden. Notfalls gibt es noch effizientere Busse, als den PCI oder PCIe Bus, die zum Flaschenhals werden könnte.
 
Zuletzt bearbeitet:
Hierbei erkennt man, das der Synchronisations-Overhead, der zwischen CPU->PPU->CPU->GPU stattfindet das ganze System so sehr einschränkt, das die Frame-Rates absinken, dabei sind die Eyecandy-Effekte noch gar nicht so umwerfend.
Imo liegt das Hauptproblem beim Übergang CPU->GPU.
Einen solchen Overhead wie DX durch Kernelswitch etc produziert, werden sie wohl kaum erreichen. Je mehr in den Szenen dynamisch von CPU oder PPU berechnet wird, umso schlimmer fällt dieser DX-Overhead aus.
Vista und D3D10 werden aber da schon helfen.
 
deswegen arbeitet amd an dem problem (mit gpu entwicklern)
 

Jo und davon v.a. die Seite 4:
http://www.anandtech.com/video/showdoc.aspx?i=2751&p=4

Zitat:
The graphs show some interesting results. We see a lower framerate in all cases when using the PhysX hardware. As we said before, installing the hardware automatically enables higher quality physics. We can't get a good idea of how much better the PhysX hardware would perform than the CPU, but we can see a couple facts very clearly.
Also immer mit der Ruhe, der Vergleich hinkt, da mit der PhysX Karte automatisch 1-2 Detailstufen raufgeschaltet wird.
Ist ja wohl logisch dann, dass es langsamer geht. Die zusätzlichen Trümmer die in der Gegend rumfliegen, wollen ja auch angezeigt werden. Das macht immer noch die GPU, die Physikkarte ist ja nur für die Koordinaten zuständig.

Der Test ist also nicht wirklich überraschend...
Falls es wirklich Bus-Geschwindigkeitsprobleme gibt, dann ist das Problem einfach per PCIe Variante zu lösen. Die Lösung sollte ja auch schon fertig in der Schublade liegen, da die ursprünglichen Protoypkarten ja beide Interfaces hatten.

Alles halb so will, immer mit der Ruhe ;-)

ciao

Alex
 
Ich würde mal so sagen: über Probleme dieser Art haben sich die Entwickler sicherlich auch Gedanken gemacht, und wenn sie die Karte trotzdem auf den Markt bringen, dann muß sie auch halbwegs was bringen, ansonsten wäre das finanzieller Selbstmord. ;)

Also erstmal abwarten...
 
Jo und davon v.a. die Seite 4:
http://www.anandtech.com/video/showdoc.aspx?i=2751&p=4

Zitat: Also immer mit der Ruhe, der Vergleich hinkt, da mit der PhysX Karte automatisch 1-2 Detailstufen raufgeschaltet wird.
Ist ja wohl logisch dann, dass es langsamer geht. Die zusätzlichen Trümmer die in der Gegend rumfliegen, wollen ja auch angezeigt werden. Das macht immer noch die GPU, die Physikkarte ist ja nur für die Koordinaten zuständig.

Der Test ist also nicht wirklich überraschend...
Falls es wirklich Bus-Geschwindigkeitsprobleme gibt, dann ist das Problem einfach per PCIe Variante zu lösen. Die Lösung sollte ja auch schon fertig in der Schublade liegen, da die ursprünglichen Protoypkarten ja beide Interfaces hatten.

Alles halb so will, immer mit der Ruhe ;-)

ciao

Alex

Eigentlich berechnet die CPU die Koordinaten. Die Physx berechnet eigentlich nur deren physikalischen Veränderungen, z.B. wie sich ein Fass dabei verhält, wenn man ein zweites dagegenwirft.
 
Eigentlich berechnet die CPU die Koordinaten. Die Physx berechnet eigentlich nur deren physikalischen Veränderungen, z.B. wie sich ein Fass dabei verhält, wenn man ein zweites dagegenwirft.
Die "physikalischen Veränderungen" sind ja wohl die Koordinaten. Wenn ein Fass umfällt, dann ändern sich einfach nur die Koordinaten, also die Position, vom Fass. Und diese Daten werden in der Physikkarte berechnet und auch vorgehalten... Das ist ja gerade der Vorteil der PhysX Karte: der eigene Speicher. Dort kann man nämlich wunderbar tausende Koordinaten von Objekten speichern...
 
Ich dachte immer, dass die Karte Verformungen an Körpern berechnet. Also nicht die Position von Körpern, sondern ihre Veränderungen bedingt durch äußere Einflüsse. ...


Gruß,

Josh
 
Die kann auch ne ganze Gerölllawine berechnen, die dir auf nem Berg entgegenkommt. Da werden Verformungen wohl kaum berechnet. Höchsten an die an deinem Körper ;)
 
Und Verformungen sind auch nur Änderungen am Gitter des Objekts, was auch aus Koordinaten besteht ;)
 
Hi,

das Ende und der Anfang einer neuen Technik:
NVIDIA kauft PhysX-Hersteller AGEIA[

Was ehrgeizig begonnen worden ist, ist nun vorerst Geschichte, aber kein Reinfall. Könnte doch Nvidia dafür sorgen, dass die Ansätze von PhysX-Hersteller AGEIA weitere und unbedingt erforderliche Verbreitung findet.

Greetz
neax;)
 
Zurück
Oben Unten