深層学習(Deep learning)を用いた医用画像処理の研究について
基本的にnvidia のGPUを搭載したLinux (CentOS)マシンを使っていますが、最近はARM Mac(M1チップ)のGPUでもPytorchが動作するため、プロトタイピングをMacで行っています。MacのGPU (Metal Performance Shaders, MPS)が使用可能かどうかは、以下のコードで調べることができます。
torch.backends.mps.is_available()
TrueであればMacのGPUが使えますので、以下のようにしてGPUを使う用意をします。
device = "mps"
nvidiaのGPUのときにはdevice = "cuda:0"としてCUDAを使いましたが、これを書き換えるだけで、これまで使っていたプログラムコードがほぼそのまま使えます。
※2023年4月10日現在、PytorchのConv3dはARM Macで使えないようです。原因はMacのGPUが4階を超えるサイズのテンソルを扱うことができないことにあるようです。PytorchのConv3dの入力は、バッチサイズ、チャネル、x、y、zの5階テンソルです。