Nein, tue ich nicht. Keine Sorge, das war nur eine ironische Bemerkung zu y33H@s wieder mal stupider Integer Cluster Zählerei. Ich hätte wohl doch noch das Rolleys-Smilie hinmachen sollen.
Lol achso. Alles klar.
Ich beziehe mich auf die Patente. Dort werden für einen Integer Cluster zwei Issue Slots angegeben.
Hmm echt ? Verwechselst Du da nicht was mit der Dispacht Banbreite pro Cluster ?
Seit man das Bildchen hier hat:
Oder auch schon das zuvor, ist klar, dass es pro Cluster 4xissue gibt, insgesamt 12, wenn man die FPU auch noch mitzählt. Issue bezieht sich ja auf die Befehle, die der Scheduler pro Takt weiterleiten kann.
Rein gehen aber vermutlich nur je 2 Leitungen, das reicht, da es ja dicke MacroOps sind, die aus dem Dispatcher kommen.
Und offenbar gibt es Leute, die das genau so sehen im Vergleich zu zB K10. Man sollte das aber nicht zu genau nehmen. Erstens kann die letztendliche Implementierung auch eine andere sein. Und zweitens sind die Ausführungseinheiten sowieso deutlich komplexer und letztendlich nur Ergebnis der Pipeline davor. Also ja, es müssen natürlich Ports für mindestens 4 µOps pro Integer Cluster vorhanden sein, also 8 pro Modul.
Na wie schon gesagt, wenn man das gesamte Modul nimmt, dann hat man "dank" FPU 12 ;-)
Womöglich sind es sogar mehr. Da war doch mal was, dass eine AGU auch Teile der Logik der ALU nutzen kann. Bin mir allerdings nicht mehr ganz sicher, wo ich das gelesen hatte. Vorstellbar wäre daher sogar, dass eine ALU einen Port besitzt und eine AGU zwei, also 6 Ports pro Integer Cluster, 12 Ports pro Modul.
HMm, also da gabs die Hybrid Geschichte, und dann die Story, dass die AGU ein paar rudimentäre ALU Befehle kann, das war LEA. Die Hybridteile sind laut obigen Bildchen Geschichte, und das LEA Teil ist nicht neu, das kann K8/10 auch schon.
Der Punkt war einfach, wer nur stupide irgendwelche funktionalen Einheiten zählt, hat keinen Plan. So einfach ist es eben nicht, ohne die genaue Funktionsweise zu kennen.
Jo, aber irgendwas muss man halt machen. "Dank" der Modulbauweise wird das jetzt so oder so lustig, Vergleiche können da nur grob sein, da es eben ein Äpfel-Birnen Vergleich ist, den man nicht ändern kann.
Alle zusammen natürlich, also ALU + Load/Store. Das Problem bei einigen Leuten ist anscheinend, dass sie das nicht auseinander halten können. Bei AMD ist praktisch eine AGU immer an eine ALU gekoppelt, was letztendlich trotzdem mindestens 2-issue bedeutet. Bei Intel sind ALU und Load/Store mehr entkoppelt. Wobei, wie schon erwähnt, ALU und AGU bei Bulldozer auch deutlich entkoppelter arbeiten als noch bei K10.
Jo, passt dann schon, das hatte ich dann schon richtig verstanden.
Wobei ich jetzt nicht genau sicher bin, was Du mit dem "gekoppelt" meinst.
Da ändert sich doch nichts. Nach einem INT Scheduler kommen 4 µOps raus, 2ALU/2AGU, da passiert nicht viel, die Hybridteile gibts wie besagt nicht.
ciao
Alex