Skip to content

miguelamda/cuda-numba

 
 

Repository files navigation

CUDA con Python y Numba

Esta introducción a CUDA con Python mediante Numba está extraído en su casi totalidad del "Numba tutorial for GTC 2017 conference". Se han actualizado algunos códigos, traducido al castellano, y adaptado un notebook para profundizar en implementación de map reduce. De esta forma, se muestra como un científico de datos y big data puede hacer uso de CUDA con Python para acelerar su código en GPU.

Este material es parte de la asignatura Arquitecturas y Paradigmas para Big Data del Máster propio en Data Science y Big Data de la Universidad de Sevilla.

La estructura es la siguiente:

  1. Bases de Numba: Una introducción a Numba, un módulo de Python que permite compilar funciones.
  2. Bases de CUDA: Una introducción a CUDA mediante Numba, mediante la compilación de ufunc de Numpy.
  3. Gestión de Memoria: Introducción al manejo de arrays en GPUs, minimizando la transferencia de datos desde y hacia la GPU.
  4. Map-Reduce en CUDA: Una demostración de cómo paralelizar las operaciones map y reduce en la GPU.
  5. Kernels de CUDA (original): Una muestra de cómo implementar una función kernel en CUDA, haciendo uso explícito de los hilos.
  6. Depuración (original): Algunas herramientas para depurar código CUDA, y típicos errores cometidos.
  7. Extra (original): Generación de números aleatorios en la GPU, uso de memoria on-chip (shared) y definición de gufunc.

About

Introducción a CUDA con Numba

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Jupyter Notebook 98.2%
  • Python 1.4%
  • Dockerfile 0.4%