Red de conocimiento informático - Aprendizaje de código fuente - Potencia informática en plataformas de datos: qué GPU son mejores para la profundidad

Potencia informática en plataformas de datos: qué GPU son mejores para la profundidad

¿GPU NVIDIA, GPU AMD o Intel Xeon Phi?

Es fácil crear una biblioteca de aprendizaje profundo CUDA utilizando la biblioteca estándar de NVIDIA, pero la biblioteca estándar OpenCL de AMD no es tan poderosa. Y la comunidad de computación GPU o GPU de uso general para CUDA es grande, mientras que la comunidad para OpenCL es más pequeña. Es más fácil encontrar buenas soluciones de código abierto y consejos de programación confiables en la comunidad CUDA. NVIDIA ha invertido en aprendizaje profundo desde sus inicios y los beneficios han sido enormes. Aunque otras empresas ahora están invirtiendo dinero y energía en el aprendizaje profundo, empezaron tarde y se quedaron atrás. Si utiliza otro software y hardware que no sea NVIDIA-CUDA para el aprendizaje profundo, se desviará.

Xeon Phi de Intel admite código C estándar y es fácil modificar estos códigos para acelerar en Xeon Phi. Esta característica suena interesante. Pero, de hecho, sólo se admite una pequeña parte del código C, lo cual no es práctico. Incluso si es compatible, la ejecución es lenta. Tim ha utilizado un grupo de 500 Xeon Phi y ha encontrado problemas uno tras otro. Por ejemplo, Xeon Phi MKL es incompatible con Python Numpy, por lo que no se pueden realizar pruebas unitarias. Debido a que el compilador Intel Xeon Phi no puede optimizar correctamente el código para las plantillas, como las declaraciones de cambio, es necesario refactorizar una gran parte del código. Debido a que el compilador Xeon Phi no admite algunas funciones de C11, se debe modificar la interfaz C del programa. Es engorroso, requiere mucho tiempo y es frustrante. La ejecución también es lenta. Cuando el tamaño del tensor cambia continuamente, no sé si se trata de un error o de la programación de subprocesos que afecta el rendimiento. Por ejemplo, si la capa totalmente conectada (FC) o la capa de desconexión (Dropout) no tienen el mismo tamaño, Xeon Phi es más lento que la CPU.

La GPU más rápida con un presupuesto limitado

¿De qué depende la alta velocidad de una GPU para aprendizaje profundo? ¿Es un núcleo CUDA? ¿Velocidad del reloj? ¿O el tamaño de la RAM? Ninguno de estos. El factor más importante que afecta el rendimiento del aprendizaje profundo es el ancho de banda de la memoria. El ancho de banda de la memoria de la GPU se optimiza a expensas del tiempo de acceso (latencia). CPU es todo lo contrario. Los cálculos con memoria más pequeña son rápidos, como la multiplicación de varios números (3*6*9); los cálculos con memoria más grande son lentos, como la multiplicación de matrices (A*B*C). Las GPU, gracias a su ancho de banda de memoria, son buenas para resolver problemas que requieren grandes cantidades de memoria.

Así que, a la hora de comprar una GPU rápida, fíjate primero en el ancho de banda.