問題描述:
用screen之前,可以正常運行。
使用screen之後,出現Error:
ModuleNotFoundError: No module named 'torch'
原因分析:
在screen後的窗口中輸入which python,得到如下結果:
(spadn) XXX@gpu01:~XXX/DeblurGAN-master/OneNet$ which python
/home/XXX/anaconda3/envs/tfdpdnn/bin/python
可見,明明應該是spadn下的環境,卻進入了tfdpdnn的環境。tfdpdnn是裝的tensorflow, 故沒有pytorch模塊。
解決方法:
法1(比較蠢):
將想要使用的那個環境(本文中是spadn)下的python文件(名字一般是python3.6)改成一個比較奇怪的名字,不和tfdpdnn環境下的Python文件重名。例如,改爲pyth0n,運行程序時也在命令行中運行:
pyth0n main.py
即可。
雖然的確可以使程序正常運行,但這樣若輸入nvidia-smi,會出現如下結果:
好蠢好蠢
方法2
暫時還沒有更好的方法,網上的很多方法也無效。待續。