OpenCL
Significa "Open Computing Language". OpenCL es un estándar abierto para la programación paralela multiplataforma. Apple lo desarrolló originalmente en 2008 y ahora lo mantiene Khronos Group. El primer sistema operativo importante compatible con OpenCL fue Snow Leopard (Mac OS X 10.6), que se lanzó en 2009.
OpenCL proporciona una API que permite que los programas de software accedan simultáneamente a varios procesadores para realizar procesamiento paralelo. Algunos ejemplos son las CPU, las GPU, los procesadores de señales digitales (DSP) y las matrices de puertas programables en campo (FPGA). Al distribuir la carga informática entre varios procesadores, OpenCL aumenta la eficiencia del procesamiento y puede mejorar considerablemente el rendimiento de un programa.
Aunque OpenCL es compatible con muchos tipos diferentes de procesadores, se utiliza principalmente para acceder a la GPU con fines de computación general. Esta técnica, también llamada GPGPU, aprovecha la potencia de procesamiento de la GPU y permite que ayude a la CPU a completar cálculos. Antes de OpenCL, el procesador gráfico solía permanecer inactivo mientras la CPU funcionaba a plena capacidad. OpenCL permite que la GPU ayude a la CPU a procesar cálculos no relacionados con los gráficos.
Para aprovechar OpenCL, tanto el hardware como el software deben ser compatibles con la API de OpenCL. Debido a la ventaja de rendimiento que proporciona OpenCL, la mayoría de las tarjetas gráficas desarrolladas por NVIDIA y AMD ahora son compatibles con OpenCL. Muchos procesadores gráficos móviles, como los que se utilizan en teléfonos inteligentes y tabletas, también son compatibles con OpenCL.
Pon a prueba tu conocimiento