3

クラスターで MPI および CUDA コードを実行しようとしています。コードは単一のマシンでは正常に動作しますが、クラスターで実行しようとするとエラーが発生します:

共有ライブラリの読み込み中にエラーが発生しました: libcudart.so.4: 共有オブジェクト ファイルを開けません: そのようなファイルやディレクトリはありません

PATH と LD_PATH を確認しましたが、問題ないようです。次のエントリを含む.bashrcファイルがあります-

export PATH=$PATH:/usr/local/lib/:/usr/local/lib/openmpi:/usr/local/cuda/bin export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/lib:/usr/local/ lib /openmpi/:/usr/local/cuda/lib

すべてのマシンに CUDA と OpenMPI が同じようにインストールされています。

/etc/ld.so.conf に /usr/local/cuda/lib もあります

誰でもこれで私を助けることができますか?この問題は本当に厄介です。

ありがとう。

4

1 に答える 1

5

クラスターでバッチジョブを送信する場合は、次のようなコマンドを追加してください

echo $LD_LIBRARY_PATH 
ldd ./your_app 

バッチスクリプトに。これは、問題のデバッグに役立つはずです。

また、mpirun で環境変数を必ずエクスポートしてください。たとえば、OpenMPI では、コードを次のように実行します。

mpirun -x LD_LIBRARY_PATH ...
于 2012-05-01T09:40:36.630 に答える