caffe使用cuda速度只比cpu快了2倍?

今天終於吧caffe配好了,迫不及待的測試了兩個例子:

一個是caffe自帶的mnist例子。

另一個是網上有人改了caffe的例子cpp_classification,功能是識別貓。

配的比較困難,因爲用到了opencv、boost和cuda的各種庫,最終終於配好了。下面是測試數據(圖像大小216kb),跑多次程序,提速基本保持在1.5-2倍


CPU_ONLY=1
---------- Prediction for cat1.jpg ----------
start()
0.9282 - "n02129604 tiger, Panthera tigris"
0.0718 - "n02123159 tiger cat"
0.0001 - "n02128925 jaguar, panther, Panthera onca, Felis onca"
0.0000 - "n02128385 leopard, Panthera pardus"
0.0000 - "n02127052 lynx, catamount"
t =155.918186

CPU_ONLY=0
---------- Prediction for cat.jpg ----------
start()
0.9282 - "n02129604 tiger, Panthera tigris"
0.0718 - "n02123159 tiger cat"
0.0001 - "n02128925 jaguar, panther, Panthera onca, Felis onca"
0.0000 - "n02128385 leopard, Panthera pardus"
0.0000 - "n02127052 lynx, catamount"
t =70.072037


最開始懷疑圖像大小問題,是不是這個大小的圖像就是這麼慢,換圖片大小,沒用。後來又懷疑會不會我的opencv已經做了cuda加速(cpu_only=1的情況下)(因爲我配的opencv3.2_with_cuda),但是一想,這麼慢肯定沒做過加速,畢竟用的GTX1050的顯卡,不至於這麼慢,而且查了一些資料,雖然沒有明確證據證明opencv_with_cuda的普通算法代碼沒有加速,但一般用到加速的都需要包含一個帶gpu字眼的庫,並且要包含相關頭文件,因此認爲cpu_only=1版本並沒有cuda加速,思考良久。後來想到可能是代碼第一次運行時cuda未初始化,第一次運行較慢,於是修改了代碼跑了四張圖片,證實了我的想法。結果如下,第一幀圖片提速與上面測試一樣,後面都提速約10倍左右(圖片大小如圖所示)



CPU_ONLY=1
---------- Prediction for cat1.jpg ----------
start()
0.9282 - "n02129604 tiger, Panthera tigris"
0.0718 - "n02123159 tiger cat"
0.0001 - "n02128925 jaguar, panther, Panthera onca, Felis onca"
0.0000 - "n02128385 leopard, Panthera pardus"
0.0000 - "n02127052 lynx, catamount"
t =155.918186
---------- Prediction for cat2.jpg ----------
start()
0.2427 - "n02124075 Egyptian cat"
0.1550 - "n02123045 tabby, tabby cat"
0.1420 - "n02085620 Chihuahua"
0.0870 - "n02113023 Pembroke, Pembroke Welsh corgi"
0.0808 - "n02123159 tiger cat"
t =119.027723
---------- Prediction for cat3.jpg ----------
start()
0.9448 - "n02124075 Egyptian cat"
0.0229 - "n02123045 tabby, tabby cat"
0.0170 - "n02128757 snow leopard, ounce, Panthera uncia"
0.0084 - "n02128385 leopard, Panthera pardus"
0.0033 - "n02128925 jaguar, panther, Panthera onca, Felis onca"
t =125.195330
---------- Prediction for cat4.jpg ----------
start()
0.9781 - "n02130308 cheetah, chetah, Acinonyx jubatus"
0.0210 - "n02128385 leopard, Panthera pardus"
0.0009 - "n02128925 jaguar, panther, Panthera onca, Felis onca"
0.0000 - "n02128757 snow leopard, ounce, Panthera uncia"
0.0000 - "n02127052 lynx, catamount"
t =134.427212
請按任意鍵繼續. . .

CPU_ONLY=0
---------- Prediction for cat1.jpg ----------
start()
0.9282 - "n02129604 tiger, Panthera tigris"
0.0718 - "n02123159 tiger cat"
0.0001 - "n02128925 jaguar, panther, Panthera onca, Felis onca"
0.0000 - "n02128385 leopard, Panthera pardus"
0.0000 - "n02127052 lynx, catamount"
t =70.072037
---------- Prediction for cat2.jpg ----------
start()
0.2427 - "n02124075 Egyptian cat"
0.1550 - "n02123045 tabby, tabby cat"
0.1420 - "n02085620 Chihuahua"
0.0870 - "n02113023 Pembroke, Pembroke Welsh corgi"
0.0808 - "n02123159 tiger cat"
t =13.625015
---------- Prediction for cat3.jpg ----------
start()
0.9448 - "n02124075 Egyptian cat"
0.0229 - "n02123045 tabby, tabby cat"
0.0170 - "n02128757 snow leopard, ounce, Panthera uncia"
0.0084 - "n02128385 leopard, Panthera pardus"
0.0033 - "n02128925 jaguar, panther, Panthera onca, Felis onca"
t =12.377125
---------- Prediction for cat4.jpg ----------
start()
0.9781 - "n02130308 cheetah, chetah, Acinonyx jubatus"
0.0210 - "n02128385 leopard, Panthera pardus"
0.0009 - "n02128925 jaguar, panther, Panthera onca, Felis onca"
0.0000 - "n02128757 snow leopard, ounce, Panthera uncia"
0.0000 - "n02127052 lynx, catamount"
t =13.749035
請按任意鍵繼續. . .


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章