mehrere der Prozessoren des Systems verteilt. So halbiert sich die Berechnungsgeschwindigkeit bereits beim hin zuschalten eines zweiten Prozessors. Moderne Grafikkarten verfügen Heutzutage zwischen 16 (Geforce 8400 GS) und 128 (Geforce 8800 Ultra) und sogar bis zu 480 (Geforce GTX 480) sogenannter Stream Prozessoren. So können parallele Algorithmen massiv parallel ausgeführt werden. Im Fall von Raytracing/Raycasting werden nun Bildwiederholraten durch Portierung der Algorithmen (mittels CUDA oder OpenCL) auf die Grafikkarte von mehren Bildern pro Sekunde möglich.

OpenCL
------

OpenCL, auch Open Computing Language, ist ein von der Khronos Group entwickelter Standard. Mit diesem und der Sprache OpenCL C können Programme sowohl für CPUs als auch für GPUs (Grafikprozessoren) entwickelt werden. OpenCL Programme (auch Kernels genannt) können während der Ausführung auf mehrere OpenCL-fähige Geräte verteilt werden. Ein OpenCL-System besteht immer aus zwei oder mehreren Komponenten. Zum einem dem sogenannten Host-Programm und aus mehreren OpenCL fähigen Devices. Ein Device kann z.B. eine CPU oder eine GPU darstellen. Die Devices wiederum bestehen aus einer oder mehreren Computing Units. Bei CPUs sind dies die Kerne und bei Grafikkarten die Streamprozessoren. Zur Laufzeit werden die Kernels (OpenCL Programme) auf diese Streamprozessoren durch den Host verteilt und können somit parallel abgearbeitet werden. OpenCL Kernel werden erst zur 