Una red neuronal implementada en CUDA y C; con el objetivo de comparar el "speed up" que se puede alcanzar utilizando la GPU para entrenar en paralelo.
Para información detallada, le invito a leer el Reporte de este proyecto.
Fue implementado y probado en Ubuntu 16.06 con CUDA 8.0; ejecutado en una GPU NVidia Geforce GTX 960m.
- Tener tarjeta de video (GPU) NVidia.
- Tener instalado CUDA Toolkit 8.0.
- Tener compilador nvcc (/usr/local/cuda-8.0/bin/nvcc).
Si hay problemas de compilación puede necesitarse configurar la ubicación del compilador nvcc en el makefile.
$ make
Limpiar con:
$ make clean
Ejecutar un entrenamiento de la compuerta logica OR secuencialmente y luego en GPU.
$ ./main
Se muestran estadísticas de la cantidad de neuronas evaluadas por segundo al terminar cada entrenamiento o al precionar CTRL+C
.