Choisir entre les GPU GeForce ou Quadro pour faire de l'apprentissage automatique via TensorFlow

Y a-t-il une différence notable dans les performances de TensorFlow si vous utilisez des GPU Quadro contre des GPU GeForce?

Par exemple, utilise-t-il des opérations de double précision ou autre chose qui provoquerait une baisse des cartes GeForce?

Je suis sur le point d'acheter un GPU pour TensorFlow, et je voulais savoir si une GeForce serait ok. Merci et appréciez votre aide

23
demandé sur gordatron 2016-01-11 08:57:40

1 réponses

Je pense que GeForce TITAN est génial et est largement utilisé dans L'apprentissage automatique (ML). En ML, une seule précision est suffisante dans la plupart des cas.

Plus de détails sur les performances de la ligne GTX (actuellement GeForce 10) peuvent être trouvés dans Wikipedia, ici .

D'autres sources sur le web soutiennent cette affirmation. Voici une citation de doc-ok dans 2013 (permalien).

A titre de comparaison, un" niveau d'entrée " $700 Quadro 4000 est nettement plus lent qu'un $ 530 GeForce GTX 680 haut de gamme, au moins selon mes mesures en utilisant plusieurs applications Vrui, et la performance la plus proche-équivalente à une GeForce GTX 680 que j'ai pu trouver était un Quadro 6000 pour un énorme 3660$.

Spécifique à ML, y compris l'apprentissage en profondeur, il y a une discussion du forum Kaggle dédié à ce sujet (décembre 2014, permalink ), qui passe en revue les comparaisons entre les séries Quadro, GeForce et Tesla:

Les GPU Quadro ne sont pas pour Calcul scientifique, les GPU Tesla sont. Quadro les cartes sont conçues pour accélérer la CAO, de sorte qu'elles ne vous aideront pas à entraînez les neurones. Ils peuvent probablement être utilisés à cette fin juste bien, mais c'est un gaspillage d'argent.

Les cartes Tesla sont pour le calcul scientifique, mais elles ont tendance à être jolies coûteux. Les bonnes nouvelles sont que la plupart des fonctionnalités offertes par Tesla les cartes sur les cartes GeForce ne sont pas nécessaires pour former les réseaux de neurones.

Par exemple, les cartes Tesla habituellement avoir de la mémoire ECC, ce qui est agréable à mais pas une exigence. Ils ont également un meilleur soutien pour double précision calculs, mais unique précision est beaucoup pour formation de réseau de neurones, et ils effectuent à peu près la même chose que GeForce cartes de pour que.

Une caractéristique utile des cartes Tesla est qu'elles ont tendance à avoir beaucoup plus de RAM que les cartes GeForce comparables. Plus de RAM est toujours le bienvenu si vous envisagez de former des modèles plus gros (ou d'utiliser beaucoup de RAM les calculs comme Circonvolutions à base de FFT).

Si vous choisissez entre Quadro et GeForce, choisissez définitivement GeForce. Si vous choisissez entre Tesla et GeForce, choisissez GeForce, sauf si vous avez beaucoup d'argent et pourrait vraiment utiliser la RAM supplémentaire.

Remarque: {[36] } faites attention à la plate-forme sur laquelle vous travaillez et à la précision par défaut. Par exemple, ici dans les forums CUDA (août 2016), un développeur possède deux Titan X (Série GeForce) et ne voit pas un gain de performance dans l'un de leurs scripts R ou Python. Ceci est diagnostiqué à la suite de R étant par défaut à double précision, et a une performance pire sur le nouveau GPU que leur CPU (un processeur Xeon). Les GPU Tesla sont cités comme les meilleures performances pour une double précision. Dans ce cas, la conversion de tous les nombres en float32 augmente les performances de 12.437 s avec nvblas 0.324 s avec gmatrix + float32s sur un TITAN X (voir premier benchmark). Citation de cette discussion du forum:

Double les performances de précision du Titan X sont assez faibles.

29
répondu Patric 2018-01-31 04:27:33