PhysX bremst CPUs aus

Nvidia scheint absichtlich veraltete Techniken zu nutzen

PhysX arbeitet auf Nvidia-GeForce-Grafikkarten schneller als auf CPUs – das ist kein Geheimnis. Neu ist die Erkenntnis, dass dies zum Teil am Programmcode liegt. Über Intel VTune, ein Programm für Software-Entwickler, haben die Kollegen von Real World Technologies herausgefunden, dass PhysX bei CPU-Einsatz veraltete x87-Befehle zur Gleitkommaberechnung nutzt. Intel rät seit 2001, AMD seit 2003 von der Verwendung der Technik ab, da SSE- bzw. SSE2-Befehle x87 abgelöst haben. Trotzdem nutzt PhysX diese Technik.

Anzeige

Nvidia könnte nun argumentieren, dass die x87-Befehle die doppelte Genauigkeit bieten. Das wäre allerdings ein zweifelhaftes Argument, da PhysX ja auch auf der GPU nicht mit der doppelten Genauigkeit arbeitet. Auch älterer Programmcode scheidet als Ursache aus, da PhysX erst 2006 erschien und 2008 durch Nvidia übernommen wurde – lange nachdem AMD und Intel von x87 abgeraten hatten.

Als letztes Argument könnte Nvidia noch behaupten durch die x87-Befehle alte CPUs ohne SSE oder SSE2 unterstützen zu wollen. Doch diese alten CPUs dürften gerade in Spielerechnern so gut wie nicht mehr zu finden sein. Zudem nutzt PhysX auf Konsolen-CPUs die ähnlichen AltiVec-Erweiterungen. Laut Real World Technologies nutzt Nvidia die veralteten x87-Befehle demnach kaum aus technischer Sicht sondern weil aktuelle CPUs mit modernen Techniken sonst in PhysX genau so schnell rechnen würden wie Nvidias GPUs. Und dann könnte Nvidias PhysX auf Grafikkarten nicht mehr beeindrucken.

Eine Stellungnahme Nvidias zur Analyse der Kollegen steht noch aus.

Quelle: RealWorldTechnologies

André Westphal

Redakteur

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert