2016-04-21 4 views
1

私は最初にsshに接続したリモートサーバーでtheanoを使用します(私はそのシステムにrootを持っていません)。しかし、これは正常に動作しますが、screenを起動すると、theanoをインポートしようとするとエラーが発生します。 screenを使用していないスクリーンセーバー内でtheanoを使用するには?

行動:

>>> import theano 
Using gpu device 0: GeForce GTX TITAN X (CNMeM is disabled, CuDNN 4007) 

行動screenを使用して:

>>> import theano 
ERROR (theano.sandbox.cuda): Failed to compile cuda_ndarray.cu: libcublas.so.7.5: cannot open shared object file: No such file or directory 
Traceback (most recent call last): 
    File "<stdin>", line 1, in <module> 
    File "/home/2012/enewel3/.local/lib/python2.7/site-packages/theano/__init__.py", line 103, in <module> 
    import theano.sandbox.cuda 
    File "/home/2012/enewel3/.local/lib/python2.7/site-packages/theano/sandbox/cuda/__init__.py", line 697, in <module> 
    use(device=config.device, force=config.force_device, test_driver=False) 
    File "/home/2012/enewel3/.local/lib/python2.7/site-packages/theano/sandbox/cuda/__init__.py", line 496, in use 
    device, cuda_initialization_error_message)) 
EnvironmentError: You forced the use of gpu device gpu, but CUDA initialization failed with error: 
cuda unavailable 

がどのように私は、画面のセッション内theano使用する必要がありますか?

答えて

2

この問題は、ほとんどの環境変数を継承するものの、いくつかの環境変数が追加、削除、変更されるという問題がありました。私の場合、それはLD_LIBRARY_PATHの値を変更していました。

画面に入ると、手動で環境変数を適切な値に設定することで問題が解決されました。私にとって、それは次のようになります。私の.bashrcにその行を追加する

export LD_LIBRARY_PATH=/usr/local/cuda/lib64:/usr/local/pkgs/gurobi502/linux64/lib 

は画面が常に正しい値を取得することを確認します。 .bash_profileはログイン時にのみ実行され、.bashrcはすべての新しいシェルに対して実行されるため、.bash_profileに追加すると機能しません。

関連する問題