Systems on a Chip Multicore Association enthüllt Spezifikation für einfachere Mehrkern-Programmierung

Franz Graser

Anbieter zum Thema

MTAPI, das Multicore Task Management Application Programming Interface, ist nach eineinhalb Jahren Entwicklungsarbeit verfügbar. Die Spezifikation unterstützt die bessere Verteilung von Tasks auf eingebettete nebenläufige Systeme.

Urs Gleim, Program Manager Parallel Processing Systems bei Siemens, leitet die MTAPI Working Group.
Urs Gleim, Program Manager Parallel Processing Systems bei Siemens, leitet die MTAPI Working Group.
(Bild: Multicore Association)

Für die Programmierung heterogener Multicore-Prozessoren, wie sie für Ein-Chip-Systeme typisch sind, müssen Entwickler ein Programm in Aufgaben (Tasks) aufspalten, die nebeneinander auf den unterschiedlichen Prozessorkernen abgearbeitet werden können. Bisherige Betriebssysteme und Programmiermodelle boten dafür in der Regel keine ausreichende Unterstützung.

Die MTAPI-Spezifikation will hier einen Ausweg aufzeigen, da sie es den Entwicklern erlaubt, nebenläufige Software für Embedded-Systeme zu schreiben und dabei vertraute Programmierprozesse zu benutzen. MTAPI erlaubt es unter anderem, Rechenzeiten und Tasks einzelnen Prozessorkernen zuzuweisen. Darüber hinaus ist es optional möglich, direkt auf Aktionen oder Warteschlangen zuzugreifen, die in der Hardware implementiert sind oder Prozessor-spezifische Eigenschaften direkt auszunutzen und damit Leistrungssteigerungen zu erzielen.

Bei alledem ist MTAPI auf Embedded-Systeme ausgelegt, für die beschränkte Systemressourcen oder ein deterministisches Verhalten typisch sind. Auch die Portabilität ist ein wichtiges Kriterium. Die Spezifikation unterstützt daher verschiedene Prozessor-Architekturen. Außerdem kann sie auf unterschiedlichen Betriebssystem oder auch als Bare-Metal-Lösung (das heißt: ohne darunter liegendes RTOS) implementiert werden.

MTAPI wurde unter Federführung der Multicore Association erarbeitet. An der Arbeit beteiligten sich die Unternehmen ENEA, Freescale, Plurality, Polycore Software, Qualcomm, Siemens, TI sowie die Universität von Houston/Texas. Der Vorsitzende der MTAPI-Arbeitsgruppe, Urs Gleim sagt: „MTAPI vereinfacht in hohem Maße die parallele Programmierung komplexer Ein-Chip-Systeme, die heterogene Architekturen und Mechanismen für die Hardwarebeschleunigung aufweisen. Auch die Herausforderung, das Task-Management zu optimieren, wird erleichtert.“

Gleim, der gleichzeitig Programmmanager für parallele Prozessorsysteme bei Siemens ist, führt weiter aus: „Zusätzlich zur Portabilität über verschiedene Multicore-Prozessorplattformen hinweg erlaubt es die dynamische Laufzeit von MTAPI dem Implementierer, sowohl das Power-Management als auch die Qualität der Services zu optimieren, die für die Echtzeit-Performance nötig sind.“

Markus Levy, Präsident der Multicore Association, betonte, dass MTAPI voll auf die bereits erarbeiteten Spezifikationen für Multicore Resource Management (MRAPI) und Multicore Communication (MRAPI) abgestimmt sei: „MRAPI kann sogar als Teil der internen Portabilitätsschicht von MTAPI benutzt werden, und MCAPI kann für die Kommunikation zwischen den einzelnen Knoten verwendet werden“, erläuterte Levy.

MTAPI kann von der Website der Multicore Association heruntergeladen werden.

Artikelfiles und Artikellinks

(ID:38380300)

Jetzt Newsletter abonnieren

Verpassen Sie nicht unsere besten Inhalte

Mit Klick auf „Newsletter abonnieren“ erkläre ich mich mit der Verarbeitung und Nutzung meiner Daten gemäß Einwilligungserklärung (bitte aufklappen für Details) einverstanden und akzeptiere die Nutzungsbedingungen. Weitere Informationen finde ich in unserer Datenschutzerklärung.

Aufklappen für Details zu Ihrer Einwilligung