Neue Connext-DDS- und ROS-2-Benchmarks

Neue Connext-DDS- und ROS-2-Benchmarks

Mehr Performance

Tests zu Open-Source-ROS-2-Benchmarks vergleichen die Leistung von Connext DDS mit anderen DDS-Implementierungen unter Verwendung bekannter Benchmarks, wie sie etwa in der Open Robotics ROS 2 Nightly CI Build Farm verwendet werden. Insbesondere die kritischen Leistungsbereiche Latenz, Durchsatz und Zuverlässigkeit werden hier gemessen.

 (Bild: ©Ong-ad Nuseewor/istockphoto.com)

(Bild: ©Ong-ad Nuseewor/istockphoto.com)

Verteilte Echtzeitsysteme werden immer komplexer – genau wie die Faktoren, die die Leistungsfähigkeit der Systeme beim Modellieren und Testen beeinflussen. Das Extrapolieren der Ergebnisse aus vereinfachten Performance-Tests oder einer nicht repräsentativen Softwareverteilung muss sorgfältig durchgeführt werden. Bevor Anwender sich auf die Ergebnisse von Benchmark-Tests verlassen können, müssen sie sicherstellen, dass die Testbedingungen zur Architektur und dem Design ihrer Anwendung passen. ROS-2-Systeme werden z.B. fast immer in mehreren Prozessen erstellt, die es dem System ermöglichen, schlank, modular und wartbar zu sein. In den Testbedingungen sollten sich also immer mehrere Prozesse widerspiegeln. Zudem lassen sich exaktere Ergebnisse durch repräsentative, praxisnahe Setups erzielen. Eine bestmögliche Performance für jedes Projekt ist also entscheidend. So wurde RTI Connext DDS dafür entwickelt, einen Datendurchsatz zu erzielen, der sich sowohl auf die Nutzdaten skaliert als auch eine sehr geringe Latenz bietet. Wie verhält sich Connext also unter realen Bedingungen?

Integrierte Benchmark-Applikationen

Die am häufigsten verwendeten Applikationen zum Testen der Performance der ROS 2 Middleware Wrapper (RMW) haben eine gemeinsame Codebasis. Derselbe Test wurde auf der Seite von ROS 2 Nightly CI Build angewendet, um die veröffentlichten Ergebnisse zu replizieren. Dabei kam Folgendes raus:

  • • Die ROS 2 Nightly Performance verwendet ein mittlerweile veraltetes „rmw_connext_cpp.“-RMW. Bei dieser ersten entwickelten RMW-DDS-Layer sind Leistungsprobleme bekannt, die durch unnötige Speicherzuweisungen und Kopien in der RMW-Layer selbst verursacht wurden. Dies wurde nun in zwei neuen RMW mit den Namen „rmw_connextdds“ und „rmw_connextddsmicro“ von RTI behoben, die beide in den ROS 2 Nightly Builds verfügbar sind.
  • • Der Nightly-Build-Test führt alles in einem einzigen Prozess aus. Die meisten ROS-2-Systeme bestehen jedoch aus mehreren Prozessen.

Warum ist das wichtig? Für die Kommunikation zwischen Applikations-Threads in einem einzigen Prozess ist keine Middleware erforderlich. Threads können Daten und Datenreferenzen direkt über den vom Prozess bereitgestellten gemeinsamen Speicherplatz austauschen. Daher sind die Ergebnisse des Performance-Tests, die mit einem einzigen Prozess ausgeführt werden, nicht repräsentativ für realistische Systeme.

Testen eines realistischen ROS-2-Systems

Als nächstes folgt ein Benchmark-Test, der eher einem ROS-2-System aus einer realen Produktionsumgebung ähnelt. Als Proof of Concept wurde eine Reihe von ROS-2-Applikationen zusammengestellt, die im gleichen Stil wie die ROS-2-Tutorial-Beispiele für das „Schreiben eines einfachen Publisher und Subscriber (C++)“ geschrieben wurden. Mit anderen Worten, dieser Test ist so ROS 2 wie nur möglich.

Der Test besteht aus drei Arten von ROS-2-Nodes (SOURCE, WORK, SINK), die in separaten Prozessen ausgeführt werden, die jeweils die Latenz der zugrundeliegenden RMW-Implementierung messen, während Daten durch das System geleitet werden. Der Test unterstützt viele verschiedene Systemkonfigurationen, indem so viele SOURCE-, WORK- und SINK-Nodes wie nötig arrangiert werden. Für diesen Test kommt eine einfache SOURCE->SINK-Anordnung ohne jegliche WORK-Nodes zum Einsatz, die der primären Konfiguration des Nightly-ROS-2-Build-Tests entspricht. Die Testanwendung ist als normales ROS-2-Paket wie bei jeder anderen ROS-2-Anwendung aufgebaut. Das ist weit entfernt von einem umfassenden Benchmark-Test, jedoch enger an realen ROS-2-Systemen ausgerichtet und liefert bereits einige interessante, nicht-intuitive Ergebnisse.

Seiten: 1 2Auf einer Seite lesen

Real-Time Innovations
www.rti.com

Das könnte Sie auch Interessieren

Bild: RoboCup Germany
Bild: RoboCup Germany
RoboCup 2024 German Open

RoboCup 2024 German Open

Mehr als 30 nationale und internationale Hochschulteams mit Forschenden aus Deutschland, Frankreich, Kanada, Niederlande, Österreich, Schweiz und den USA in den Major-Ligen und die besten 200 deutschen Schulteams in den Junior-Ligen zeigten bei den German Open des diesjährigen RoboCups auf der Messe Kassel ihr Können.

Bild: Pilz GmbH & Co. KG
Bild: Pilz GmbH & Co. KG
Zugang im sicheren Fokus

Zugang im sicheren Fokus

In Produktionsumgebungen geben trennende Schutzeinrichtungen dem Menschen das Signal, dass sich hinter der Schutztür ein hochsensibler Bereich befindet und daher Vorsicht geboten ist. Hier erhalten Mitarbeiter über ein HMI oder einen Schlüssel, z.B. von Pilz, Zugang zum Prozess hinter dem Schutzzaun. Aber was, wenn die Person dafür nicht qualifiziert bzw. autorisiert wäre und sich oder andere Menschen in Gefahr bringen würde?

Bild: ©Fröhlich Max (LVT)/Liebherr-Verzahntechnik GmbH
Bild: ©Fröhlich Max (LVT)/Liebherr-Verzahntechnik GmbH
Vorabsimulation per digitalem Zwilling

Vorabsimulation per digitalem Zwilling

Die virtuelle Inbetriebnahme einer Palettierzelle mit automatischer Beladung einer Wälzschälmaschine per Roboter von Liebherr-Verzahntechnik konnte die Projektdauer bei einem Getriebehersteller signifikant verkürzen. Die Vorabsimulation per digitalem Zwilling sparte bei der realen Inbetriebnahme Zeit und Kosten und sorgte für Planungssicherheit zum Produktionsstart.

Bild: TeDo Verlag GmbH
Bild: TeDo Verlag GmbH
Wenn das FTS mit dem Roboter…

Wenn das FTS mit dem Roboter…

Autonome mobile Roboter und kollaborierende Knickarmroboter sind zwei Evergreens im Robotik-Trendkarussell. Relativ neu ist allerdings die Möglichkeit beide Helferlein zu kombinieren. Der autonome mobile Roboter erweitert den Arbeitsbereich des Cobots oder auch eines größeren Roboters enorm und macht ihn mobil. Das bietet neue Möglichkeiten z.B. bei der Maschinenbe- und entladung, beim Werkstück- und Materialtransport oder in der Qualitätsinspektion.