我已經在CUDA 8.0和libcudnn.so.5.1.10的Ubuntu 16.04上安裝了H2O 3.11.0.266,所以我相信H2O應該能夠找到我的GPU。如何判斷H2O 3.11.0.266是否在使用GPU運行?
但是,當我在Python中啓動h2o.init()時,沒有看到它實際上使用我的GPU的證據。我看到:
- H2O簇總芯:8
- H2O集羣允許芯:8
這是相同的,因爲我在以前的版本(預GPU)了。
此外,http://127.0.0.1:54321/flow/index.html也只顯示8個內核。
我不知道如果我沒有什麼正確安裝或是否最新h2o.init()沒有執行什麼的GPU可還是什麼信息...
提前非常感謝。
我應該提到3.11.0.266應該是支持GPU的版本。
感謝您的所有建議。我現在運行的H2O 3.13.0.337
我發現這個命令也很有用:
sudo watch -n 0.1 'ps f -o user,pgrp,pid,pcpu,pmem,start,time,command -p `/usr/bin/lsof -n -w -t /dev/nvidia*`'
但是,我一點點疑惑。當我運行XGBoost時,我清楚地看到,GPU的使用率非常活躍30%到40%(以及我所有的8個CPU核心,我猜想它們必須管理GPU)。XGB完成我的分類問題20秒。
GLM運行非常快,所以這是一個有點硬,如果它使用我的GPU(在不到一秒鐘完成的判斷。它由PS程序顯示啓動的列開始時鐘。
USER PGRP PID %CPU %MEM STARTED TIME COMMAND
user 3380 3380 116 12.0 10:52:56 04:36:36 /usr/local/anaconda2/bin/java -ea -verbose:gc -XX:+PrintGCDetails -XX:+PrintGCTimeStamps -jar /usr/local/anaconda2/lib/python2.7/site-packages/h
分佈式隨機森林也啓動時鐘,但似乎沒有使用任何GPU處理,但它確實使用了所有CPU核心。
GBM類似,訓練相同問題需要1.5分鐘,XGB需要20秒。由於算法是相似的,我會期待他們花費相似的時間並以類似的方式使用GPU。我發現這種意外NG。
我確信XGBoost正在使用GPU,但我不確定是否有其他算法。
[加入]
通過在H 2 O 3.13.0.341比較的方式。注意到溫度差異(!)和百分比GPU
這裏是gpustat -cup節目,當我運行xgboost:
[0] GeForce GTX 1080 | 64'C, 90 % | 1189/8105 MB | clem:java/31183(191M)
下面是它顯示當我運行分佈隨機森林(類似的結果發生了GBM和深度學習)
[0] GeForce GTX 1080 | 51'C, 5 % | 1187/8105 MB | clem:java/31183(189M)
另外需要指出的是,即使即將使用h2o.init()輸出,也不會提及GPU。但上面的nvidia-smi工具是可靠的。 – TomKraljevic