AMD lässt die Berechnung wohl auf den normalen Einheiten ausführen
Wenn deren Patent tatsächlich die aktuelle Implementation beschreibt, dann tun sie das nicht. Gemäß diesem gibt es in den TMUs eine spezelle RT-Einheit, insbesondere mit einer eigenen Intersection-Engine, die die Berechnungen ausführt *), also vergleichbar zu den RT Cores von nVidia. Der einzige (derzeit bekannte) Unterschied ist, dass AMD nach jeder einzelnen Intersection-Berechnung das Ergebnis mitsamt eines Pointers auf die nächste BVH-Struktur an den SP zurückgibt, der dann entscheiden kann, ob er den Strahl weiterverfolgen will oder nicht. Die Raytracingberechnung erfolg jedoch in den speziell dafür bereitgestellten Hardwareinheiten in den TMUs.
*) Anders wäre es auch grundlegend gar nicht implementiertbar, da in den frei verwendbaren SPs zu viele Rechenoperationenperationen für eine einzelne Intersection-Berechnung ausgeführt werden müssten. Ohne eine spezialisierte FixedFunction-Einheit würde es schlicht langsamer werden.
**) In die Verlagerung der RT-Berechnung (bei AMD) in die TMUs sollte man auch nicht zu viel hineininterpretieren. Möglicherweise musste AMD schlicht einen anderen Ort für deren Implementation finden, um einer möglichen Patentverletzung mit Blick auf nVidia's Implementation aus dem Weg zu gehen.
Am Ende bleibt vereinfachend der Unterschied, dass nVidia (aktuell) einen Strahl direkt bis zum definierten Limit in einem Stück nachverfolgt in ihrem RT Core, während AMD nach jeder einzelnen Intersection-Berechnung von dem TMUs zum SP zurückspringt. Letzteres könnte mehr Flexibilität versprechen, bindet die SPs aber auch mehr ein und erscheint daher tendenziell etwas langsamer. Was in welchen Szenarien im Einzelnen besser abschneidet, wird man abwarten müssen. Darüber hinaus ist auch noch nicht klar wie Ampere die "neuen" RT Cores implementieren wird. Auch hier ist keinesfalls gesagt, dass nVidia unverändert deren Design von Turing übernimmt.
Sehr sehr gut, ich glaube nicht, dass nvidias Idee die teure knappe Chipfläche mit Einheiten zu belegen, die quasi "RT-Only" sind, sich auszahlen wird. [...]
Das ist ein Trugschluss. Die Krux ist hier schlicht, dass zu dem ganzen bisherigen "
Gedöns", dass eine aktuelle GPU in typischer Rasterizer-Art berechnet, nun
zusätzlich noch weitaus mehr Berechnungn für Raytracing parallel ausgeführt werden sollen (mit denen das Bild schlussendlich "
aufgehübscht" werden soll). Dementsprechend geht es grundsätzlich nicht ohne mehr Transistoren und damit mehr Chipfläche.
Würde man die Berechnungen auf die regulären Shader Prozessoren verlagern wird es gleich doppelt langsam: Einerseits geht der Rechenteil, der für Raytracing aufgewendet wird, den SPs für ihre reguläre Arbeit verloren, d. h. FPS sinken und man muss ggf. die Darstellungsqualität und/oder Bildauflösung verringern. Darüber hinaus wird der verbleibende Teil an Rechenkapazität, der den SPs bleiben würde, sogar überproportional kleiner, weil die SPs die Intersection-Berechnungen mit einer Vielzahl einzelner Operationen berechnen müssen, was zusätzliche Performance kostet, d. h. in diesem konkreten Fall wäre es grundsätzlich von Nachteil keine spezialisierten FixedFunction-Einheiten für die Intersection-Berechnungen zur Verfügung zu haben.
Will man Raytracing, geht kein Weg an größeren Chips mit mehr Transistoren vorbei, oder aber es kostet extrem viel Leistung. Während bspw. BF5 an vielen Stellen noch mit wenig Raytracing aufwartet (je nach aktueller Szene und Blickrichtung; zudem ausschließlich Spiegelungen) und daher noch halbwegs auf Pascal mit aktiviertem Raytracing spielbar ist, würde ein Testlauf mit bspw. dem weitaus Raytracing-lastigeren Control bzgl. der Bildraten auf Pascal extrem einbrechen und quasi unspielbar werden.
Wenn man Raytracing aktuell nichts abgewinnen kann, hat man leider etwas Pech, denn das ist aktuell das
next big thing und dementsprechend wird ein nennenswerter Teil der Ressourcen (entwicklungs- wie chiptechnisch) darauf verwendet und das Ganze wird größtmöglich über die gesamte Produktpalette gestreut um es wirtschaftlich rentabel zu machen, denn die Entwicklung und Fertigung wird immer teuerer und die Chips zwangsweise immer größer.