使用Fluid訓練模型時,使用多卡訓練報錯

2021-09-12 05:40:24 字數 1406 閱讀 6372

enforcenotmet: failed to find dynamic library: libnccl.so ( libnccl.so: cannot open shared object file: no such file or directory ) 

please specify its path correctly using following ways:

method. set environment variable ld_library_path on linux or dyld_library_path on mac os.

for instance, issue command: export ld_library_path=...

note: after mac os 10.11, using the dyld_library_path is impossible unless system integrity protection (sip) is disabled. at [/paddle/paddle/fluid/platform/dynload/dynamic_loader.cc:157]

paddlepaddle call stacks:

0 0x7f19fce44e96p paddle::platform::enforcenotmet::enforcenotmet(std::__exception_ptr::exception_ptr, char const*, int) + 486

1 0x7f19fe6ea71ep paddle::platform::dynload::getnccldsohandle() + 1822

2 0x7f19fcf3d0f9p void std::__once_call_impl(ncclcomm**, int, int*):: ()> >() + 9

3 0x7f1a6dfc2a80p pthread_once + 80

4 0x7f19fcf40651p paddle::platform::ncclcontextmap::ncclcontextmap(std::vector報錯資訊提示沒有找到libnccl.so檔案,可以嘗試全域性搜尋一下該檔案。

find / -name "libnccl.so*"

然後將找到的路徑新增到 ld_library_path 環境變數中則可。

nccl是nvidia collective multi-gpu communication library的簡稱,它是乙個實現多gpu的collective communication通訊(all-gather, reduce, broadcast)庫,nvidia做了很多優化,以在pcie、nvlink、infiniband上實現較高的通訊速度。

在深度學習使用多gpu並行訓練時,通常會使用nccl進行通訊。

使用matlab訓練mnist模型

前面的博文是通過命令進行mnist模型訓練與測試的,由於實驗需要,想要通過matlab語句來實現mnist模型的訓練,從而把這種方式用於其他問題模型的訓練與測試。1 準備資料與引數 因為matlab程式檔案是在matlab demo下,為了方便,直接把需要的檔案拷貝到demo下 mnist data...

使用sklearn訓練xgboost模型

xgboost是提公升樹方法的一種,演算法由gbdt改進而來,在計算時也採用平行計算,速度更快。sklearn中提供分類和回歸的xgboost模型,本文對二分類問題採用xgboost進行訓練。import pandas as pd from sklearn.model selection impor...

tensorflow如何使用 訓練模型

首先檢測 存在 tpu tf.distribute.cluster resolver.tpuclusterresolver 如果先前設定好了 環境變數,不需要再給引數 tpu的返回值為 則檢測到了 tf.config.experimental connect to cluster tpu tf.tp...