AMI Ubuntu18.04 LT Deep Learning 用(元からnvidia driverが入っている)
EC2 G4インスタンス
困ったこと
- インスタンス起動時はnvidia-smiするとしっかりドライバーが表示されるのだが、一旦停止して再起動するとドライバーが見つからなくなってしまう。
以下のようにドライバーを入れ直すと再び使えるようになった。
104 sudo apt update
106 sudo apt install ubuntu-drivers-common
107 ubuntu-drivers devices
108 sudo apt install nvidia-driver-435
- ドライバーを認識させるには再起動が必要
- デフォルトで入っているpython3系だとcatboostは動かないし、optunaも入らない。catboostは
model.fit()
すると
CatboostError: catboost/cuda/cuda_lib/cuda_manager.h:305: Condition violated:`State == nullptr`
がでる。また、optunaのエラーは AttributeError: module 'setuptools.build_meta' has no attribute '__legacy__'
がでる。
pyenvを導入して3.7にあげることで解消した。
pyenvは
ubuntu 18.04 に pyenv をインストールする話 - Qiita
を参照した。
pyenv global 3.7.7
のようにしてあげても、port forwardでjupyterを立てると、pyenvではなくもとの3.6系を使ってしまう。
Jupyter NotebookでPython3が使えない問題を解決 - Qiitaを参照して以下のよう実行。
python3 -m pip install ipykernel
python3 -m ipykernel install
python3 -m IPython kernelspec install-self
するとwhich jupyter
すると、/home/ubuntu/.pyenv/shims/jupyter
のようにpyenv下のjupyterをだしてくれる。
確実にこのjupyterを動かすためにフルパスを書いて実行するとよい。