AUTOSAR

Load Balancing in AUTOSAR-Multicore-Systemen (Teil 2)

27. April 2010, 11:50 Uhr | Von Dr. Kathrin D. Scheidemann, Michael Knapp und Claus Stellwag
Diesen Artikel anhören

Fortsetzung des Artikels von Teil 7

Auswertung und Ausblick

Übersicht über die verglichenen Strategien.
Übersicht über die verglichenen Strategien.

Die Flexibilität bei der Umsetzung verschiedener Verteilungsszenarien ist eine Grundvoraussetzung, um das Laufzeitverhalten eines Systems optimieren zu können. Dies alleine wird jedoch nicht genügen, um die Rechenleistung von Multicore-Plattformen zukünftig effektiv nutzen zu können. Angesichts der Menge der möglichen Verteilungsszenarien und der vielen Einflussfaktoren, die das Laufzeitverhalten einer Verteilung im jeweiligen Kontext beeinflussen, wird eine rein manuelle Optimierung auf Basis des Erfahrungsschatzes eines Systemintegrators bald an Grenzen stoßen und dazu führen, dass die Möglichkeiten der Hardware nicht optimal ausgenutzt werden. Eine Werkzeug-Unterstützung bei der Optimierung ist daher essentiell. In beiden Teilen dieses Artikels wurden drei unterschiedliche Ansätze vorgestellt, mit denen sich die Verteilung von Software werkzeuggestützt optimieren lässt. Die präsentierten Messwerte sind spezifisch für die konkrete Anwendungs-Software, die eingesetzte Basis-Software und die Hardware. Auch die Eignung der Verteilungsstrategien ist stark vom jeweiligen Kontext abhängig. Die Tabelle gibt einen Überblick über die notwendigen Voraussetzungen der drei hier verglichenen Strategien und gibt Anhaltspunkte dafür, in welchen Einsatzszenarien welche Strategie geeignet ist.

In der hier beschriebenen Untersuchung wurden lediglich die Verteilung von Software und die Implementierung der AUTOSAR-Basis-Software optimiert. Hardware, Hardware-Konfiguration sowie Design und Implementierung der Anwendungs-Software wurden als fest vorgegeben angenommen, bieten aber in der Realität eine ganze Reihe von zusätzlichen Freiheitsgraden, die bei der Optimierung ausgeschöpft werden könnten. Auch wird in Zukunft die möglichst effektive Nutzung von Rechenleistung nicht das einzige Ziel sein. Energieverbrauch oder Funktionssicherheit sind Beispiele für weitere Kriterien, die bei der Optimierung einbezogen werden müssen. Wünschenswert wäre ein Ansatz, der es erlaubt, verschiedenste Aspekte einzubeziehen, und dem Systemintegrator ein Werkzeug an die Hand gibt, mit dem er den "Design Space" sinnvoll durchsuchen kann, um so zu einem möglichst idealen System zu gelangen.

Wir danken Infineon für die Bereitstellung von Hardware und Unterstützung sowie Markus Mertinat, Stefan Sturm und Michael Stöckl von BMW für ihre Unterstützung.

Die Autoren wurden bereits in Teil 1 dieses Artikels vorgestellt.

Literatur:

[1] www.autosar.org

[2] www.glaros.dtc.umn.edu/gkhome/metis/overview

[3] www.mathworks.com

[4] Cormen, T.H.; Leiserson, C.E.; Rivest, R.L.; Stein, C.: Introduction to Algorithms, Second Edition 2001.

[5] Menuet; Plecat; Nezan; Aridhi: Scaleable Compile-Time Scheduler for Multi-core Architectures. DATE 2009.

[6] Herlihy, M.; Shavit, N.: The Art of Multiprocessor Programming. 2008.

[7] Shrijver, A.: Theory of Linear and Integer Programming. 1998.

[8] Kramer, T.; Münzenberger, R.: With Measurements to Real-Time Simulation. embedded world congress 2009.

[9] Scheidemann, K.; Knapp, M.; Stellwag, C.: Load Balancing in AUTOSAR-Multicore-Systemen; Teil 1: Voraussetzungen – Die multicore-bedingten Erweiterungen des AUTOSAR-Standards. Elektronik automotive 2010, H. 1/2, S. 22ff.


  1. Load Balancing in AUTOSAR-Multicore-Systemen (Teil 2)
  2. Aufbau
  3. Freie Verteilung von Runnables
  4. "Lost Updates"
  5. Verteilung von Runnable-Gruppen
  6. Parallelisierung in einer Barrier-Architektur
  7. Eingesetzte Heuristik
  8. Auswertung und Ausblick

Lesen Sie mehr zum Thema


Das könnte Sie auch interessieren

Jetzt kostenfreie Newsletter bestellen!

Weitere Artikel zu BMW AG