在跑完mnist的knn分類後,跑的挺慢,突然想有沒有gpu的numpy的呢,上網查了查,才知道原生的numpy沒有實現(不應該啊。。。),結構查到了minpy,花了10分鐘左右配好了環境,寫個日誌記錄一下。
安裝minpy:
我的機器是ubuntu 16.04的,minpy需要cuda,cudnn,由於這倆我早就裝好了,就不說了。 minpy是基於mxnet進行運算的,所以需要安裝mxnet,官方鏈結新增鏈結描述
反正我用的最簡單的方式,沒從git原始碼安裝
sudo pip install mxnet-cu80 // 我cuda8.0的
(必須和cuda對應,第一次裝了9.0的了,就報錯了)
然後再
sudo pip install minpy
就ok了,是不是很easy(當然我們的easy是建立在大牛的肩膀上,感覺開發者們).
使用:
import minpy.numpy as np
我使用我knn中的**測試,平均cpu:0.8s,gpu:0.4s,只提速了0.4s左右(因為涉及的矩陣運算少)。
如下,使用高維矩陣點乘連乘做測試
import numpy as np
import numpy.random as random
#import minpy.numpy as np
#import minpy.numpy.random as random
import time
a = random.rand(
3000
,2000
)b = random.rand(
2000
,4000
)c = random.rand(
4000
,3000
)begin = time.time(
)for i in
range
(100):
np.dot(np.dot(a,b)
,c)end = time.time(
)print
(end-begin)
提公升4倍左右,乙個200s,乙個50s左右。
(同時發現乙個問題列印時間和gpu呼叫應該不是同執行緒的,因為沒得到結果時間就列印出來了,手動計的時)
參考:minpy安裝手冊
使用GPU加速DSPSR
1 設定環境變數,加入packages sudo gedit etc profile 在下面新增cuda路徑,輸入 packages usr local cuda 10.1 儲存後,使用指令 source etc profile 2 執行dspsr configure cd dspsr config...
tensorflow使用GPU加速
測試faster rcnn時,cpu計算速度較慢,調整 改為gpu加速運算 將 with tf.session as sess 替換為 1 gpu options tf.gpuoptions per process gpu memory fraction 0.9 2 with tf.session ...
cupy利用GPU來加速你的numpy操作
numpy是python中常用的乙個矩陣運算庫,而且numpy的底層都是採用c實現的,所以執行效率和速度也是很快的,但numpy是利用cpu來進行矩陣運算的,如果遇到大資料的矩陣運算,你會發現numpy真的很慢。那有沒有什麼辦法來加速呢?想到大矩陣的運算肯定會想多使用gpu來計算,就讓我們來看看nu...