Teilaufgabe APU (GPU-Computing)
Durch den Einsatz von Stream-Prozessoren ist es möglich, bestimmte Rechenaufgaben der GPU zu überlassen. Diese Rechenaufgaben werden im Verhältnis zur CPU wesentlich schneller ausgeführt. Der Grund liegt an der Anzahl der FPUs. Die Floating Point Units (Gleitkommaeinheiten) sind bei Prozessoren wesentlich weniger als bei den modernen Grafikchips. Sowohl derzeitige nVIDIA- als auch AMD-Grafikkarten besitzen hunderte davon, was eine höhere Rechenleistung erzeugt. Diese auf den GPUs integrierten FPUs sind allerdings nur für maximal 64 Bit breite Register ausgelegt. Es gibt auch GPUs mit kleineren Registern. Diese sind dann 32 Bit breit und erzeugen nur eine einfache Genauigkeit (SP = Single Precision) in der Berechnung. Eine doppelte Genauigkeit (DP = Double Precision) der Berechnung wird mit einer 64-bit breiten FPUs erreicht.
Aktuelle Prozessoren sind mit wenigen, aber 80 Bit breiten FPUs ausgestattet. Durch die geringere Stückzahl an FPUs sind daher die x86-Cores wesentlich langsamer, können aber genauer rechnen und sind daher flexibler für Rechenaufgaben.
GPU-Computing wird seit einigen Jahren betrieben. Mit der Radeon X1000-Serie war ATi in der Lage, erstmals Berechnungen den Grafikprozessor zu überlassen. Für die Berechnung mittels dieses Grafikprozessors konnte man mit einer speziell auf die GPUs angepassten Programmierung Berechnungen durchführen lassen. Folding@home ein Programm zur Simulation zur Faltung von Proteinen wird für wissenschaftliche Berechnungen verwendet, um Krebskrankheiten, BSE und Alzheimer zu erforschen. Man stellte schnell fest, dass heute Server alleine nicht ausreichen würden um den Rechenaufwand bändigen zu können. Die Stanford University hat daher Folding@home so konzipiert, dass mehrere Computer, auch Privatcomputer an der Berechnung teilhaben können, sofern der Benutzer das Programm installiert hat. Das Rechencluster ist wesentlich schneller und wird mit der Berechnung mit Hilfe der GPUs beschleunigt.
Seit der HD2000-Serie wird auch offiziell CAL unterstützt. Wofür CAL steht, konnte ich während der Recherche nicht herausfinden. Jedoch müsste es sich um eine Programmiersprache oder ähnliches handeln.