Newsletter

   Kontakt

Multi-Core Programmierung

Technologien und Architekturen für moderne parallele Softwaresysteme

(2-tägiger iX-Workshop mit optionalem 3. Tag zu Realtime Multi-Core)

Die parallele Programmierung ist heute eine Schlüsseltechnologie für die Performancesteigerung von Software. In diesem Workshop lernen Sie, die aktuellen Technologie-Paradigmen der parallelen Programmierung kennen. Sie lernen Vor- und Nachteile dieser Technologien zu bewerten, um auf dieser Basis Architekturen für Ihre Parallelisierungsprojekte zu konzipieren.

Der Workshop beantwortet Fragestellungen der folgenden Art: Wann sind User-Mode Task-Scheduler geeignet und wann sind Threads die bessere Alternative? Wo sollte man transparente Parallelisierungsansätze wie PLINQ oder Java Parallel Streams nutzen und worin besteht der Vorteil von Message Passing mit Channels in go? Was sind die Auswirkungen der Memory-Modelle moderner Multi-Core Hardware auf die Software, und wie geht man einfach und sicher mit diesen um?
Die praktische Anwendung der parallelen Programmierung steht im Mittelpunkt des Workshops. Wir arbeiten uns von den theoretischen Grundlagen über die Parallelisierung von Algorithmen mit Threads, hin zur Anwendung der heute wichtigen Task-Scheduler.
Neben Technologien stehen auch Architekturen im Fokus. Wir schauen uns erfolgreiche und gescheiterte Multi-Core Migrationsprojekte an, so dass sichtbar wird, welche Architektur-Entscheidungen zu tragfähigen Lösungen in der Praxis führen.
Am optionalen dritten Tag erschließen wir uns die Multi-Core Programmierung in Embedded Realtime Systemen, die aufgrund ihrer hardwarenahen Programmiertechniken durch die Multi-Core Revolution vor besondere Herausforderungen gestellt sind. Sie lernen, welche Features Realtime Systeme für eine erfolgreiche Multi-Core Parallelität benötigen und wie man mit den Fallstricken des Priority-Schedulings in SMP Umgebungen umgeht. Sie lernen Realtime Betriebssysteme (z.B. Realtime-Linux, VxWorks) und Realtime Programmierumgebungen (z.B. Realtime Java) kennen.

Praktische Übungen legen das Fundament für den erfolgreichen Transfer in die Praxis. Die Übungen, Musterlösungen und Beispiele liegen in C#, Java, C++ 11, Go, P-Threads, und in Win32 und vor, so dass jeder Teilnehmer in seiner realen Arbeitsumgebung üben kann.

Zielgruppe

Zielgruppe des Seminars sind Entwickler und Softwarearchitekten, die in ihren Projekten parallele Software entwickeln oder dieses planen. Es werden sowohl die besonderen Herausforderungen der Parallelisierung vorhandener Software als auch die Konzeption und Realisierung komplett neuer Systeme behandelt.

Voraussetzungen

  • Programmierkenntnisse in einer objektorientierten Programmiersprache und Grundkenntnise von Betriebssystemen sind hilfreich
  • Wenn möglich sollte ein Laptop mit Visual Studio 2012 (oder neuer) oder mit Java 7 (oder neuer) mit in den Kurs gebracht werden
  • Für die Übungen am Realtime-Tag sollte auf dem Laptop eine Oracle-Box Installation vorhanden sein. Kostenloser Download hier: http://www.oracle.com/technetwork/server-storage/v...

Leistungen Ihres Workshoptickets

  • Workshopunterlagen
  • Tagungsgetränke & Verpflegung
  • Teilnahmebescheinigung


Der Workshop ist auf 15 Teilnehmer begrenzt!

Durchführung

Ist die Durchführung der Veranstaltung aufgrund höherer Gewalt, wegen Verhinderung eines Referenten, wegen Störungen am Veranstaltungsort oder aufgrund zu geringer Teilnehmerzahl (weniger als 50%) nicht möglich, werden die Teilnehmer spätestens 14 Tage vorher durch das heise Events-Team informiert.

Kontakt

Haben Sie Fragen zu der Organisation oder der Veranstaltung? Gern beantworten wir Ihre Fragen per E-Mail!

heise Events // events@heise.de

Termine & Preise

13. - 15.05.2019, Hannover

Heise Medien GmbH & Co. KG, Karl-Wiechert-Allee 10, 30625 Hannover

Tickets Hannover Mai

23. - 25.09.2019, Hannover

Heise Medien GmbH & Co. KG, Karl-Wiechert-Allee 10, 30625 Hannover

Tickets Hannover September

Tag 1 - 2

Frühbucherpreis: 1.222,00 € *

Standardpreis: 1.358,00 €

Alle Preise inkl. MwSt.

Tag 3 (optional) 

Frühbucherpreis: 611,00 € *

Standardpreis: 679,00 €

Alle Preise inkl. MwSt.

* 10% Frühbucherrabatt bis 6 Wochen vor Veranstaltungsbeginn

Agenda & Trainer

Programm Tag 1

  • 08:30 - 09:00 Uhr Registrierung

  • 09:00 - 10:30 Uhr TEIL 1: The State of The Art

    Übersicht der aktuellen Parallelisierungs-Technologien

  • 10:30 - 11:00 Uhr Kaffeepause

  • 11:00 - 12:30 Uhr Fortsetzung TEIL 1: The State of The Art

  • 12:30 - 13:30 Uhr Mittagspause

  • 13:30 - 15:00 Uhr TEIL 2: Thread-Programmierung

    Parallelität: Threads / Gegenseitiger Ausschluss: Synchronisation, Mutex und Lock / Koordination von Threads: Monitor und Procedur-Consumer

  • 15:00 - 15:30 Uhr Kaffeepause

  • 15:30 - 17:00 Uhr Fortsetzung TEIL 2: Thread-Programmierung

Programm Tag 2

  • 09:00 - 10:30 Uhr TEIL 3: Task-Programmierung

    Work-Stealing User-Mode Task-Scheduler in Theorie und Praxis

  • 10:30 - 11:00 Uhr Kaffeepause

  • 11:00 - 12:30 Uhr Fortsetzung TEIL 3: Task-Programmierung

  • 12:30 - 13:30 Uhr Mittagspause

  • 13:30 - 15:00 Uhr TEIL 4: Memory-Modelle in moderner Multicore-Hardware

    Relaxed Consistancy / Atomare Instruktionen und Spinlocks

  • 15:00 - 15:30 Uhr Kaffeepause

  • 15:30 - 17:00 Uhr Fortsetzung TEIL 4: Memory-Modelle in moderner Multicore-Hardware

Programm Tag 3 (optional)

  • 09:00 - 17:00 Uhr TEIL 5: Realtime-Multicore Programmierung

    Realtime Betriebssysteme und Multi-Core CPUs / Realtime-Priority-Scheduling und Multi-Core Parallelität (SMP) / Single-Core zu Multi-Core Migration Best-Practices

  • 12:30 - 13:30 Uhr Mittagspause

15 Minuten Kaffeepause am Vormittag.

Marwan Abu-Khalil

Senior Software Architekt (SSWA) in der Siemens AG und arbeitet seit über 10 Jahren an der Parallelisierung unterschiedlichster Systeme vom Server-Backend bis zum Embedded-Device. Er ist langjähriger Trainer für Software-Architektur und spricht auf Konferenzen über Parallelisierung.