NVIDIA ha presentado CUDA 6, la nueva versión de su tecnología que en esta ocasión destaca por emplear memoria compartida entre CPU y GPU, de tal manera que el software podrá acceder a la memoria de ambos independientemente sin tener que copiar información de uno a otro. ¿Os suena de algo esto? Efectivamente, es tremendamente parecido a hUMA de AMD, tecnología que por cierto estrenarán en las APUs Kaveri de nueva generación.
El principal objetivo de CUDA 6 es, según NVIDIA, facilitar en gran medida el desarrollo de aplicaciones compatibles con esta tecnología, que por supuesto seguirán siendo exclusivas del fabricante. OpenCL, la alternativa libre y «competencia» actual de CUDA, seguirá siendo compatible con todas las plataformas del mercado (incluyendo a NVIDIA) sigue sin convencer a los desarrolladores, y la inclusión de estas nuevas características en CUDA 6 podría provocar un declive en la utilización de OpenCL.
CUDA 6 ofrece además las siguientes características:
- Memoria unificada: Simplifica la programación de aplicaciones permitiendo a éstas acceder a la memoria de CPU y GPU sin la necesidad de copiar manualmente los datos de una a otra. Esto mejora el rendimiento (dado que se salta un paso) y añade soporte para aceleración por GPU para un amplio espectro de lenguajes de programación.
- Librerías: acelera automáticamente los cálculos de aplicaciones BLAS y FFTW en torno a un 800%, simplemente reemplazando las librerías existentes de CPU con las equivalentes en GPU.
- Escalado multi GPU: rediseña las librerías BLAS y FFT para que escalen automáticamente el rendimiento con hasta 8 GPUs simultáneamente en un único nodo, permitiendo un poder de cómputo de más de 9 TFlops de rendimiento por nodo y soportando cargas de trabajo superiores (hasta de 512 GB de una sola vez).
Más información en la web de NVIDIA.