この作品
公式ツール villa のデバイス選択に MPS を加えるパッチを作りました。インク検出の推論と混合精度処理、Dice 系指標の計算、lasagna の自動デバイス選択を対象にしています。
仕組み
同じ入力を用意
巻物の同じ範囲のデータと学習済みモデルを用意し、使える計算装置を調べます。
使える計算装置を選ぶ
NVIDIAのGPU用のCUDA、AppleのGPU用のMPSの順に調べ、どちらも使えなければCPUを選びます。
処理時間と画像を比べる
CPUとMPSに同じ入力を与え、処理時間とインク検出画像の画素ごとの差を、数値精度の条件と一緒に記録します。
実データの同じセグメント、同じ切り出し範囲、同じチェックポイントを使い、CPU と修正後の MPS を比較しました。処理時間に加えて、出力画像の差を画素単位で照合しています。
CPU と MPS では数値精度の経路も異なるため、その条件を比較資料に残しました。原因、変更箇所、再現条件を Issue 案と提出文にまとめています。
記録から分かること
比較実測では、修正後の MPS が CPU より約9.7倍速く処理しました。パッチと実測を Progress Prize に出すため、提出資料を整えています。
- 変更ファイル
- 6 ファイル
- 変更行
- +28 / −9 行
- CPU に対する MPS の高速化
- 約9.7倍
確かめた範囲
実測は今回の推論条件に限られ、新たな文字の判読成果を示すものではありません。
