Multi-Core-Programmierung von Grund auf: Technologien und Architekturen

Marwan Abu-Khalil

Kurzinformationen

03. Juni 2019 - 05. Juni 2019

München
€ 2090.00 zzgl. MwSt
€ 2487.10 inkl. MwSt

Neu

Auf Anfrage

Detailinformationen

Moderne Softwaresysteme müssen Multi-Core CPUs nutzen um mit steigenden Performanceanforderungen Schritt halten zu können. Daher ist heute die Parallele Programmierung die Schlüsseltechnologie für die Performancesteigerung von Software. Dieses Seminar vermittelt das Rüstzeug für Parallelität und Multi-Core Programmierung.


Aktuelle CPUs haben immer mehr Kerne, jedoch steigen die Prozessorfrequenzen nicht mehr weiter an. Daher kann nur noch diejenige Software Performance-Steigerungen auf Grund von Hardware-Innovation realisieren, die immer weiter parallelisierbar ist. Architekturen für parallele Softwaresysteme müssen sowohl die Komplexität der Parallelverarbeitung kapseln als auch ein effizientes Laufzeitverhalten ermöglichen um Software langfristig skalierbar und wartbar zu halten.  Die Techniken der Parallelen Programmierung gehören daher zum unabdingbaren Handwerkszeug für Entwickler und Architekten.


Das Seminar
In diesem Seminar wird die parallele Programmierung praxisnah und von Grund auf erschlossen. Wir arbeiten uns von den theoretischen Grundlagen über die klassische Parallelisierung mit Threads hin, zu den heute wichtigen User-Mode Task-Schedulern. Wir lernen Algorithmen zu parallelisieren, und so die aktuellen APIs für die Parallelisierung effizient einzusetzen. Dabei sehen wir, wie Synchronisationskonzepte für die Koordination paralleler Software am besten genutzt werden, und wir lernen mit den Memory-Modellen moderner Multicore-CPUs umzugehen. Anhand realer Projektbeispiele sehen wir, welche Architekturen und Vorgehensmodelle sich in der Praxis bewährt haben. Die Unterrichtsinhalte werden durch konkrete Progammierübungen vertieft, die wahlweise in C#, Java, C++ 11 oder in C/C++ auf Basis der Windows-API oder P-Threads durchgeführt werden können, so dass jeder Teilnehmer in seiner realen Projektumgebung üben kann.


Lernziele

  • Die richtigen Parallelisierungstechnologien für unterschiedliche Anwendungsfälle auswählen können
  • Moderne Parallel-APIs optimal nutzen und deren Features und Fallstricke kennenlernen
  • Softwarearchitekturen für parallele Systeme entwerfen können und geeignete Patterns kennen


Die Seminarinhalte:

  • APIs für moderne Multi-Core Programmierung effizient nutzen
  • Software-Architekturen für Multi-Core Systeme designen
  • Parallelitätsparadigmen für Ihren Use-Case auswählen
  • Parallelisierung von Algorithmen
  • Programmierübungen wahlweise in Java, C#, C++


Warum Sie dieses Seminar nicht verpassen sollten

  • Parallelisierung der Software ist die Voraussetzung für eine Performancesteigerung durch Multicore CPUs: Im Seminar werden die erforderlichen Technologie-Kenntnisse vermittelt
  • Potentiale und Risiken einer Parallelisierung müssen erkannt und sorgfältig abgewogen werden: Im Seminar werden Kriterien und Erfahrungswerte vermittelt
  • Architekturen für parallele Systeme sollen Effizienz und Wartbarkeit sicherstellen: das Seminar führt in die dafür erforderlichen Patterns, Methoden und die theoretischen Grundlagen ein.  
  • Der Wissenstransfer in die Praxis wird durch Programmierübungen sichergestellt


Abu-Khalil, Marwan

Marwan Abu-Khalil ist Senior-Software-Architekt für parallele und verteilte Systeme im Forschungsbereich der Siemens AG. Seit über 10 Jahren parallelisiert er Systeme vom Embedded-Device bis zum Server-Cluster. Er spricht regelmäßig auf Konferenzen über Parallelität. Er ist Ausbilder für zertifiziere Software-Architekten der Siemens AG.

Seminarziel

In diesem Hands-On Seminar lernen Sie den gesamten Software-Stack für die Multi-Core Programmierung in Java, C++ und C# so zu beherrschen, dass Sie die optimale Performance aus Ihrem Multi-Core System herausholen. Sie lernen, Fragen der folgenden Art zu beantworten: Wann sind Task-Scheduler besser geeignet sind als Threads? Was sind Vorteile und Fallstricke transparenter Parallelisierung mit PLINQ oder Streams? Wie kann man sicher und einfach Memory-Modelle moderner Multi-Core Hardware handhaben? Sie bewerten Paradigmen der Parallelität und Sie entwerfen auf dieser Basis effiziente parallele Software-Architekturen.

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.

Hard- Software Voraussetzungen

Die Seminarteilnehmer werden gebeten, einen eigenen Laptop mit Microsoft Visual Studio 2012 (oder neuer) oder mit einer Entwicklungsumgebung für Java 7 (oder neuer) zur Schulung mitzubringen.

Sprachen

Seminar: Deutsch

Unterlagen: Deutsch

Methode

  • Interaktives Seminar
  • Vortrag, Referate, Übungen
  • Programmierübungen in vielen aktuellen Sprachen, so dass die Teilnehmer in ihren realen Projektumgebung üben können
  • Raum für Diskussionen der spezifischen Projektherausforderungen der Teilnehmer

Informationen

Unsere Leistungen - Sie erhalten:

  • Schulungsunterlagen als Printversion oder PDF (bei Seminaren mit Genehmigung durch den Referenten)
  • Ihre persönliche Teilnahmebescheinigung
  • Verpflegung während des Seminars
  • Ein 1-jähriges kostenloses Abonnement der Fachzeitschrift JavaSPEKTRUM oder OBJEKTspektrum
  • als Seminarteilnehmer sind Sie OOP-Alumni und erhalten 20% Rabatt auf den Teilnehmerpreis unserer jährlichen Fachkonferenz OOP!

Ihre Frühbucher-Vorteile gültig, bei einer Anmeldung bis 4 Wochen vor Seminarbeginn!

  • "sleep & training": 2 Übernachtungen + Frühstück im Tagungshotel inklusive!
    alternativ, wenn keine Hotelübernachtung benötigt wird:
  • "travel & training": 150 € Rabatt

Gruppenrabatt

Bei einer gleichzeitigen Anmeldung von 3-4 Mitarbeitern erhalten Sie 5% Gruppenrabatt, ab 5 Mitarbeitern erhöht sich der Gruppen-Rabatt auf 10%!

Inhouse-Seminare

Dieses Seminar ist auch als Inhouse-Schulung durchführbar. Schon ab einer kleinen Teilnehmerzahl von mind. 5 Mitarbeitern kalkulieren wir Ihnen gerne ein kostengünstiges Inhouse-Trainings-Angebot.

NRW-Bildungsscheck

SIGS-DATACOM ist zugelassener Bildungspartner des Landes NRW. Ihren NRW-Bildungsscheck für unsere Seminare einzulösen ist möglich! Weitere Informationen erhalten Sie unter:NRW Bildungsscheck!!

Disclaimer

Wir sind für die eigenen Inhalte, die wir zur Nutzung bereithalten, nach den allgemeinen Gesetzen verantwortlich. Von diesen eigenen Inhalten sind Querverweise (externe Links) auf die von anderen Anbietern bereit gehaltenen Inhalte zu unterscheiden. Diese fremden Inhalte stammen nicht von uns und spiegeln auch nicht unsere Meinung wider, sondern dienen lediglich der Information. Wir machen uns diese Inhalte nicht zu eigen und übernehmen trotz sorgfältiger inhaltlicher Kontrolle keine Haftung für die Inhalte externer Links. Für den Inhalt der verlinkten Seite sind ausschließlich deren Betreiber verantwortlich.