Si se trata de datos a gran escala, la GPU individual no es suficiente, porque cada vez que necesita copiar datos de la RAM de la CPU a la RAM de la GPU y después de hacer el cálculo, debe guardar el resultado intermedio, por lo tanto, debe volver a copiar los datos nuevamente en CPU RAM de GPU RAM. Es un proceso que consume poco tiempo.
Resolví este problema construyendo un clúster GPU y escribí mi programa Cuda dentro del marco openMPI, he implementado la simulación de la cadena de Markov en este clúster (fue un proyecto POC).
Hice este clúster con cinco máquinas con una tarjeta GTX 690 de 4 GB, y en cada máquina puse los mismos datos, pero especifiqué en mi programa MPI qué porción de datos usa cada máquina y con este enfoque he disminuido los datos 5 veces por máquina, puede disminuir el promedio todo el tiempo del proceso, pero también aumenta la complejidad del programa, ya que necesita escribir una lógica para combinar el resultado intermedio de cada máquina.
Computación paralela: ¿Cuáles son los buenos enfoques y fuentes para programar CUDA en Machine Learning con datos a gran escala?
Related Content
¿Cuáles son los avances actuales en la ciencia de datos genómicos?
¿Cómo se puede usar el aprendizaje profundo para la detección de eventos anormales en los videos?
¿Podría la renormalización de lotes reemplazar la normalización de lotes virtual en las GAN?
Hubo dos cursos en línea sobre programación CUDA C, uno sobre curso y otro sobre udacity (bajo el nombre de “programación paralela heterogénea”)
More Interesting
Aprendizaje automático: ¿cómo se puede saber cuándo combinar diferentes características sería útil?
Ingeniero de Aprendizaje Automático de Udacity Nanodegree: ¿Dónde están los proyectos?
Cómo comenzar a aprender y codificar Inteligencia Artificial
¿Cuál es la diferencia entre rpart y randomForest en R?
Cómo aplicar el aprendizaje automático a la realidad virtual / aumentada
¿Qué tan útil es la regresión del proceso gaussiano? ¿Tienes un buen ejemplo?
¿Debo elegir PHP para el aprendizaje automático?
¿Por qué la pila de RBM después de aprender no es una máquina de Boltzmann profunda (DBM)?
¿Cómo podría el posmodernismo cambiar el aprendizaje automático?
¿Por qué se usa Python para el aprendizaje profundo si es tan lento?
¿El proceso gaussiano supone que sus covarianzas se mantienen constantes?