AI 事始め0:まずは、環境調査から
新しいものに切り捨てされないように、AIで遊べないかな? 勉強開始しました。簡単に勉強開始するなら、Amazon AWS やGoogle Cloud AutoML を利用するのが早いと言われているが、手元のPCで開始できれば、最近のPCやハードウェアの勉強もできるはず。使えるからと言って、いつまでも10年前のPCを使っていては進歩がないかも。AIのハードと言えば、NvidiaのGraphicボード。AI将棋ソフトの優劣を決めるトーナメントでは、GTX-1080iが使われる時があるようですが、仕様ではGraphics Card Powerだけで、(250W)です。値段も高いし、手が届きません。手持ちはGT-710なので、どの程度使えるか調査しました。仕様ではCUDA技術をサポートしているようです。どの程度サポートしているか?CUDA Capable NVIDIA GPUs. や legacy CUDA GPUs pageを探しても見つかりません。CUDA GPUsのリストから漏れているのには何か問題があるのか? 単なるミスか?
考えても無駄なので、最新の情報を調査してみました。CUDA Installation Guide for Microsoft Windows に deviceQuery program というプログラムが、compiled form で提供されており、使えるかどうか判定できると書いてあります。CUDA Toolkit 10.0.130を Downloadし、カスタムインストールで全部を選択しました。しかし、deviceQuery.exeが見つかりません。何で?
CUDA Samples 1. Release Notesに、prebuilt binaries は提供しないと書いてありました。と言うことは、自分でビルドしないといけません。
最新のVisual Studio 2017をコミュニティからインストールします。C++が使える環境のみインストールしました。Visual Studio 2017のインストールが終わったので、deviceQuery_vs2017.slnをダブルクリックすると、不足のコンポーネントをインストールせよと言われますので、その通りすると、再起動が求められます。そういえば、Toolkitのインストーラがvisual studioがどうのこうのとつぶやいていたような気もしたので、「設定・アプリと機能」でCUDA Toolkit 10.0.130をuninstallして、再度installしました。deviceQuery_vs2017.slnをダブルクリックすると、Visual Studio 2017 Microsoft Blend for Visual Studio 2017が起動しましたので、そのままビルドすると、パスが通ってないといわれますので、C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.0\includeを追加してあげました。今度は、SDKの版が違うと言われたので、バージョン を10.0.17134.0に変更してビルド。
多くの警告とエラーが発生しました。仕方がないので、Visual Studio 2017 Microsoft Blend for Visual Studio 2017を停止してから、WinSDK10.0.15063.0をインストールしました。deviceQuery_vs2017.slnをダブルクリックし、Visual Studio 2017 Microsoft Blend for Visual Studio 2017を起動してビルドすると、多くの警告は発生しましたが、エラーはありません。deviceQuery.exeを実行すると、無事動いたようです。結果は、Compute Capabilityが3.5でGeForce GT 720と同じでした。 the Kepler architectureです。
追記(2018.10.11):Visual Studio 2017を起動して、deviceQuery_vs2017.slnを開くと、例外処理が発生して読み込み不良です。強引にビルドすると、「オブジェクト参照がオブジェクト インスタンスに設定されていません。」とエラー終了でした。:追記END
ここまでの検討結果からは、GeForce GT 710がCUDA GPUsのリストから漏れているのは単なるミスにみえますが、何か問題が隠れているのかもしれません。