Intels CPU-Generation 5 und 6: Broadwell und Skylake im Test

Prozessoren | HT4U.net | Seite 7

Gen 6: Skylake


Während also Broadwell im Wesentlichen ein leicht verbesserter Haswell mit neuer Fertigung ist, hat Intel bei Skylake die Fertigungsstufe bei 14 nm belassen, dafür aber unter der Haube deutliche tiefgreifende Veränderungen vorgenommen. Vieles davon lässt sich allerdings nur erahnen, da Intel nochmals weniger Informationen als zu Broadwell bekannt gibt.

Bild: Intels CPU-Generation 5 und 6: Broadwell und Skylake im Test
Sicher ist indes, dass Intel mit der sechsten Core-i-Generation das lange geführte Konzept des "Converged-Core" aufgibt. Damit bekommen also Desktop- und Mobil-Ableger eine andere (Mikro-)Architektur als die (großen) Serverableger. Die volle Ausbaustufe von Skylake werden wir also (vermutlich) erst mit Skylake-EX zu Gesicht bekommen. Darüber hinaus hat sich Intel auch von den integrierten Spannungswandlern wieder getrennt. Hier stimmt wohl schlicht die Relation zwischen Kosten und Nutzen nicht.

Weiterhin ist bekannt, dass Intel bei Skylake die Befehls-Pipeline in einigen wesentlichen Punkten überarbeitet hat. So können nun sechs, statt wie bisher vier Mikrobefehle parallel dekodieren, was in der Theorie bedeutet, dass mehr Befehle pro Takt verarbeitet werden können. Damit dies auch in der Praxis gelingt, hat Intel die Zwischenspeicher weiter vergrößert und die Sprungvorhersage optimiert. Gegenüber Haswell legen dabei besonders die Puffer für die Scheduler und das Register-File für Integer-Operanden zu. Ein Grund dürfte dabei sein, dass Skylake mehr Ausführungseinheiten besitzt bzw. besitzen kann. Bisher war der genaue Aufbau dabei reine Spekulation, doch Intels Handbuch für Programmierer zu Architektur-Optimierungen bringt hier Licht ins Dunkel (siehe Bild oben).

Zum einen hat Intel viele Einheiten der früheren Generationen nun zusammengefasst. So gibt es etwa nur zwei Vektor-Addierer, statt wie bisher zwei Vektor-Addierer und einen Gleitkomma-Addierer (zum Beispiel für vaddp). Allerdings können die neuen Vektor-Addierer auch die Befehle des ehemaligen Gleitkomma-Addierers ausführen. Damit stehen effektiv mehr Einheiten als früher für die Additionen zur Verfügung, und gleichzeitig werden die verfügbaren Einheiten nun besser ausgelastet. Weiterhin hat Intel den Shift-Operationen eine zweite Einheit spendiert, und auch einige Schiebebefehle (MOV) profitieren von mehr Einheiten. Außerdem wurde die Zuordnung von einigen Ports zu einigen Ausführungseinheiten verändert, was einen besseren Durchsatz nach sich ziehen soll.

Darüber hinaus hat Intel die Ausführung von Divisionen beschleunigt, gleichzeitig jedoch die schnelleren Multiplikationen von Broadwell wieder zurückgenommen. Offenbar hat sich diese Optimierung nicht wirklich ausgezahlt.

Bild: Intels CPU-Generation 5 und 6: Broadwell und Skylake im Test
Bild: Intels CPU-Generation 5 und 6: Broadwell und Skylake im Test
Bild: Intels CPU-Generation 5 und 6: Broadwell und Skylake im Test
Details zu Intels Skylake-Architektur für die Prozessorkerne


Ein interessanter Aspekt bei den Ausführungseinheiten ist sicherlich, dass Intel diese nun separat abschalten kann, wenn sie gerade nichts zu tun haben. Dadurch kann man deutlich an Energie sparen, gerade bei älteren nicht optimierten Anwendungen. Bisher konnten nur Teile des Pipeline-Front-Ends oder ganze Kerne abgeschaltet werden.

Auch bei den Caches war bisher vieles dem Raum der Spekulationen ausgeliefert. Allerdings bringt auch hier das Architektur-Optimierungshandbuch für Programmierer Licht ins Dunkel, mit zum Teil sehr interessanten Daten. So bleibt die Anzahl der Zugriffs-Ports für den L1-Datencache unverändert bei zwei Lese-Ports und einem Schreib-Port. Allerdings können diese nun effizienter genutzt werden, was die Bandbreite von 64 Byte/Takt auf rund 81 Byte/Takt verbessert. Weiterhin hat Intel die Assoziativität des L2-Caches von 8 auf 4 gesenkt, zumindest bei den bisher vorgestellten Skylake-Ablegern. Ein Grund dafür könnte in der einfacheren Architektur und dem damit verbundenen niedrigeren Energiebedarf liegen. Gleichzeitig sinkt jedoch auch die Leistungsfähigkeit (etwas) ab, während eine höhere Assoziativität normalerweise eine höhere Trefferquote mit sich bringt. Man darf hier sicherlich gespannt sein, wie das Cachedesign bei den größeren Skylage-Varianten aussehen wird. Außerdem steigt die Zugriffslatenz leicht von elf auf zwölf Takte an.

Auch den L3-Cache hat Intel überarbeitet, jedoch mit überraschenden Auswirkungen. So sollen die Latenzen von bisher im Schnitt 34 auf 44 Takte ansteigen. Natürlich haben wir dies nachgemessen und können bestätigen, dass sich bei Skylake die Latenzen für den L3-Cache um etwa zehn Taktzyklen verschlechtert haben. Dies dürfte der einen oder anderen Anwendung vermutlich gar nicht liegen. Allerdings hat Intel, um dies aufzufangen, das Zugriffsverhalten bei Fehlzugriffen (Cache-Misses) überarbeitet, wodurch in diesen Fällen nun eine deutlich höhere Bandbreite zur Verfügung stehen soll.

Zu guter Letzt sei noch erwähnt, dass Intel mit Skylake das Hyper-Threading durch größere Puffer verbessert haben will. Das dürfte sich dann aber allenfalls auf kleinere Modelle mit HTT auswirken, denn in den meisten Desktop-Anwendungen sind vier Kerne oft überhaupt nicht gefordert.