我的GPU是Titan X應該比Intel(R)Xeon(R)CPU E5-2643 v3 @ 3.40GHz的CPU要快。但是我的兩款機型在GPU上運行速度稍慢。一個模型在GPU上運行得更快。在這兩個模型中,一個用tensorflow實現,另一個用theano實現。這兩個模型的共同特點是它們都屬於分級Bi-LSTM模型,這意味着底部Bi-LSTM的最後輸出作爲輸入被饋送到另一個。所以這兩種模式都不是太簡單。 所以我想問一下在GPU上運行速度比CPU慢的原因是什麼?GPU上的深度學習模式運行速度慢於CPU上運行的可能原因是什麼?
1
A
回答
0
我公司可提供的theano側的一些信息:
Theano已經具有scan
多個問題,這是其RNN主力循環。
下面是其中一些:
由於theano不知道在編譯時形狀信息,編譯後的程序可能是次優(例如使用
gemv
矢量矢量點)。(截至2016年11月)當前版本的
scan
是在cython中實現的,它在純C++版本上有一定的開銷。如果RNN在一個步驟中沒有太多的計算密度,這可能很重要。它流水不好。使用
scan
來實現映射操作通常比直接使用底層操作要慢。顯然,優化器還不成熟,仍然無法識別這類問題。
解決方案:
嘗試升級到dev版本。他們一直在加班加點改進。
嘗試展開RNN(使用簡單的循環來構建圖形而不是
scan
),如果您負擔得起編譯時間。我做了一個PR地址現在它是開發主分支的一部分。gemv
問題,只針對舊的GPU後端。嘗試一下(如果尚未合併)。
相關問題
- 1. 爲什麼我的GPU的代碼運行速度大幅減慢,然後CPU
- 2. xgboost速度慢的原因是什麼?
- 3. 用於深度學習的最佳GPU + CPU配置
- 4. 爲什麼我們需要GPU進行深度學習?
- 5. 內核在多核上運行速度很快,但在GPU上運行速度相對較慢
- 6. 爲什麼quickSort運行速度較慢?
- 7. OpenCL運行速度比Cython慢(在CPU上)
- 8. Websphere的運行速度比Tomcat慢多少原因
- 9. GPU上的Tensorflow matmul計算比CPU上的計算速度慢
- 10. 爲什麼PHP在apache服務器上運行速度很慢
- 11. GPU可以用來運行在CPU上運行的程序嗎?
- 12. JMeter運行速度很慢
- 13. TortoiseSVN運行速度很慢
- 14. CURAND運行速度較慢
- 15. CoreNLP運行速度太慢
- 16. 運動 - 原因是程序運行速度慢,以及如何解決它
- 17. 靜脈模擬運行速度很慢
- 18. Android上的Encog運行速度太慢,該怎麼辦?
- 19. 爲什麼從GPU到CPU的數據傳輸速度很慢?
- 20. 內核在較新和「更好」的Nvidia GPU上運行速度較慢
- 21. 什麼可能導致從Windows服務執行的進程運行速度比從命令行(admin)運行慢?
- 22. 什麼可能導致Android應用程序在相同設備上運行速度較慢而運行速度較慢?
- 23. AnimationFrame動畫速度如此之慢的原因是什麼?
- 24. memcached在遠程服務器上速度明顯較慢的原因是什麼?
- 25. 的executeQuery命令運行速度很慢
- 26. 運行速度很慢的VBA代碼
- 27. Galaxy 10.1的運行速度比Thunderbolt慢
- 28. 運行速度非常慢的網站
- 29. MySQL中運行速度慢的查詢
- 30. OpenCL內核在速度更快的GPU上執行速度更慢
「nvidia-smi」報告的gpu使用情況是什麼?也許代碼不夠利用GPU? – sygi