GPU VASPが動かない

最新のUbuntu 16.04でCudaを.debで入れるとGPU VASPが動かない。

Cuda 10.1でコンパイルするとundefined reference to 'cudaSetupArgument'になる。Cuda10でdeprecatedの関数がなくなった模様。

Cuda 9.2だとnvidiaのドライバが動かない。nvidia-smi -lが動かない。ドライバが見つからないから。カーネルとのミスマッチか。

VASP側を直すか、Cuda 9.2のインストールを頑張るか。cudaSetupArgumentを置き換えるための情報が簡単に見つからないので、Cuda 9.2の情報を探す。以下のサイトによるとnvidiaドライバとcudaを別々に入れると良さそうで、実際にうまくいく。

ubuntu+nVIDIA復旧成功 - ローリングコンバットピッチなう!

簡単にまとめると

sh cuda_9.2.148_396.37_linux.run --silent --toolkit --no-opengl-libs
sh cuda_9.2.148.1_linux.run --silent --accept-eula
apt install dkms
sh NVIDIA-Linux-x86_64-418.40.04.run --silent --no-opengl-files --no-libglx-indirect --dkms