¿Es el NVIDIA Titan X mejor que dos GTX 980 para el aprendizaje profundo?

Compre un GTX Titan X. Un GTX Titan X es aproximadamente un 50% más rápido que el GTX 980 y el paralelismo con dos GTX 980 solo escalará bien en redes convolucionales y solo para algunas bibliotecas de software (la antorcha 7 tiene una paralelización fácil, pero el rendimiento podría ser mejor).

Ni los núcleos ni la memoria tienen nada que ver con la velocidad con la que una GPU procesa algoritmos de aprendizaje profundo. Todos los cálculos en el aprendizaje profundo están vinculados al ancho de banda, lo que significa que lleva más tiempo leer la memoria que hacer los cálculos. Si desea tener lecturas rápidas de memoria, necesitará un gran ancho de banda de memoria. El GTX Titan X tiene un ancho de banda de 336 GB / s, mientras que el GTX 980 tiene 224 GB / s. Si bien no puede comparar directamente el ancho de banda a través de la arquitectura (no puede comparar el ancho de banda de las series GTX 900 y GTX 700), hacerlo para la misma arquitectura casi se traducirá uno a uno en rendimiento. Entonces, el GTX Titan X es un 50% más rápido que el GTX 980.

Trabajé en la paralelización del aprendizaje profundo durante casi un año y es difícil lograr buenas aceleraciones. Para redes convolucionales, tendrá una aceleración del 70-90% para las capas convolucionales. No tendrá aceleración para capas densas o redes densas a menos que use paralelismo de modelo o paralelismo de datos con cuantificación de un bit y medio lote que agrega complicaciones adicionales. Rodarás mucho mejor con una sola GPU rápida.

Además, si su objetivo es entrenar redes convolucionales grandes, entonces la memoria de 12 GB en el GTX Titan será importante. Con el paralelismo de datos en capas convolucionales, estará limitado dramáticamente por los 4 GB en la GTX 980 (no tendrá 8 GB para redes, ya que cada GPU necesita realizar un seguimiento del mismo modelo).

Si desea leer más sobre esto en detalle, puede leer las publicaciones relevantes en mi blog timdettmers.com.

Depende del uso de la memoria o el subproceso. Si el uso de subprocesos es alto (menos dependencia entre subprocesos), elegiría dos 980 (alrededor de 4000 núcleos en total). Si el uso de memoria es alto, TitanX es una buena opción. Además, tener grandes cantidades de RAM aumenta drásticamente el tiempo de “cudaMalloc”.

Mucha gente podría ser mucho más profunda que yo, pero yo diría que no. El Titan tiene el doble de RAM que un GTX 980, además de tener mucha más precisión en un solo punto. Además, siempre recomendaría una sola unidad sobre dos unidades en SLI.

More Interesting

¿Qué tan lejos estamos de los AI de bricolaje capaces de investigar en Internet y proporcionar resúmenes?

¿Cómo se compara Grok / Numenta con otros algoritmos de aprendizaje automático?

¿Por qué los ingenieros de software franceses son tan buenos en las competiciones de IA?

¿Cómo podríamos realmente transferir las capacidades y posibilidades potenciales de la IA a la mejora de la inteligencia y las capacidades humanas?

¿Ha habido alguna investigación sobre la creación de una red neuronal artificial física?

¿Hay algún ejemplo de robots que maten humanos sin razón lógica?

¿Qué es la regularización en el aprendizaje automático?

En nuestro nivel de tecnología en computadoras y aviónica, o en un futuro próximo, ¿sería posible construir aviones transformables como un Veritech de Robotech (una Valquiria de Macross para puristas)? Si es posible, ¿sería práctico hacerlo?

¿Es la era de la inteligencia artificial la culminación de la era de la razón, o la IA es una de las consecuencias de la era de la razón?

¿Cómo se puede usar TensorFlow para el aprendizaje profundo?

Al calcular los pesos en una red neuronal, ¿por qué multiplica la señal de error por la entrada?

¿Podrán las computadoras igualar el cerebro humano (procesos de pensamiento similares, etc.)?

¿Cuál es la revisión más reciente sobre redes neuronales recurrentes para la clasificación de series de tiempo?

¿Dónde ves la robótica en una década (año 2026) a partir de ahora?

¿Cómo elige una IA su primer movimiento de ajedrez?