PythonでAI系をやっていると,CUDA・TensorFlow・PyTorchのversionの違いでつまずくことが結構あります.
本稿では,CUDAとTensorFlow,PyTorchのver対応について記述します.
TensorFlowとの対応表について
!(/image/CUDA_tf.png)
# GPUが使用できるかを確認
import TensorFlow as tf
device_name = tf.test.gpu_device_name()
if device_name != '/device:GPU:0':
print('GPU device not found')
print('Found GPU at: {}'.format(device_name))
PyTorchとの対応について
# GPUが使用できるかを確認
import torch
print(torch.CUDA.is_available())
CUDA
CUDA ToolkitとNVIDIAドライバの各バージョンについて,以下の画像に示します. !(/image/cuda_nvidia.png)
前準備
sudo apt update
sudo apt-get update
Nvidiaドライバのインストール
Nvidiaドライバをインストールします. 該当ドライバのバージョンのインストールがうまくいかない場合は、バージョンを少しずつ下げてみるのがお勧めです.
sudo apt update
# インストール可能なドライバのバージョンを確認
apt-cache search 'nvidia-[0-9]+$'
# ドライバのインストール(ここではnvidia-361)
sudo apt-get install nvidia-361
また,Nvidiaの公式サイトからもドライバをインストールできます. NVIDIAドライバダウンロード
!(/image/nvidia_dl.png)
CUDAのインストール
sudo apt-get update
sudo apt-get install build-essential
sudo apt-get install CUDA-10-0
実行環境の確認
以下のコードでCUDAのversionを確認します.watch -n 0.5
はコードを回している間に,GPUの使用状況を見る場合にも便利です.
nvcc --version
以下のコードでgpuの使用状況を確認.
#0.5秒毎にnvidia-smiの情報を更新して表示する
watch -n 0.5 nvidia-smi