Neue Details: Ampere und GTX-30-Series Deep Dive

Wenn Du diese Anzeige nicht sehen willst, registriere Dich und/oder logge Dich ein.
Ist in dem Artikel, zu dem du diskutierst ganz gut erklärt, einfach lesen ;)
Das ist mMn ziemlicher Marketing-BS, aber wenns nur das ist und alle anderen Slides passen solls mir recht sein

investoren und vorstandsfolien, einige hübsche zahlen und balken für leute die keinen deut haben was sie vorgesetzt bekommen, die kann man nehmen und dann 1:1 in ner dunklen ritze verschwinden lassen...

edit: als mittlerweile eher amd zugetan bin ich trotzdem sehr gespannt was daherkommt, sollte unterm strich auch bereinigt nen schönes leistungsplus ergeben
 
Also: Turing hat pro SM 64 FP32- + 64 INT32-Einheiten. Für Ampere hat man nun pro SM 64 FP32-Einheiten + 64 FP32/INT32-Einheiten. Also hat man die FP32-Leistung bzw. die Anzahl der Recheneinheiten verdoppelt. Was man nicht machen kann ist, das 128 FP32- und 64 INT32-Einheiten gleichzeitig zu nutzen. Aber darauf gehen wir zum Start und den Benchmarks dann noch ein.
Ich habe gerade nochmal nachgeguckt und anscheinend hat man bisher, warum auch immer, nur die FP32-Einheiten gezählt. Die 2080ti hat 68 SMs a 64x FP32 + 2x FP64 + 64xINT32 und ist (laut Wikipedia) mit 4352 Shadern angegeben. Würden die INT32 mitgezählt, müssten es aber 8704 sein und wenn man die FP64 auch noch mitzählen würde sogar 8840. Insofern mag eine verdoppelte Anzahl also sogar doch korrekt sein.

Dann stelle ich mir eher die Frage, warum man bisher so beschissen gezählt hat, bzw es generisch als "Shader" und nicht direkt als FP32-Einheiten angegeben hat.

Beruhigend, das ich keine Infos finde, was denn bei AMD so als "ein Shader" gezählt wird, z.B. bei dem Navi10 einer 5700xt... NICHT. Zählen die dann wenigstens gleich (unsinnig oder zumindes unsinnig deklariert)?

Und daraus ergibt sich dann wiederrum:
Wenn man soviel FP32- aber ja so wenig INT32-Leistung braucht, warum hat man dann bisher überhaupt 64+64 verbaut und nicht etwa 64+32?
Oder aber, wenn man die INT32-Einheiten ja doch in genügender Anzahl braucht, dann kann es wiederrum passieren, das die 3000er ihre supertolle FP32-Anzahl leistungsmäßig ja doch wieder nicht auf die Strasse bringt, weil man mit der Hälfte oder einem (nennenswerten) Teil der "Shared"-Einheiten ja dann doch kein FP32 rechnen kann, weil man sie weiterhin für INT32 braucht. Sicherlich kann man damit jetzt genauer abstimmen, was genau gebraucht wird (wenn auch nur pro SM), aber das wiederrum heisst auch, das die FP32-Shaderanzahl ziemlich nichtssagend ist, weil sowieso niemals alle 10496 FP32-Einheiten (einer 3090) auch wirklich FP32 rechnen können werden.
 
Zuletzt bearbeitet:
Ich würde mich da nicht so fest nur auf die Bezeichnungen versteifen, denn das führt schon in die Irre. Ampere ist was die Funktionalität der ALUs an sich betrifft einfach flexibler geworden. Man kann den ALUs nun genauer sagen ob sie nur FP32 oder parallel(!) zu FP32 noch INT32 berechnen sollen. So können dann ja auch die kompletten 10496 ALUs der 3090 für FP32-Berechnungen genutzt werden, falls dies für die Anwendung von Vorteil wäre. In der Praxis scheint aber je nach Anwendung (Game) immer ein Mix - und das ist hier das entscheidende Merkmal - aus FP32 und INT32 vorzuliegen. Der große Vorteil von Turing war es das parallel(!) zu FP32 auch INT32 verarbeitet werden konnte. Es ist daher nicht unbedingt zielführend zu denken, dass wenn stattdessen nur FP32 ausgeführt werden würde dies auch die schnellere Lösung wäre.
 
Ich würde mich da nicht so fest nur auf die Bezeichnungen versteifen, denn das führt schon in die Irre.
Gerade die "falsche" oder unvollständige Bezeichnung führt imho in die Irre. Vorallem weil sich ja gerade zeigt das Shader nicht gleich Shader ist.
Das die flexible Verteilung unterm Strich besser ist, ist schon klar, vorallem wenn die durchschnittliche Anforderung eben nicht 50% P32 und 50% INT32 ist. Das macht die reinen Zahlenwerte aber auch weniger aussagekräftig.

Das DF-Video zeigts im Prinzip schon. Da wird die 2080 mit der 3080 verglichen. Die 2080 hat 2944 FP32-Einheiten, die 3080 hat (theoretisch maximal) 8704 (und davon 4352 fix FP32) bei annähernd gleicher Taktrate. Nimmt man die Zahlen so direkt, sollte die 3080 eigentlich fast die dreifache Leistung bringen (und das wiederrum steckt auch in der TFlops-Angabe mit 30TFlops gegenüber den 10Tflops der 2080). Sie bringt aber "nur" 60-80% mehr (und in Doom gelegentlich 90%). Das wiederrum heisst ja, das 2/3 der flexiblen Shader nicht FP32 rechnen können, weil sie immernoch für INT32 benötigt werden.
Also ja, bestenfalls relativiert sich jetzt der Wert den man der Shaderanzahl und der theoretischen TFlops-Leistung beimessen kann (noch mehr).
 
Vorallem weil sich ja gerade zeigt das Shader nicht gleich Shader ist.

Das war aber bisher immer so. Man kann eben so etwas komplexes wie die Funktionalität der ALUs nun einmal schlecht in eine Zahl quetschen.

Das wiederrum heisst ja, das 2/3 der flexiblen Shader nicht FP32 rechnen können, weil sie immernoch für INT32 benötigt werden.

Weiß nicht ob man das wirklich so sagen kann, dürfte im Detail schon noch etwas komplizierter sein. Da müsste man wahrscheinlich noch viel tiefer in die Architekturdetails gehen um das beurteilen zu können. Aber auch hier warum denkst du, dass wenn zwei Drittel der Hybrid-ALUs in FP32 statt INT32 rechnen würde dies dann auch schneller wäre? INT32 kann ja parallel zu FP32 ausführt werden. Es liest sich jedenfalls so als ob du denkst hier würde man vorhandene Leistung irgendwie nicht nutzen können. Ich denke aber nicht, dass das so stimmt.
 
Das war aber bisher immer so. Man kann eben so etwas komplexes wie die Funktionalität der ALUs nun einmal schlecht in eine Zahl quetschen.
Oh doch, das kann man, wenn man eben die die spezifischen ALUs betrachtet, statt nur die FP32-Einheiten zu zählen und die INT32-Einheiten zu ignorieren. Statt diverse Kombinationen pauschal unter "ein Shader" zusammzufassen. Ein Turing-Shader kann eben ganz andere Sachen als ein Ampere-Shader.

Weiß nicht ob man das wirklich so sagen kann, dürfte im Detail schon noch etwas komplizierter sein. Da müsste man wahrscheinlich noch viel tiefer in die Architekturdetails gehen um das beurteilen zu können.
Was die GPU-Architektur hier kann, wissen wir einigermaßen. Was diverse Spiele wirklich brauchen ist eher unklar.


Aber auch hier warum denkst du, dass wenn zwei Drittel der Hybrid-ALUs in FP32 statt INT32 rechnen würde dies dann auch schneller wäre?
Völliger Quatsch. INT32 und FP32 ist nicht "statt" sondern "oder". Die Frage ob die irgendwas mit INT32 schneller rechnen könnten als mit FP32 oder umgekehrt stellt sich gar nicht. Die Frage ist ob die Rechenlast INT32 oder FP32 braucht. Und die Hälfte der Rechenkerne ist bei Ampere eben INT32 ODER FP32. Da ist ja bei der Hälfte eben nicht mehr "parallel". Ein SM kann ENTWEDER 64xFP32 + 64x INT32 rechnen, ODER 128x FP32. Aber es kann eben nicht 100x FP32 + 28x INT32 rechnen. Oder gar 128x FP32 + 64xINT32.

INT32 kann ja parallel zu FP32 ausführt werde
Nein, das stimmt eben nur zur Hälfte. Bei der 2080ti waren es (bin jetzt zu faul die exakten Zahlen schon wieder nachzuschlagen) 2000 FP32-ONLY Einheiten UND 2000 INT32-Einheiten (parallel). Bei der 3090 sind es 3000-FP32-ONLY-Einheiten + (3000 FP32- ODER 3000 INT32-Einheiten) (parallel oder ODER, aber eben NICHT 6000 Einheiten parallel, sondern nur maximal 3000 Einheiten PARALLEL). Wegen dem ODER können eben nicht 6000 Einheiten effektiv FP32 rechnen, weil man eben trotz allem auch noch Einheiten braucht die INT32 rechnen.

Wenn du 8 Taschenrechner vor die liegen hast, und 4 davon können nur Ganzzahlen, dann kannst du keine 8 Fließkommarechnungen parallel machen. Wenn die zweiten 4 Ganzzahlen ODER Fließkomma können, dann kannst du entweder 8 Flieskomma parallel machen ODER 4 Ganzzahl und 4 Fließkomma, in keinem Fall kannst du damit aber irgendwie 12 Rechenoperationen gleichzeitig machen.
 
Zuletzt bearbeitet:
Ist ja alles OK was du schreibst, aber mir scheint du missverstehst meinen Kontext.

Also noch einmal. Du nimmst Anwendung x, welche mit einem Mix aus FP32 und INT32 läuft. Warum sollte x nun schneller laufen, wenn du bei Ampere die Hybrid-ALUs zwingen würdest nur in FP32 zu rechnen? Du kannst doch stattdessen INT32 parallel(!) zu den FP32-ALUs laufen lassen. Das würde zwar die FP32-Leistung vielleicht etwas runter ziehen, da ein paar weniger ALUs für eben FP32-Berechnungen zur Verfügung stehen, aber insgesamt gesehen sollte x je nachdem wie wieviel INT32 gefordert wird um y% besser laufen als rein mit FP32.
 
Also noch einmal. Du nimmst Anwendung x, welche mit einem Mix aus FP32 und INT32 läuft. Warum sollte x nun schneller laufen, wenn du bei Ampere die Hybrid-ALUs zwingen würdest nur in FP32 zu rechnen?
Also nochmal. Wenn eine Anwendung mit FP32 und INT32 1:1 perfekt läuft wird sie mit Ampere auch NICHT schneller. Abgesehen davon, das Ampere allgemein mehr Shader hat. Ich habe nicht behauptet, das "irgendwas" schneller läuft. Keine Ahnung woher du das hast?

Du kannst doch stattdessen INT32 parallel(!) zu den FP32-ALUs laufen lassen. Das würde zwar die FP32-Leistung vielleicht etwas runter ziehen, da ein paar weniger ALUs für eben FP32-Berechnungen zur Verfügung stehen, aber insgesamt gesehen sollte x je nachdem wie wieviel INT32 gefordert wird um y% besser laufen als rein mit FP32.
Es braucht aber nicht jedes Programm 1:1 INT32 und FP32. Bis zu Turing war FP32 zu INT32 aber 1:1. Bei dem Bild das ich aktuell sehe waren dabei jedoch viele INT32-ONLY Shader unterfordert, weil man sie eben schlicht nicht brauchte.
Was aber eben NICHT zutrifft ist, das Ampere jetzt wegen doppelt sovielen Shadern die FP32 rechnen KÖNNTEN doppelt so schnell wäre, weil man eben TROTZDEM noch INT32 braucht und die variablen Shader dann eben NICHT alle FP32 rechnen können.
Keine Ahnung was du hier zusammenfantasierst, aber nur weil Ampere theoretisch doppelt soviele FP32-Shader hat, wenn man ÜBERHAUPT KEINE INT32 Shader bräuchte, wird in der Praxis halt nie zutreffen. Das Ampere schneller ist, habe ich nie bezweifelt, ganz im Gegenteil. Das Ampere wegen der flexiblen Shader je nach Anwendungsfall schneller sein wird, habe ich bestätigt, aber eben trotzdem nicht DOPPELT so schnell, was ja auch die DF-Tests bereits gezeigt haben.
Jetzt allmählich kapiert, was ich jetzt schon 5mal geschrieben habe? Wenn nicht, geb ich auf, ein 6tes mal umformulieren wird dann wohl auch nicht mehr helfen.
 
Ach herrje, du unterstellst mir hier Sachen. Aber ich lass das jetzt einfach mal so stehen. Bringt aus meiner Sicht nichts da noch weiter zu diskutieren und für eine "Ich hab Recht"- Diskussion fehlt mir grade auch die Motivation.
 
Ach herrje, du unterstellst mir hier Sachen.
Ich unterstelle dir gar nix.

Aber ich lass das jetzt einfach mal so stehen. Bringt aus meiner Sicht nichts da noch weiter zu diskutieren und für eine "Ich hab Recht"- Diskussion fehlt mir grade auch die Motivation.
Hier hat keiner Recht oder unrecht, sondern wir reden komplett aneinander vorbei habe ich den Eindruck.
 
Hardwareluxx setzt keine externen Werbe- und Tracking-Cookies ein. Auf unserer Webseite finden Sie nur noch Cookies nach berechtigtem Interesse (Art. 6 Abs. 1 Satz 1 lit. f DSGVO) oder eigene funktionelle Cookies. Durch die Nutzung unserer Webseite erklären Sie sich damit einverstanden, dass wir diese Cookies setzen. Mehr Informationen und Möglichkeiten zur Einstellung unserer Cookies finden Sie in unserer Datenschutzerklärung.


Zurück
Oben Unten refresh