即使您不並行化演算法,使用多個 GPU 的另一個優點是您可以在每個 GPU 上單獨執行多個演算法或實驗。您不會獲得加速,但同時使用不同的演算法或參數,您確實可以獲得有關性能的更多資訊。如果您的主要目標是盡快獲得深度學習體驗,這非常有用,而且對於想要同時測試新演算法的多個版本的研究人員來說也非常有用。
在沒有並行性的情況下使用多個 GPU如果你想學習深度學習,這在心理上很重要。執行任務和接收該任務回饋的時間間隔越短,大腦將與該任務相關的記憶片段整合成連貫圖片的能力就越好。如果您在小型 芬蘭 whatsapp 負責人 資料集上在不同的 GPU 上訓練兩個卷積網絡,您將更快地了解對於良好效能來說什麼是重要的;您可以更輕鬆地偵測交叉驗證錯誤中的模式並正確解釋它們。您將能夠偵測模式,為您提供有關需要新增、刪除或調整哪些參數或圖層的線索。
您的第一個問題可能是深度學習的快速 GPU 效能最重要的功能是什麼:它們是 CUDA 核心嗎?時脈速度?記憶體大小?
雖然好的簡化建議是“注意記憶體頻寬”,但我不再建議這樣做。這是因為 GPU 硬體和軟體經過多年的發展,GPU 上的頻寬不再能很好地代表其效能。消費級 GPU 中 Tensor Core 的引入使問題更加複雜。現在,頻寬、FLOPS 和 Tensor Core 的組合是 GPU 效能的最佳指標。
要加深理解以做出明智的決定,一件事是了解硬體的哪些部分可以使 GPU 更快地執行兩個最重要的張量運算:矩陣乘法和卷積。
另請閱讀:用於機器學習和大數據效能的 GPU 運算;GPGPU CPU和圖形處理單元的工作;世界上最強大的超級計算機。