OpenCL
Staat voor "Open Computing Language." OpenCL is een open standaard voor platformonafhankelijk, parallel programmeren. De standaard werd oorspronkelijk in 2008 ontwikkeld door Apple en wordt nu onderhouden door de Khronos Group. Het eerste grote besturingssysteem dat OpenCL ondersteunde, was Snow Leopard (Mac OS X 10.6), dat in 2009 werd uitgebracht.
OpenCL biedt een API waarmee software programma's tegelijkertijd toegang kunnen krijgen tot meerdere processors om parallelle verwerking uit te voeren. Voorbeelden zijn CPU's, GPU's, digitale signaalprocessors (DSP's) en field-programmable gate arrays (FPGA's). Door de rekenbelasting over meerdere processors te verdelen, verhoogt OpenCL de verwerkingsefficiëntie en kan het de prestaties van een programma aanzienlijk verbeteren.
Hoewel OpenCL veel verschillende typen processors ondersteunt, wordt het vooral gebruikt om toegang te krijgen tot de GPU voor algemene computertaken. Deze techniek, die ook GPGPU wordt genoemd, benut de rekenkracht van de GPU en maakt het mogelijk dat deze de CPU helpt bij het uitvoeren van berekeningen. Vóór OpenCL bleef de grafische processor vaak ongebruikt terwijl de CPU op volle capaciteit werkte. Met OpenCL kan de GPU de CPU helpen bij het verwerken van berekeningen die geen verband houden met grafische afbeeldingen.
Om OpenCL te kunnen gebruiken, moeten zowel de hardware als de software de OpenCL API ondersteunen. Vanwege het prestatievoordeel dat OpenCL biedt, ondersteunen de meeste videokaarten die door NVIDIA en AMD zijn ontwikkeld nu OpenCL. Veel mobiele grafische processors, zoals die in smartphones en tablets, ondersteunen OpenCL ook.
Test je kennis