Diese Website verwendet nur technisch notwendige Cookies. In der Datenschutzerklärung können Sie mehr dazu erfahren.

Zum Hauptinhalt springen
Logo, Startseite der Hochschule der Medien

Workshop zu Concurrency und Parallelismus 2016

ich möchte Sie gerne auf einen "Day" diesen Freitag Nachmittag hinweisen, der sich diesmal ausnahmsweise einem sehr speziellen Thema in Form eines Workshops widmet: der Leistungssteigerung von Applikationen durch parallele Verarbeitung.

Egal ob im Bereich von CPU's, Medien-Applikationen, verteilten Datenbanken oder großen Sites wie Twitter und Facebook: Die Antwort auf Performanceprobleme und Last lautet parallele Verarbeitung. Leider bringt dies meist auch eine enorme Steigerung der Komplexität der Software mit sich. Wenn Sie sich selber bereits im Bereich Multi-threading unterwegs waren oder sind bzw. in naher Zukunft eine Beschleunigung Ihrer Applikationen benötigen, dann könnte dieser Workshop ein guter Startpunkt sein.

15.1.2016, 14 Uhr, Ort: 056, Nobelstrasse 10. Ende voraussichtlich gegen 17.30. Wahrscheinlich kein Streaming!

Der Workshop basiert auf dem Seminar "aktuelle Themen der Software", in dem wir uns intensiv mit den Problemen und Techniken beim Einsatz von Multi-Threading auseinandergesetzt haben: Multi-core Hardware und Memory Modelle, Kohärenz- und Konsistenzmodelle, lock-free/wait-free Algorithmen, funktionalen Streams etc. Die Probleme traten sehr explizit zu Tage, speziell bei shared-state Multithreading.

Moderne Programmiersprachen versuchen nun zunehmend, die Probleme bei Multi-threading durch neue Konstrukte aufzufangen, und für die Entwickler leichter handhabbar zu machen: Aktoren, Channels, Reaktive Programmierung, GPU-processing, Software-Transactional Memory werden hier verwendet. Der Workshop soll uns die Möglichkeit geben, zum Abschluss diese Konzepte an einem konkreten Fall "durchzudenken".

Die Firma Exxeta wird dazu einen konkreten Fall aus ihrem Kundenbereich vorstellen. Im Anschluss werden Gruppen die verschiedenen Techniken kurz vorstellen (20 Minuten) und im Anschluss mit Allen die Anwendungsmöglichkeiten diskutieren. In einer Abschlussdiskussion fassen wir die Ergebnisse zusammen.

Fragestellungen:

1. Eignen sich alle Multi-thread Techniken grundsätzlich als Lösungen für den Fall?
2. Wie starkt prägt die Technik die Gesamtarchitektur der Lösung?
3. Welche Techniken wollen die Probleme vor den Entwicklern "verstecken", und welche wollen sie grundsätzlich vermeiden?
4. Wie effizient nutzen die Techniken die vorhandenen Cores?
5. Wo gibt es Bereich mit Unklarheiten in Bezug auf das Verhalten? Die Skalierbarkeit?
6. Braucht es eine eigene Veranstaltung für Aktoren, Channels, STM, Reactive Proc. Etc.?

Agenda:

1. Vorstellung eines konkreten Falles durch die Firma Exxeta

2. Präsentation des Aktor-Models als konkrete Lösungsmöglichkeit durch Vanessa Werner (CSM/Exxeta) Im Rahmen ihrer externen Master-Thesis untersucht Frau Werner den Einsatz von Aktor-Modellen (speziell AKKA)

3. Channels und Message passing Konzepte

4. Separating Identity from State: Software Transactional Memory mit Clojure

5. GPU-Processing Konzepte: Embarrassingly Parallel Processing

6. Real-Time Streams-processing mit einer Lambda Architektur

7. Diskussion und Vergleich der Konzepte am konkreten Fallbeispiel

 

Ich freue mich auf Ihr Kommen,
Prof. Walter Kriha

 


Kontakt:
Prof. Walter Kriha
E-Mail: kriha@hdm-stuttgart.de

12. Januar 2016