Da durch das Erreichen der technischen Grenzen bei Entwurf von Rechnern in absehbarer Zukunft keine so große Geschwindigkeitssteigerung mehr zu erwarten ist, wird zunehmend versucht, durch die Einführung neuer Architekturkonzepte wie Parallelrechner und spezielle Hardware-Komponenten eine weitere Steigerung zu erreichen. Wegen der Probleme beim Programmieren ist die Akzeptanz und Verbreitung solcher Systeme relativ gering.
Da Neuimplementierungen von Standard-Software sehr aufwendig und fehleranfällig sind, wurden in dieser Arbeit die Möglichkeit untersucht, wie in vorhandenen sequentiellen Programmen die dort implizit vorhandene Parallelität ausgenutzt werden kann. Zu diesem Zweck werden die Möglichkeiten zu einer automatischen Parallelisierung untersucht. Da hier entschieden werden muß, welche Teile eines Programms als Hardware realisiert werden sollen, muß mit Hilfe einer Profilanalyse auf der Basisblockebene das dynamische Verhalten überprüft werden. Anhand der Abhängigkeitsbeziehungen von Programmteilen kann dann im Rahmen einer Partitionierung mit Hilfe eines neu entwickelten Programmiermodells entschieden werden, welche Partitionen als Software und welche als Hardware realisiert werden sollen. Mit Hilfe der Profilanalysemethoden und des Programmiermodells kann zusätzlich durch eine Performanzanalyse das System bewertet werden, um Engpässe möglichst früh zu erkennen.