Der niemals endende Wunsch nach mehr Leistung führte dazu, dass Computer mit einem einzelnen Prozessor zu komplexen Rechnerarchitekturen weiterentwickelt wurden, die unter anderem Mehrkernprozessoren, GPUs und DSPs in sich vereinen. Es ist jedoch bekannt, dass diese Technologien hinsichtlich Leistung und Energieverbrauch noch erheblich verbessert werden können.
Dies war seit 2013 das Ziel des REPARA-Projekts, das diesen Monat abgeschlossen wird. Im Rahmen des Projekts kamen Fachleute aus den Bereichen Softwareentwicklung, Entwicklungstools und Computerhardware zusammen, deren ursprüngliches Ziel es war, ein einheitliches Programmiermodell für heterogene Computer zu entwickeln, d. h. bereits existierenden Quellcode so umzustrukturieren, dass er mit multiplen Grafikkarten und rekonfigurierbarer Hardware kompatibel ist. Vor Kurzem veröffentlichten die Experten einige ihrer Fortschritte in der Fachzeitschrift „International Journal of Parallel Programming“.
„Wir konnten sowohl bei Leistung als auch bei Energieeffizienz deutliche Verbesserungen erzielen, die mit denen vergleichbar sind, die in einem manuellen Entwicklungsprozess erreicht werden können“, sagte Projektleiter José Daniel García, ein Associate Professor der Fakultät für Informatik an der Universität Carlos III zu Madrid. „Der Unterschied besteht darin, dass ein manueller Entwicklungsprozess mehrere Monate in Anspruch nimmt, wohingegen wir mit unserem halbautomatischen Prozess die gleiche Arbeit in nur wenigen Tagen leisten können.“
Dank der EU-Fördermittel in Höhe von 2,6 Millionen Euro konnte das Team mehrere Technologieprodukte entwickeln und schützen lassen, die sie nun in Zusammenarbeit mit einem interessierten europäischen Unternehmen vermarkten können.
Die Arbeit der Experten bestand unter anderem aus „Quellcode-Refaktorisierung“, einer Technik, mit der in der Softwareentwicklung die innere Programmstruktur optimiert wird, ohne deren Funktionalität zu ändern. Dabei wurden drei grundlegende Eigenschaften des ursprünglichen Quellcodes verbessert: Leistung (d. h. schneller ausgeführte Anwendungen), Energieeffizienz (d. h. geringerer Energieverbrauch) und Wartungsfreundlichkeit.
„Diese Softwareprodukte erleichtern es Entwicklern, softwaretechnische Leistungen anzubieten, da sie den Entwicklungsprozess vereinfachen. Auch die Zeit, die die Softwaretechniker zur Feinabstimmung eines Softwareprodukts in einer Entwicklungsumgebung mit heterogenen Parallelcomputern benötigen, kann reduziert werden, wodurch Entwicklungskosten deutlich gesenkt und die Wettbewerbsfähigkeit der Softwareindustrie gesteigert wird“, sagte Prof. García. Zahlreiche Märkte, darunter Gesundheitswesen, Verkehrswesen, Robotik und Unternehmen, die Fertigungsteile auf Mängel hin analysieren, werden von dieser Erfindung profitieren, und für jede dieser Branchen wurden bereits Anwendungsfälle erstellt.
Cevelop, eine integrierte Entwicklungsumgebung für C/C++-Programmierer, und
Fastflow, ein C++-Framework, das auf Mustern basierendes paralleles Programmieren auf hohem Niveau unterstützt, sind zwei nennenswerte Programmierwerkzeuge, die von dem sieben Mitglieder starken Konsortium geschaffen wurden. Diese Tools stehen auf den entsprechenden Websites zum Download bereit.
Weitere Informationen:
Projektwebsite