Caimbeul schrieb:
Die GPU einer GF oder ATI repsektive einer Onboardlösung ist vom Aufbau identisch mit der einer PhysX Karte?
Die unterscheiden sich natürlich schon. Der PhysX ist deutlich besser auf seine zu erledigenden Aufgaben zugeschnitten als eine GPU, aber trotzdem ist eine GPU auch ganz gut geeignet.
Die Operationen, die in beiden Fällen (Grafik- und Physikberechnungen) am häufigsten verwendet werden sind sogenannte Multiply-Adds. Der G80 zum Beispiel kann pro Shader (128 bei der 8800 GTX) eine MADD Operation pro Takt ausführen. Der PhysX hat 16 Kerne, die so eine Operation durchführen können.
Die Graka ist in der Hinsicht also schon einmal weit leistungsfähiger, zumal sie zusätzlich noch viel höher getaktet ist. Der PhysX läuft nur mit 250 MHz. Bei der GTX liegt der shadertakt bei 1350 MHz.
Liegt es also nur an den Treibern wie diese GPU verwendet würde, so das bei Nutzung einer Steckkarte im PCI-e Slot die Onboardlösung per Zusatztreiber für PhysX-Arbeit genutzt werden könnte, oder gibt es hier auch hardwareseitige Unterschiede der GPUchips?
Was die Gaka berechnen soll entscheidet ganz alleine der Entwickler. Die Shader der Karte sind ja völlig frei programmierbar und seit DX10 gibt es da kaum noch Grenzen, die den Entwickler einschränken.
Neben der Physik gibt es aber auch noch diverse andere Aufgaben, die man sinnvollerweise auf die GPU auslagern könnte.
Ich warte ja noch darauf, bis irgend jemand mal einen realistsichen Sound berechnet indem er mit den Geometriedaten der Graka rechnet. Tonfrequenzen sind ja nicht anderes als Lichtfrequenzen. Die Graka muss also nichts anderes machen, als Lichtquellen berechnen, die an den Objekten reflektiert werden. Diese Objekte können auch noch Soundtexturen bekommen, die die Frequenz ja nach ihrer Beschaffenheit ändern und Shaderprogramme können den Sound zusätzlich mit Effekten versehen.
Diese Berechnungen müssen noch nicht einmal hochauflösend sein, sondern müssen nur ganz grob geschehen. Bei der Grafik sind matschige Texturen etwas Schlechtes, aber beim Sound hingegen ist es nicht tragisch. Ein matschiges Klangbild bedeutet nur, dass es sanfte Klangübergänge zwischen den einzelnen Berechnungen gibt.
Wenn man dann auch noch die Physik auf der Graka berechnet, dann kann man sogar die Kollisionspunkte der Objekte mit einer Soundquelle versehen. Wenn anschließend dutzende von Objekten kollidieren und alle eine eigene Soundquelle darstellen, die dann zu einer gemeinsamen Geräuschkulisse gemischt werden, dann man man echt den perfekten Sound, der sich an die geometrische Umgebung anpasst.
Ich weiß nur nicht ob das alles von mir nur eine naive Wunschvorstellung ist, aber theoretisch müsste all das doch möglich sein, oder?
Meine einzigen Bedenken liegen darin, wie man die berechneten Sounddaten ohne große Lags an die Soundkarte übertragen soll. Eventuell lässt sich sowas aber demnächst auch schon direkt auf den Grakas erledigen, wenn die Hersteller dort auch noch ihre Soundchips integrieren, wie das schon jetzt beim R600 der Fall ist.
Ich seh's schon kommen. Demnächst brauchen wir noch mehr Ram auf den Grakas, weil dort auch die Sound Samples abgelegt werden müssen. *g*
//EDIT:
So wie es aussieht haben sich schon einige damit befasst.
Perceptual Audio Rendering of Complex Virtual Environments
Und ATi hat sich dazu auch schon vor längerem geäußert. Es scheint also wirklich ein weiteres sinnvolles Anwendungsgebiet für die GPU zu sein. Wenn das so weiter geht hat die CPU bald gar nichts mehr zu tun und wir haben nur noch eineeinzige Multimediakarte im PC stecken, die für Grafik, Audio, Physik, Ki und was ich nicht alles zuständig ist.