OpenCL
Significa "Open Computing Language". O OpenCL é um padrão aberto para programação paralela multiplataforma. Ele foi desenvolvido originalmente pela Apple em 2008 e agora é mantido pelo Khronos Group. O primeiro grande sistema operacional a oferecer suporte ao OpenCL foi o Snow Leopard (Mac OS X 10.6), lançado em 2009.
O OpenCL fornece uma API que permite que programas de software acessem vários processadores simultaneamente para realizar processamento paralelo. Os exemplos incluem CPUs, GPUs, processadores de sinais digitais (DSPs) e matrizes de portas programáveis em campo (FPGAs). Ao distribuir a carga computacional entre vários processadores, o OpenCL aumenta a eficiência do processamento e pode melhorar substancialmente o desempenho de um programa.
Embora o OpenCL ofereça suporte a muitos tipos diferentes de processadores, ele é usado principalmente para acessar a GPU em tarefas de computação geral. Essa técnica, também chamada de GPGPU, aproveita o poder de processamento da GPU e permite que ela ajude a CPU a concluir cálculos. Antes do OpenCL, o processador gráfico frequentemente permanecia ocioso enquanto a CPU funcionava em sua capacidade máxima. O OpenCL permite que a GPU ajude a CPU a processar cálculos não relacionados a gráficos.
Para aproveitar o OpenCL, tanto o hardware quanto o software precisam oferecer suporte à API do OpenCL. Devido à vantagem de desempenho proporcionada pelo OpenCL, a maioria das placas de vídeo desenvolvidas pela NVIDIA e pela AMD agora oferece suporte ao OpenCL. Muitos processadores gráficos móveis, como os usados em smartphones e tablets, também oferecem suporte ao OpenCL.
Teste seus conhecimentos