【機械学習】画像認識の試行錯誤(7/E)

つづき

12.処理速度

12.1 CPUとGPU

  10項までのパラメータとCNN構造で正解率0.8862を得た時の

処理時間は101.6秒で23stepであった。この時の環境では、

CPU(Core i5-9600K)とGPU(RTX2060)の両方を使っていた。

CPUだけで計算した時(*1)の処理時間を比べてみた。サンプルとして、

最初のstepの処理時間を測定した。約21.6倍の差が出た。

使用ハードウェアCPUとGPUCPUだけ
処理時間(秒)5.1110.2
CPU使用率(%)30100
GPU使用率(%)

例1)CPUとGPU

 処理時間

 CPUとGPUの負荷

例2)CPUだけ

 処理時間

 CPUとGPUの負荷

(*1)下記のコードでGPUがオフになった。

下記のWEBページにお世話になりました。ありがとうございます。

Keras on jupyter notebook でGPUを使わない

 

12.2 テンソルコアの効果

 残念ながら、テンソルコアの使用をオフする方法が分からなかったので、測定出来なかった。

NVIDIA Deep Leraning Frameworks Documentationの7.1.6によれば、デフォルトが

テンソルコア有効になっている。(自分の環境ではCUDNNをバックグラウンドで使っている。)

 

12.3 FP16とFP32の違い

 NVIDIA Deep Leraning Frameworks Documentationの2.9.4にはFP32データの

場合には、FP16に変換してからテンソルコアを使うと書いてある。下図はその抜粋である。

1)FP16

2)FP32

しかし、10項までのパラメータとCNN構造で正解率0.8862を得た場合で比較したが、

FP16とFP32では処理時間が同じであった。

 

<個人的な感想>

テンソルコアの効果を調べたかったが、どのようなコード(命令文)をjupyter notebookから

入力すれば良いか分からなかった(WEBで色々探したが・・・)。これが残念である。

 

<リンク>

ブログのトップページは、こちら

バタイユゲーム情報班のホームページは、こちら