PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Wieviele "Pipes" hat der R520 wirklich//Splitt aus dem G80-Thread


Gast___
2006-09-20, 06:39:37
Ist das gleiche wie mit dem R520: Hat er wirklich 32 Pipelines, wie es VR-Zone behauptet hatte? Nein, aber wenn man auf die Architektur einen Blick wirft, könnte es rein rechnerisch (wortwörtlich) stimmen.

Erzähl mal... Oder ist das wieder einer der Unsinn-Sätze, die sich einfach so in deine Postings schleichen ohne das du's merkst?

Gast_
2006-09-20, 10:25:35
Erzähl mal... Oder ist das wieder einer der Unsinn-Sätze, die sich einfach so in deine Postings schleichen ohne das du's merkst?

16 TMU-Pipelines und 16 ALU-Pipelines.

deekey777
2006-09-20, 12:58:24
So und jetzt erklaer mir aber mal bitte wie man "rein rechnerisch" mit 16 ROPs, 16 TMUs, 16 ALUs und 16 SIMD Kanaelen auf "32 pipes" kommen kann; nicht nur dass ich wuerde liebend wissen wieviel "pipes" ich fuer G70 oder noch schlimmer fuer R580 rechnen muesste.


Wieviele Quads kann eine R520-Pipeline (4*TMUs <-> Dispatcher <-> 4*ALUs) parallel berechnen? Ein Quad bekommt seine Texturen, ein weiterer Quad bekommt seine Farbe im PS-Teil ab. Das sind rein rechnerisch 8 Quads. Der G70 hat eine "klassische" Pipeline: 4*TMU->ALU->ALU; jeder Quad(/Pixel) dreht sich im Kreis, bis er fertig ist. Der G70 hat 6 solche "Pipelines", also können 6 Quads aufeinmal berechnet werden.
Ein Quad ist eine Kachel, die 2x2 Pixel enthält, also 4 Pixel. Alles reinrechnerisch.


Persoenlich wuerde es mich kein bisschen wundern, wenn G80 eher der R580 Logik generell naeher rueckt als alles andere; und dass heisst jetzt nicht so und so viele quads oder ALUs, sondern ich wuerde eher denken was G7x/NV4x genau im Vergleich zur Konkurrenz fehlte.
Eine Entkopplung der TMUs wäre denkbar, denn die zweite ALU scheint nur deswegen integriert worden zu sein, um dem möglichen Stal entgegenzuwirken (bei dependant tex ops).

;)



Gast___, solltest du der "Gast" sein, der seine Postings als Gast sonst mit "Q" signiert, mach das bitte wieder.

robbitop@work
2006-09-20, 13:07:12
Wieviele Quads kann eine R520-Pipeline (4*TMUs <-> Dispatcher <-> 4*ALUs) parallel berechnen? Ein Quad bekommt seine Texturen, ein weiterer Quad bekommt seine Farbe im PS-Teil ab. Das sind rein rechnerisch 8 Quads. Der G70 hat eine "klassische" Pipeline: 4*TMU->ALU->ALU; jeder Quad(/Pixel) dreht sich im Kreis, bis er fertig ist. Der G70 hat 6 solche "Pipelines", also können 6 Quads aufeinmal berechnet werden.
Ein Quad ist eine Kachel, die 2x2 Pixel enthält, also 4 Pixel. Alles reinrechnerisch.

Demirug meinte mal, dass es beim Dispatcher wohl nicht für TMU Erhöhung gereicht hat.

Ich wäre mir nicht so sicher, dass das Quasar ist. Der signiert seine Postings eigentlich immer brav.

Ailuros
2006-09-20, 13:29:14
Wieviele Quads kann eine R520-Pipeline (4*TMUs <-> Dispatcher <-> 4*ALUs) parallel berechnen? Ein Quad bekommt seine Texturen, ein weiterer Quad bekommt seine Farbe im PS-Teil ab. Das sind rein rechnerisch 8 Quads. Der G70 hat eine "klassische" Pipeline: 4*TMU->ALU->ALU; jeder Quad(/Pixel) dreht sich im Kreis, bis er fertig ist. Der G70 hat 6 solche "Pipelines", also können 6 Quads aufeinmal berechnet werden.
Ein Quad ist eine Kachel, die 2x2 Pixel enthält, also 4 Pixel. Alles reinrechnerisch.

Nur hab ich Dir gerade vorher erklaert wie die Kake damals ins Netz kam. Ich hab sogar die e-mail Kopie von damals irgendwo verfrachtet und sogar mit mehr Einzelheiten und Namen.

Zur Rechenuebung oben hab ich nur eins zu sagen, dass erstmal seit langer Zeit die Beschreibung einer "pipeline" auf viele Arten falsch interpretiert werden kann. Seit wir in der quasi "quad-Aera" sind, kommt bis jetzt jeder SIMD Kanal mit einer TMU (oder pro quad = 4 TMUs). Welche GPU genau hatte bis jetzt mehr SIMD Kanaele als TMUs genau? Im Fall wo man in heutigen Spielen eine RV530 mit einer G73 vergleicht, sieht man wohl eher schnell dass es Unterschiede zwischen einem "fetten" (fortschrittlecherem) und einem etwas "traditionellerem" quad geben kann. Es gibt eben noch eine Kleinigkeit die Texelfuellrate heisst beim multitexturing und leider sind heutige Spiele noch nicht so fortschrittlich um mehr auf Arithmetik zu beruhen.


Noch schlimmer sieht es aus als ob wir "quads" so langsam als Beschreibung auch loswerden muessen. Kann man am Ende Xenos entweder mit "pipelines" oder "quads" wirklich schon heute beschreiben?

Gast___, solltest du der "Gast" sein, der seine Postings als Gast sonst mit "Q" signiert, mach das bitte wieder.

Uhmm wie soll ich das jetzt verstehen? Der obrige Satz liegt direkt unter meinem quote, kann also nicht an mich gerichtet sein. :confused:

deekey777
2006-09-20, 14:50:17
Nur hab ich Dir gerade vorher erklaert wie die Kake damals ins Netz kam. Ich hab sogar die e-mail Kopie von damals irgendwo verfrachtet und sogar mit mehr Einzelheiten und Namen.
Ich wollte nur schreibe, wie ich es hinkriege, dass der R520 32 Pipes hat.

Zur Rechenuebung oben hab ich nur eins zu sagen, dass erstmal seit langer Zeit die Beschreibung einer "pipeline" auf viele Arten falsch interpretiert werden kann. Seit wir in der quasi "quad-Aera" sind, kommt bis jetzt jeder SIMD Kanal mit einer TMU (oder pro quad = 4 TMUs). Welche GPU genau hatte bis jetzt mehr SIMD Kanaele als TMUs genau? Im Fall wo man in heutigen Spielen eine RV530 mit einer G73 vergleicht, sieht man wohl eher schnell dass es Unterschiede zwischen einem "fetten" (fortschrittlecherem) und einem etwas "traditionellerem" quad geben kann. Es gibt eben noch eine Kleinigkeit die Texelfuellrate heisst beim multitexturing und leider sind heutige Spiele noch nicht so fortschrittlich um mehr auf Arithmetik zu beruhen.
Bei der X1600 rege ich manchmal auf, wenn irgendwo steht, sie hätte 4 Pipelines mit je 3 ALUs oder 4 TMUs mit je 3, was sie aber nicht hat. Was sie hat bzw. ihre "Pipeline", wären 4 TMUs <-> Dispatcher 12 ALUs. Und jetzt kommt eine weitere Frage: Bearbeiten die einzelnen 12 ALUs 3 Quads nebeneinander/parallel ("Pixel/ALU") oder nur einen Quad hintereinander (Pixel/ALU->ALU->ALU) wie in etwa beim G70? In den meisten Artikeln steht, dass es tatsächlich 12 Pixel pro Takt sind (auch die "Thread"-Größe von 4:12 spricht dafür). Nur ein einziger Redakteur meinte, dass es logischer erscheint, dass 3 ALUs hintereinander liegen.

Noch schlimmer sieht es aus als ob wir "quads" so langsam als Beschreibung auch loswerden muessen. Kann man am Ende Xenos entweder mit "pipelines" oder "quads" wirklich schon heute beschreiben?
Beim Xenos gibt es 4x4 große Threads pro SIMD-Kanal, die aus 4x4 Pixeln oder 16 Vetrizen bestehen. Hoffentlich gilt das nicht für den R600.
Fast ein Jahr alt:
http://www.forum-3dcenter.org/vbulletin/showpost.php?p=3541428&postcount=10349
:)

Uhmm wie soll ich das jetzt verstehen? Der obrige Satz liegt direkt unter meinem quote, kann also nicht an mich gerichtet sein. :confused:

Es war an den Gast__ gerichtet.

Ailuros
2006-09-20, 15:41:45
Bei der X1600 rege ich manchmal auf, wenn irgendwo steht, sie hätte 4 Pipelines mit je 3 ALUs oder 4 TMUs mit je 3, was sie aber nicht hat. Was sie hat bzw. ihre "Pipeline", wären 4 TMUs <-> Dispatcher 12 ALUs. Und jetzt kommt eine weitere Frage: Bearbeiten die einzelnen 12 ALUs 3 Quads nebeneinander/parallel ("Pixel/ALU") oder nur einen Quad hintereinander (Pixel/ALU->ALU->ALU) wie in etwa beim G70? In den meisten Artikeln steht, dass es tatsächlich 12 Pixel pro Takt sind (auch die "Thread"-Größe von 4:12 spricht dafür). Nur ein einziger Redakteur meinte, dass es logischer erscheint, dass 3 ALUs hintereinander liegen.

Gute Frage, wobei mir als Laie trotz allem die single quad These nicht besonders viel Sinn macht; eine Frage die Du eher an Profis wie Demi richten solltest.

Beim Xenos gibt es 4x4 große Threads pro SIMD-Kanal, die aus 4x4 Pixeln oder 16 Vetrizen bestehen. Hoffentlich gilt das nicht für den R600.
Fast ein Jahr alt:
http://www.forum-3dcenter.org/vbulletin/showpost.php?p=3541428&postcount=10349
:)

Der Unterschied ist hier dass ich mit einer Beschreibung der Art: 3* 16-way SIMD zufrieden waere, aber nicht mit irgend etwas dass mit quads oder pipelines im normalen verkorksten Gebrauch zu tun haette.

deekey777
2006-09-20, 22:51:30
Gute Frage, wobei mir als Laie trotz allem die single quad These nicht besonders viel Sinn macht; eine Frage die Du eher an Profis wie Demi richten solltest.


Es macht tatsächlich keinen Sinn, wenn 3 ALUs zu einem starren "Block" seriell zusammengefasst sind. Wenn, dann höchstens so:


A1 -> B1 -> C1
| | |
A2 -> B2 -> C2
| | |
A3 -> B3 -> C3
| | |
A4 -> B4 -> C4

Oben sitzt der Dispatch-Prozessor, der 128 Batches verwaltet, jeder Batch ist 4 zu 12 Pixel groß, also 4 Quads, von denen ein seine Texturen bekommt, die anderen (schon) ihre Farben.
Quad I kommt in den Block A, Quad II in den Block B, Quad III in den Block C, wobei diese Reihenfolge auch anders sein kann (A in III, B in I, C in II). Quad I verläuft den Weg ABCABCABC, Quad II dann BCABCABCA, also immer nacheinander, bis die Rechnerei fertig ist. Werden für den Quad I bestimmte Tex-Daten benötigt, bleibt er nicht in einem der ALU-Blöcke und blockiert diese, sondern fliegt raus, bis er die benötigten Daten bekommt, seinen Platz nimmt dann der Quad D ein.

Ergibt das irgendeinen Sinn?

ShadowXX
2006-09-21, 12:27:00
Es macht tatsächlich keinen Sinn, wenn 3 ALUs zu einem starren "Block" seriell zusammengefasst sind. Wenn, dann höchstens so:


A1 -> B1 -> C1
| | |
A2 -> B2 -> C2
| | |
A3 -> B3 -> C3
| | |
A4 -> B4 -> C4

Oben sitzt der Dispatch-Prozessor, der 128 Batches verwaltet, jeder Batch ist 4 zu 12 Pixel groß, also 4 Quads, von denen ein seine Texturen bekommt, die anderen (schon) ihre Farben.
Quad I kommt in den Block A, Quad II in den Block B, Quad III in den Block C, wobei diese Reihenfolge auch anders sein kann (A in III, B in I, C in II). Quad I verläuft den Weg ABCABCABC, Quad II dann BCABCABCA, also immer nacheinander, bis die Rechnerei fertig ist. Werden für den Quad I bestimmte Tex-Daten benötigt, bleibt er nicht in einem der ALU-Blöcke und blockiert diese, sondern fliegt raus, bis er die benötigten Daten bekommt, seinen Platz nimmt dann der Quad D ein.

Ergibt das irgendeinen Sinn?
Ich würde den Dispatch-Prozessor nicht zu "hoch" bewerten. Demi meinte mal, dass die r580 Pipe wesentlich konservativer ist als das, was die Schaubilder versuchen einem weiszumachen (siehe auch "Ringbus"-Controller, der alles mögliche aber kein echter Ringbus ist).

Ebenfalls bin ich der Meinung das Demi mal anmerkte, das die (3) ALUs (jeweils) nebeneinander (also parallel) geschaltet sind.

Gast
2006-09-21, 22:37:59
Gast___, solltest du der "Gast" sein, der seine Postings als Gast sonst mit "Q" signiert, mach das bitte wieder.

Schön, so eine feste IP, was? ;-) Nuja, du hast ja selbst vor ein paar Postings/Seiten gesagt, dass du manchmal Unsinns-Sätze schreibst.


Btw, zu den 8 Quads: Ich glaube nicht, dass wir schon soweit sind, ALUs und TMUs einzeln zu zählen. Oder hat bsw. der R300 nur zwei MADD-Quads, vier ADD-Quads (halb Vec3, halb Skalar), ein halbes Quad für komplexere Funktionen wie SIN, LOG oder POW?

Oder hat der NV40 ein vier NRM_PP-Quads extra?


Zum Thema Ringbus habe ich noch was schönes gefunden. Ich hatte es eine ganze Weile gesucht, aber erst jetzt wieder auf einer DVD-RAM entdeckt:
http://home.arcor.de/quasat/3DC-Pics/X800_IO_Ring.JPG
(die URL sollte neben meiner IP auch Aufschluß geben, ob ich ein "Q" unter mein Posting schreiben sollte oder nicht ;))


Q

P.S.: Robbi, ich werde alt und manchmal vergeßlich.

Gast
2006-09-21, 22:39:34
Ebenfalls bin ich der Meinung das Demi mal anmerkte, das die (3) ALUs (jeweils) nebeneinander (also parallel) geschaltet sind.

Das sollten sie auch sein, denn ansonsten gäbe es keinen Grund, die Thread-Size vom R520 ausgehend, wieder zu vergrößern.


Q

robbitop@work
2006-09-22, 10:06:52
Ich glaube nicht, dass wir schon soweit sind, ALUs und TMUs einzeln zu zählen.
Noch ist es ja noch so, dass wir feste Quadpipelines haben. Auch beim R580 sollte das noch der Fall sein. ATI hat ja mit den tollen Diagrammen über das Threadingkonzept und mit dem Ringbus viel Wind um (fast) nichts gemacht. Oder einen Elefanten aus einer Mücke gemacht...

Somit haben Quads unterschiedliche Fähigkeiten. Meist können sie einen Pixelquad texturieren (mit bi samples) und dazu kommt noch mindestens eine 4 fach ausgelegte Vec4 ALU.
Ob die dabei Splitting beherrscht, Dual Issue oder ob deren MiniALU noch (wie bei den Radeons) ein ADD oder eine SFU dazusteuern kann, macht eben die Unterschiede in den Architekturen aus. Aber deshalb hat eine Architektur nicht unterschiedlich verschiedene Quadunits. Die Anzahl an Quadpipelines ist bisher fix.
Pipelines wird es auch weiterhin geben, nur evtl in der Zukunft keine festen Quadpipes mehr.

Gast
2006-09-22, 10:27:11
Pipelines wird es auch weiterhin geben, nur evtl in der Zukunft keine festen Quadpipes mehr.

Das hoffe ich doch sehr. Ich warte schon sehnsüchtig auf den "Sea of Processors". ;-)

deekey777
2006-09-23, 00:14:57
Jetzt will ich es wirklich wissen: Wieviele Quads kann ein R520 wirklich aufeinmal berechnen?

Weiterhin habe ich in einem anderen Forum gelesen, dass der R300 das 1010102 genauso gut unterstützt hat wie der R520 heute, bevor er releast und diese Unterstützung aus dem Release-Treiber entfernt wurde (und nie wiederkam).

Zusätzlich: http://www.forum-3dcenter.org/vbulletin/showthread.php?t=252237&highlight=r520

aths
2006-09-23, 06:51:02
Jetzt will ich es wirklich wissen: Wieviele Quads kann ein R520 wirklich aufeinmal berechnen?

Weiterhin habe ich in einem anderen Forum gelesen, dass der R300 das 1010102 genauso gut unterstützt hat wie der R520 heute, bevor er releast und diese Unterstützung aus dem Release-Treiber entfernt wurde (und nie wiederkam).

Zusätzlich: http://www.forum-3dcenter.org/vbulletin/showthread.php?t=252237&highlight=r520Soweit ich weiß, kann der R300 beim 10-10-10-2-Format noch kein MSAA.

Wie viele Quads der R520 auf einmal berechnen kann ist eine Frage die in der Praxis beinahe ohne Relevanz ist. Wichtig ist nur, was hinten rauskommt – und wie schnell das geschieht. Wie viele Quads gleichzeitig in den Pipes sein können ist für uns wurscht. ATI muss versuchen, zwischen Auslastung und Chipgröße einen optimalen Mittelweg zu finden. Mehr Quads zu halten heißt, mehr Register zu brauchen.

Deine Frage geht ungefähr in die Richtung "ich will endlich mal wissen, wie groß Cache XYZ ist". Interessante Frage, aber die genaue Zahl ist ohne Belang. Fähige Ingenieure machen den Cache so groß, dass er seine Aufgabe erfüllt (Latenzen weitgehend zu vermeiden) und so klein, wie es gerade noch geht, um Transistoren zu sparen.


Ebenfalls bin ich der Meinung das Demi mal anmerkte, das die (3) ALUs (jeweils) nebeneinander (also parallel) geschaltet sind.Soweit ich weiß, rechnet jede "Pipeline" aus TMU und 3 ALUs immer an 3 Quads (die die gleichen Renderstates haben.) Die Granularität wird also von 1 Quad (R520, RVdings, die X1300) auf 3 Quads (R580, RVdings, die X1600) vergrößert. Die "Dispatcher" genannte Unit sorgt einfach dafür, dass nach Möglichkeit die Pipe immer ausgelastet ist und lässt, während für die einen Quads gesampelt wird, für andere Quads die ALU-Operationen durchrechnen.

Pipelines wird es auch weiterhin geben, nur evtl in der Zukunft keine festen Quadpipes mehr.Da wüsste ich gerne, wie du den LOD berechnen möchtest.

Gast
2006-09-23, 17:00:30
Blöde Frage - wieviel GFLOPs hat der R520 ?

MechWOLLIer
2006-09-23, 19:48:46
Wenn man die ADDs mitzählt 120 GFLOPs

Gast
2006-09-23, 20:40:49
Wenn man die ADDs mitzählt 120 GFLOPs

:) Danke
Dachte ich mir auch ...

16ALUs * 12 FLOPs * 0.625GHz = 120 GFLOPs

Raff
2006-09-23, 21:52:43
Ansichtssache. Die "inoffizilelle" X1800 XT-PE (ebenfalls R520) hat demnach ~134 GFLOP/s.

MfG,
Raff