39036.jpg

S. Best

Was die Hardware angeht, durfte die Vorstellung der Prozessor Roadmap von Intel nicht fehlen, die Heinz Bast, Technical Consulting Engineer, Developer Products Division bei Intel, vorstellte und die bis zur 4. Generation und zu Strukturen von 7 nm reicht (Bilder 1 und 2). Aktuell bekannt sind Haswell von 2013 mit 22 nm und neuer Microarchitektur der 4. Generation sowie der Nachfolger Broadwell mit 14 nm und einer leicht veränderten Prozessarchitektur.

Bild 1: Tick-Tock-Roadmap der Intel-Prozessoren von 2006 bis 2012. Jeder Tick ist bei Intel ein Shrinking des Prozesses gegenüber der vorhergehenden Microarchitektur und jeder Tock eine neue Microarchitektur. Jedes Jahr wird ein Tick oder Tock erwartet.

Bild 1: Tick-Tock-Roadmap der Intel-Prozessoren von 2006 bis 2012. Jeder Tick ist bei Intel ein Shrinking des Prozesses gegenüber der vorhergehenden Microarchitektur und jeder Tock eine neue Microarchitektur. Jedes Jahr wird ein Tick oder Tock erwartet.Intel

Für Haswell gibt es neue Befehle, zum Beispiel für Bit-Manipulation, SIMD-Integer-Operationen, die nun auch auf 256 Bit erweitert sind und den digitalen Zufallsgeneratorbefehl. Darüber hinaus existieren neue Ausführungseinheiten sowie größere Cachebandbreiten. Heinz Bast ging auch auf die Gather-Befehle ein, ein Building Block für die Vektorisierung indirekter Speicherzugriffe, dessen Anwendung aber von einigen Faktoren abhängt, die die Leistung des Systems auch negativ beeinflussen können. Neu sind unter anderem auch Data-Move-Befehle und die Unterstützung verschiedener FMA-(Fused Multiply-Add)-Operanden.

In einem zweiten Beitrag ging H. Bast auf neue Merkmale beim Composer XE ein und die erweiterte Unterstützung für den Xeon Phi Coprozessor.

Bild 2: Tick-Tock-Roadmap von 2013 bis zur 7-nm-Prozesstechnologie. Wenn die Prozesstechnik sich, wie in Bild 1 gezeigt, weiterentwickelt, dürften die 7 nm im Jahr 2018 Realität werden.

Bild 2: Tick-Tock-Roadmap von 2013 bis zur 7-nm-Prozesstechnologie. Wenn die Prozesstechnik sich, wie in Bild 1 gezeigt, weiterentwickelt, dürften die 7 nm im Jahr 2018 Realität werden. Intel

Eine Neuerung ist der  Pointer Checker, der mittels Compilerswitches typischerweise für das Debugging initialisiert wird. Mit dem Pointer Checker lassen sich unter anderem die gefürchteten Buffer-Overflows erkennen. Der Pointer Checker ist ein Compiler-Feature, das den Programmcode während des Compilerlaufs auf Zeigerproblem hin instrumentiert. Aufgetretene Pointerprobleme werden dann während des Programmtests anzeigt. Ein Schlüsselmerkmal des Pointer Ceckers ist, das er enabled werden kann, sowohl auf ein einzelnes File, wie auf Gruppen von Files oder auf alle Files. Auch können Checker enabled Code und non-enabled Code nebeneinander existieren.

Die Präsentation von Composer XE war sehr ausführlich, deshalb verweisen wir an dieser Stelle auf die Downloadmöglichkeiten am Ende des Artikels.

Die neue HTML-5-Entwicklungsumgebung war Gegenstand des Vortrags von Thomas Zipplies, EMEA Technical Support Manager for SW Development Tools bei Intel, die Intel nach dessen Aussage stark verbessert hat. Neu sind die Unterstützung für Windows 8, der in die Entwicklungsumgebung integrierte Projekt Wizard sowie andere Tools, mit denen sich zum Beispiel per Mausklick und mit grafischer Darstellung Website-ähnliche Apps erstellen lassen. Intel XDK ist die leicht anwendbare, plattformübergreifende App-Entwicklungsumgebung, die in einen Browser eingebettet ist. Werner Krotz-Vogel, Technical Marketing Engineer, Software Development Products bei Intel, ging auf die Vielzahl der Möglichkeiten der Parallelprogrammierung ein, die Intel bietet. Das generelle Konzept paralleler Algorithmen ist Concurrency (Nebenläufigkeit), die gleichzeitige Ausführung von Aktivitäten, die abgearbeitet werden und zur Problemlösung in einer vorgegebenen Zeit beitragen. Intel hat seit 30 Jahren Erfahrung auf diesem Gebiet und ständig seine Tools, Bibliotheken und Parallelmodelle erweitert, zuletzt auf Multi-Core-, Many-Core-Prozessoren und für Cluster-Systeme. Der Entwickler hat die Wahl zwischen den beiden Komplettpaketen Intel Parallel Studio XE (shared memory programming) und Intel Cluster Studio XE (Distributed HPC-Programmierung auf MPI-Basis). Diese Pakete beinhalten die parallelen Programmiermodelle und -funktionen Intel Cilk Plus, Threading Building Blocks, MPI, Coarray Fortran, Open MP, Open CL und den Erweiterungen von C/C++. Die Analyse kann mit VTune Amplifier XE und dem Inspector XE erfolgen, die bereits auf der letzten Software Conference vorgestellt wurden. Werner Krotz-Vogel ging auch darauf ein, dass es native und Cross-Debugger Versionen von GDB für den Intel-Co-Prozessor Xeon Phi gibt.

Bild 3: James Reinders, Director and Chief Evangelist bei Intel, ging auf die vier positiven Trends bei der Parallelprogrammierung ein.

Bild 3: James Reinders, Director and Chief Evangelist bei Intel, ging auf die vier positiven Trends bei der Parallelprogrammierung ein. S. Best

In seiner Keynote ging James Reinders, Director and Chief Evangelist bei Intel, auf die vier positiven Trends bei der Parallelprogrammierung ein (Bild 3). Es gibt bessere Tools, bessere Parallelmodelle, viel mehr parallele Hardware und besser ausgebildete Programmierer. Was die Tools angeht, nannte er die bekannten Intel-Tools. Bei den Parallelmodellen wurde auf die SIMD Direktive von Intel hingewiesen, die gegenüber älteren Methoden viele Vorteile bietet. Eindrucksvoll war auch der Vergleich der Leistung von Intel Xeon und Xeon Phi, bei dem der Phi bei einigen Benchmarks um den Faktor 2,7 besser war. James Reinders ging in seiner Keynote auch ausführlich auf sein aktuelles Buch „Intel Xeon Phi Coprocessor, High-Performance Programming“ ein, das er zusammen mit Jim Jeffers, MIC Architectur Specialist, verfasst hat. Es ist eine komprimierte Übersicht aller Herausforderungen bei der Realisierung des Leistungspotenzials von fortschrittlichen Architekturen. Dies einschließlich moderner Multi-Core- und Many-Core-Prozessoren. Die Autoren bieten überzeugende Erläuterungen der verschiedensten Gründe, wegen denen Applikationen oft nicht ihre theoretische Leistung erzielen. Natürlich geben sie auch Hinweise, diese Probleme zu lösen. Das Buch ist hilfreich, auch ohne dass man einen Xeon Phi in Händen hält. Um sicherzustellen, dass Applikationen mit ihrer maximalen Effizienz laufen, legen die Autoren Wert auf Schlüsseltechniken für die Programmierung von modernen Parallelcomputersystemen wie den Xeon oder Xeon Phi oder auch von jedem anderen Hochleistungsprozessor. Wendet man diese Techniken an, wird die Programmierleistung in jedem System erhöht und außerdem ist man besser auf den Einsatz der Intel MIC-Architektur vorbereitet.