No sólo AMD ha hecho importantes anuncios esta semana en el marco de su evento APU13, la próxima semana comienza la Conferencia Internacional para Computación de Alto Rendimiento, más conocida como SC (Super Computer Conference) y NVIDIA alista sus novedades, entre ellas la próxima versión de su plataforma de computación paralela con CUDA 6.
Mientras CUDA 6 mantendrá muchas de las mejoras introducidas en las versiones previas (CUDA 5.5 y CUDA 5), una de las grandes novedades de la próxima versión de esta plataforma será el uso de memoria unificada o Unified Memory, algo que nos traerá de inmediato a la memoria la implementación hUMA (Heterogeneous Uniform Memory Access) de AMD. Pues la idea en el fondo es la misma, implementar un espacio de memoria común donde tanto la CPU y GPU tengan acceso por igual, eliminando –parcialmente- redundancias con el copiado de datos desde y hacia una y otra unidad de procesamiento, serial (CPU) y paralelo (GPU) a través de la memoria del sistema.
Un acceso unificado también simplifica notablemente la tarea a los desarrolladores en sus modelos de programación, para sacar un mejor rendimiento de sus aplicaciones aceleradas con la tecnología CUDA 6. Para poder realizar esto, los desarrolladores no necesitarán muchas líneas de código para implementar este soporte, tal como lo ilustra NVIDIA en esta imagen.
El rendimiento es otro aspecto que NVIDIA piensa optimizar o mejorar con CUDA 6, el rediseño de algunas librerías (BLAS Y FFT) permitirá sacar un mayor rendimiento de aplicaciones aceleradas mediante escalamiento automático en configuraciones multi-GPU, pudiendo alcanzar capacidades de cómputo en operaciones de punto flotante de doble precisión de hasta 9 TFLOPS utilizando por ejemplo una configuración de 8 GPUs (Kepler suponemos) en un solo nodo, estamos hablando de HPC desde luego.
CUDA 6 será soportado por los futuros productos de NVIDIA, como la próxima generación de GPU basadas en “Maxwell” y “Volta”. La próxima semana en la SC 2013 deberíamos conocer mayores detalles.
Dramatically simplify parallel programming with CUDA 6.0 .
Unified Memory
- Simplifies programming by enabling applications to access CPU and GPU memory without the need to manually copy data.
Drop-in Libraries
- Automatically accelerate applications’ FFTW calculations by up to 10X by simply replacing the existing FFTW CPU library with the GPU-accelerated equivalent. Similarly, BLAS calculations can be accelerated by up to 8X.
Multi-GPU scaling
- Re-designed BLAS and FFT GPU libraries automatically scale performance across up to eight GPUs in a single node, delivering over 9 teraflops of double precision performance per node, and supporting larger workloads than ever before (up to 512GB). Multi-GPU scaling can also be used with new BLAS drop-in library.
[NVIDIA]