In meinem gestrigen Blogbeitrag ging es um die geplanten Techsessions zum Thema Programmierung während der GDC 2009, die vom 17. bis 19. August in Köln stattfindet. Mit von der Partie sind auch vier Workshops, die Intel veranstaltet. Für alle, die schon mal wissen wollen, was auf sie zukommt, folgen auf diesem Sender ein paar Infos rund um die Intel-Sessions auf der GDC’09. Und alle anderen sind natürlich auch herzlich eingeladen, sich ein wenig zu informieren.
Am Montag um 17:40 Uhr stellt sich Leigh Davies die Frage, wie Spieleentwickler Schritt halten können mit den permanenten Neuentwicklungen im Prozessorsegment – und was sie davon haben. Es geht also um aktuelle Mikroarchitekturen von Intel (Core 2, Core i7) und geplante Prozessoren (Westmere, Sandy Bridge). Letztere werden übrigens ausschließlich auf 32-nm-Basis gefertigt. An diese ständigen Veränderungen sollten sich die Spieleentwickler permanent anpassen können. Spieleprogrammierer sind vor allem dazu aufgerufen, nicht mehr ausschließlich sequenziell, sondern auch parallel zu entwickeln.
Leigh bleibt aber nicht an der Oberfläche: So wird er die letzten drei Mikroarchitekturen (Pentium 4, Core und Core i7) genauer beleuchten und die Vorteile erläutern, die vor allem die neueren Architekturen mit sich bringen. Und zu der aktuellen Core-i7-Architektur gibt es ganz besonders viele Informationen. Also solche Dinge wie verbesserte Sprungvorhersagen, höhere Speicherbandbreiten und vieles mehr.
Vor allem das verbesserte Speichersystem der Core-i7-Architektur ist für Spieleentwickler eine große Chance: Die Latenzzeiten sind im Vergleich zur Core-Architektur deutlich geringer (zirka minus 40 Prozent) und die Bandbreite konnte drastisch erhöht werden (von zirka 10 GByte/Sek. auf rund 33 GByte/Sek.). Das ist vor allem für hochkomplexe 3D-Gebilde mit vielen tausenden von Polygonen ein echter Glücksfall.
Aber auch von der hardware-nahen Programmierung mithilfe der SSE-Befehlssätze profitieren 3D-Spiele. Dank der SSE4-Befehle können viele Operationen noch schneller und effizienter ausgeführt werden. Darum lautet ein gut gemeinter Rat von Leigh Davies: “Eure Kunden haben SSE-basierte Hardware – also macht auch etwas damit!”
Es geht aber nicht nur um Speicheraspekte, sondern auch um das Hyperthreading, das von vielen Intel-CPUs unterstützt wird (Intel nennt es auch SMT = Simultaneous Multithreading). SMT bietet standardmäßig ein gewisses Maß an eingebauter Parallelität: Es werden zwei Threads gleichzeitig verarbeitet, Ressourcen werden simultan genutzt und aufgrund der optimierten Out-of-Order-Verarbeitung können verbesserte CPI-Werte erreicht werden (CPI = Clockticks per Instruction). Die gute Nachricht: Die Core-i7-Architektur beherrscht SMT noch ein ganzes Stück besser, da die Caches größer sind, die Bandbreite wesentlich erhöht wurde und auch die Execution Units schneller rechnen können.
Natürlich kommt während Leighs Session die Zukunft nicht zu kurz: So wird die die nächste Prozessorgeneration mit dem Codenamen “Sandy Bridge” standardmäßig 256-Bit-breite SSE-Register aufweisen, was die parallele Datenverarbeitung auf Prozessorebene erheblich beschleunigen wird. Klar ist auch, dass Mister Davies über Larrabeee und dessen Auswirkungen auf die Softwareentwicklung referieren wird. Aber hierfür gibt es ja schließlich zwei eigene Techsessions. Hiervon wird auch noch die Rede sein. Versprochen!