PeakStream: Supercomputing mit CPUs und GPUs
Die Methode nennt sich "Stream Programming" und wurde an der Stanford-Universität entwickelt. Die Idee dahinter besteht in der Parallelisierung von Daten, nicht nur des eigentlichen Programmcodes. Die Datensätze werden dabei in "Streams" aufgeteilt, deren Speicherbelegung für den Programmierer transparent ist. Ein Stream-System kümmert sich also selbst um die Verwaltung des Speichers, die Hardware kann parallel mit mehreren Streams rechnen. Für diese Transparenz ist zwischen Betriebssystem und Anwendung eine Softwareschicht notwendig, welche die Aufgaben an die Hardware verteilt. Ein Stream-Programm soll dabei unabhängig von verschiedenen Prozessoren arbeiten.
Programmiert wird für Stream mit herkömmlichen C-Compilern für Linux. PeakStream nennt derzeit nur Red Hats Enterprise Linux 4.0 als Betriebssystem. Dort klinkt sich das API als virtuelle Maschine ein, über die dann die Anwendungen ausgeführt werden. Hinter dieser virtuellen Maschine dürfte auch die Ansprache verschiedener Prozessoren stecken. In der ersten Version empfiehlt PeakStream Opteron-Prozessoren und ATI-GPUs mit R580-Kern, was also der X1000-Serie von ATI entspricht. Dennoch soll PeakStream, wie das Unternehmen ausdrücklich betont, auch mit Intels Mehrkern-CPUs arbeiten, hier soll dann laut PeakStream Intels C-Compiler 9.0 gute Dienste leisten.
Als mögliche Anwendungen für das Stream Programming sind vor allem technisch-wissenschaftliche Aufgaben vorgesehen. PeakStream spricht sowohl von Erdbebenforschung als auch der Suche nach Bodenschätzen, dem Bereich Finanzdienstleistungen sowie der Auswertung von digitalen Bildern und Tonaufzeichnungen für Geheimdienste. Das Interesse an Stream Programming scheint groß zu sein: PeakStream konnte sich für seine erste Finanzierungsrunde von US-Investoren 17 Millionen US-Dollar sichern.