Open-Source-Projekt macht Java parallel

Um das Entwickeln von Java-Anwendungen für parallele Plattformen zu erleichtern, bieten US-Forscher jetzt eine quelloffene Erweiterung zu Java.

Künftig wollen die Computer-Experten der Universität Illinois ihre Open-Source-Technologie auch auf C++ ausweiten. Das Projekt nennt sich Deterministic Parallel Java und soll Entwicklern dabei helfen, parallele Programmierfehler zu beheben.

Nach wie vor stellen mehrkernige Prozessorarchitekturen für Java- und andere klassische Anwendungen eine große Herausforderung dar. Denn meist sind diese single-threaded. So können zahlreiche Legacy-Java-Anwendungen oftmals nur einen Prozessorkern nutzen.

Da mehrkernige Prozessoren nicht mehr wegzudenken sind, werden in Zukunft auch alle Anwendungen parallel sein, um die Hardware-Ressourcen optimal ausnutzen zu können. Nun hoffen die Forscher, mit ihrem Projekt das parallele Entwickeln zu vereinfachen.

Das Deterministic Parallel Java besteht aus einem Compiler, einer Laufzeitumgebung und weiteren Tools. Es soll eine deterministische Semantik garantieren. Damit ist sichergestellt, dass ein bestimmter Input immer einen gleichbleibenden Wert erzeugt. Das ist in sequentiellen Programmen meist kein Thema. Bei parallelen Anwendungen hingegen ist das keineswegs selbstverständlich, denn der Zeitpunkt der Synchronisation von Daten entscheidet mit über das Ergebnis. Ist ein Entwickler hier unvorsichtig, ist sozusagen ein kleiner Zufallsgenerator in die Software eingebaut, der zu schweren Fehlern führen kann.

Das Java-Tool wurde bereits im Sommer veröffentlicht – jedoch erst jetzt offiziell angekündigt. Die Download-Zahlen sind derzeit noch recht übersichtlich. Feedback ist noch keines bekannt.