Tensorflow のアップデート(2.3.1 -> 2.4.1)

PyPIでTensorflow 2.4.1がリリースされたので、自宅のWindows 10のTensorflowを2.3.1から2.4.1にアップデートした。

  • 環境
    • OS Windows 10 Pro
    • CPU Intel Core i7-8700 3.2GHz
    • Memory 16GB
    • GPU NVIDIA GeForce GTX 1060 6GB
    • GPUドライバ NVIDIA Game Ready Driver 461.09 インストールしたバージョン
      • アップデート!
    • Visual Studio Community 2019
      • C++によるデスクトップ開発
    • Visual Studio Build Tools 2019
      • C++ Build Tools
    • CUDA 11.0 update1
      • アップデート!
    • cuDNN 8.0.5
      • アップデート!
    • Tensorflow 2.4.1 (pip)
      • アップデート!
    • Keras 2.4.3 (pip)

NVIDIA Developerのサイトから、CUDA Toolkit 11.0 Update1のインストールファイルをダウンロードしようとしたら、なぜかChromeからだとダウンロードできず。Microsoft Edgeだとダウンロードできました。cuDNNのインストールファイルはChromeからでもダウンロードできました。

いつものとおり、インストール手順は以下のサイトを参考にさせていただきました。

www.kkaneko.jp

アップデート自体はすんなり終わったのですが、ベンチマーク的に手元のMNISTのCNNを走らせると、なぜか2.3.1よりもずいぶんと時間がかかっており、ほとんどCPUと変わらないのでは、という状況。

Keras2.4.3+Tensorflow 2.3.1(GPU)の実行時間:144.0960705280304[秒]
Keras2.4.3+Tensorflow 2.4.1(GPU)の実行時間:259.58674144744873[秒]
Keras2.4.3+Tensorflow 2.3.1(CPU)の実行時間:294.20286107063293[秒]
Keras2.4.3+Tensorflow 2.4.1(CPU)の実行時間:300.50513529777527[秒]

nvidia-smi -l 1でみるとGPU Utilが23~24%だったので、GPUの使用以外のところにボトルネックがあるかも、とは思いましたが、詳細は不明。

Tensorflow 2.4.1をインストールすることで、Numpyも1.8.5から1.9.5に上げることができたので、ひとまずこのままにしておくが、ちょっと釈然としない。

ぐぐったところ github.com のようなものも見つけたものの、関係するかどうか不明。