Marian Triebe: Das C++ Actor Framework im Leistungsvergleich

  • What INET Seminar
  • When Aug 26, 2015 from 02:30 PM to 03:30 PM (CET / UTC200)
  • Where R 460
  • Contact Name
  • Add event to calendar iCal

Der langjährige Trend in der CPU-Entwicklung vermehrt  Kerne und nicht die Leistung pro Kern. Die dabei entstehenden Multicore-Architekturen sind nur mittels nebenläufiger Programmierung gleichmäßig auslastbar. Gleichzeitig lassen  die Omnipräsenz des Internets zwischen heterogenen, weltweit verteilten Komponenten, insbesondere aber spezialisierte Internet-Lösungen wie Clouds, das Internet der Dinge (IoT) etc. verteilte Anwendungen immer stärker in den Vordergrund treten. Ein Lösungskonzept für die transparente, robuste Programmierung paralleler und verteilter Systeme ist das Aktorenmodell. Das C++ Actor Framework (CAF) ist unser Beitrag zur Realisierung  dieses Konzepts. CAF kann sowohl hochparallele Maschinen, als auch heterogene Hardware-Komponenten wie GPUs, aber auch lose gekoppelte Systeme im Internet und stark beschränkte IoT-Knoten in einem Programmsystem verknüpfen.

In diesem Beitrag stellen wir die Leistungsmerkmale von CAF vor. Wir vergleichen CAF zunächst mit dem elementaren Messaging Ansatz von MPI, wobei vor allem die Skalierbarkeit von Interesse ist. Wir stellen weiterhin CAF anderen Implementierungen des Aktorenmodells gegenüber und vergleichen Speicherverbrauch und Terminierungszeit. Unsere Messungen zeigen, dass CAF in den gemessenen Kategorien durch hoch-skalierbares Design  und effiziente Implementierung in C++  überlegene Leistungswerte aufweist. Außerdem präsentieren wir Messungen für die Bereiche der eingebetteten und mobilen Systeme, wo effiziente RAM Nutzung eine wichtige Rolle spielt.

Slides