Das Thema Mehrkernprozessoren beschäftigt seit geraumer Zeit auch die Automobilbranche. Multicores ermöglichen eine effiziente Verteilung anfallender Arbeiten auf mehrere Rechenkerne, eine größere Redundanz und eine höhere Ausfallsicherheit.
Das Fraunhofer-Institut für Experimentelles Software Engineering (IESE) hat Techniken und Werkzeuge zur Parallelisierung von Softwaremodellen entwickelt, die modellgetriebene Multicore-Entwicklungsansätze auf Basis existierender Werkzeuge wie beispielsweise SIMULINK optimieren. Auf der Grundlage einer Plattformbeschreibung werden Softwaremodelle optimiert und vollautomatisch oder unterstützend parallelisiert.
Die Rechenkapazität moderner Prozessoren schien dank der fortschreitenden technischen Entwicklungen bislang keine Grenzen zu kennen. Neue Prozessoren wurden aufgrund höherer Taktfrequenzen schneller und Applikationen profitierten automatisch von dieser Steigerung.
Seit einigen Jahren scheinen die physikalische Leistungsgrenzen bei Prozessoren erreicht. Die Taktfrequenzen gängiger Prozessoren sind kaum noch zu steigern, denn sie resultieren aus den internen Schaltzeiten der Prozessoren. Werden sie weiter gesenkt, steigt die Leistungsaufnahme, was zu einer immer stärkeren Wärmeentwicklung führt und sowohl die Spannungsversorgung als auch die Kühltechnik vor immer größere Probleme stellt. Zudem stört eine höhere elektromagnetische Ausstrahlung benachbarte Prozessoren und Busse.
Mehrkernprozessoren stellen hier eine reizvolle Lösung dar, da bereits auf nur einem Mehrkernprozessor die Leistung von weit über 100 traditionellen Prozessoren abgebildet werden kann. Um dieses Leistungspotenzial abzurufen, müssen Anwendungen bzw. deren Algorithmen jedoch parallelisiert werden – im Gegensatz zur Vergangenheit profitieren diese nicht mehr automatisch von Leistungssteigerungen.
Neben der Parallelisierung von Algorithmen müssen auch die Kommunikationskosten berücksichtigt werden. Parallele Algorithmen müssen miteinander Daten austauschen, was über geteilte Speicherbereiche, Bussysteme, oder Punkt-zu-Punkt-Verbindungen geschieht. Hervorzuheben sind hier insbesondere das Problem des Wettbewerbs um diese Kommunikationsressourcen sowie das Problem sich kreuzender Nachrichtenströme in Kommunikationsnetzwerken, die hohe Leistungseinbußen nach sich ziehen können.
Der Ansatz des Fraunhofer IESE mit modellgetriebenen Tools wie SIMULINK berücksichtigt spezialisierte Rechenkerne und Kommunikationsnetzwerke bei der Parallelisierung und verhindert dadurch entstehende Beeinträchtigungen. Gleichzeitig garantiert er, dass zum Beispiel kritische Zeitschranken eingehalten werden, wie sie etwa für die Reaktionszeiten von Airbags existieren. (la)