Herramientas de desarrollo de software
Introducción a la programación para la GPU
- Seminarios y sencillos tutoriales de autoestudio en audio y vídeo
- Complemento a la documentación de CUDA, incluidas las guías de ajuste de Fermi
- NVIDIA y la Universidad de Illinois publican el primer libro de texto dedicado al procesamiento paralelo masivo: David Kirk, NVIDIA y Dr. Wen-mei Hwu, University of Illinois
Cómo obtener ayuda sobre CUDA
- Empieza con los foros de CUDA
- Regístrate como desarrollador de CUDA
- Podrás notificar y conocer errores, y obtener acceso anticipado a versiones preliminares del software
Herramientas de desarrollo
- Controladores para las GPUs Tesla
- Compilador de CUDA C y C++ para GPUs
- Incluye el depurador GDB para CUDA y CUDA Visual Profiler
- Controladores de OpenCL, Visual Profiler, ejemplos de código del SDK y más
- Compilador de Fortran para CUDA de PGI
- Entorno de desarrollo Parallel NSight para Visual Studio destinado al desarrollo de código en la GPU (antes denominado “Nexus”)
Ejemplos de códigos y librerías
- Suministrados por NVIDIA
- Ejemplos de código CUDA del SDK
- Librería BLAS de CUDA (parte del toolkit)
- Librería FFT de CUDA (parte del toolkit)
- Vector de multiplicación de matrices dispersas de NVIDIA: código, artículo 1, artículo 2
- NPP: primera aproximación a las primitivas de rendimiento de NVIDIA: se centra en el procesamiento de imágenes y vídeo
- Suministrados por otras empresas o entidades
- Librería cuDPP (CUDA data parallel primitives)
- Herramientas CULA: LAPACK en GPUs CUDA de EM Photonics
- MAGMA: LAPACK en GPUs CUDA y CPUs multinúcleo del grupo de Dongarra
- Método de gradiente conjugado con precondicionador Jacobi
- GPULib: librería de funciones matemáticas para IDL y MATLAB
- Librería de procesamiento de señales VSIPL de la GPU
- Librería de generación de imágenes y visión computarizada
- OpenCurrent: librería de código abierto para cálculo CUDA de ecuaciones en derivadas parciales sobre grids normales
- libSVM en CUDA/GPUs
Compiladores de autoparalelización (con uso de directrices)
- Compilador de autoparalelización de C y Fortran (de PGI) para CUDA C
- Compilador de autoparalelización HMPP de CAPS para CUDA C basado en C y Fortran
Soporte de MATLAB, Mathematica, R, LabView
- MATLAB
- Regístrate para obtener la beta de MathWorks para la GPU
- Artículo sobre MathWorks: Aceleración de las funciones de MATLAB para CUDA con MEX
- Página completa sobre el soporte de MATLAB en CUDA
- Plugin Jacket basado en CUDA para Matlab de Accelereyes
- GPULib: librería de funciones matemáticas con vínculos para IDL y MATLAB
- Plugin de Mathematica para CUDA
- Habilitación del GPU Computing en el entorno estadístico de R
- Librería CUDA para LabVIEW de National Instruments
Soporte de Fortran, Java, Python, C++, .NET, F#
- Fortran
- Compilador de Fortran para CUDA de PGI
- Traductor de Fortran a C para CUDA
- FLAGON: librería de Fortran 95 para cálculo en la GPU
- Interfaz (wrapper) de Python para CUDA: PyCUDA
- Wrapper de Java
- Integración de .NET para CUDA
- Thrust: librería de plantillas de C++ para CUDA
- CuPP : infraestructura de C++ para CUDA
- Libra: capa de abstracción de C/C++ para CUDA
- F# para CUDA
Herramientas de productividad y clúster