質問: Chainerでtensorcoreを使用して、学習を高速化したいです。 環境はCUDA9.0,cuDNN7.2,chainer4.2,cupy4.2 GPU:TITAN V ネットワークはResNetです。(float16に設定済み) この条件で学習を実行しますと下記のようなエラーが出ます。 ``` UserWarning:The best algo of conv fwd might not be selected due to lack of workspace size UserWarning:The best algo of conv bwd data might not not selected due to lack of workspace size UserWarning:The best algo of conv bwd filter might not not selected due to lack of workspace size ``` このエラーが言うworkspace sizeとは何でしょうか? tensorcoreは正しく使えてますでしょうか? 処理時間もtensorcoreをoffにした時のほうが若干はやいです。 バッチサイズを変えても結果は同じでした。
回答: CuDNNでConvolutionアルゴリズムを使用するときにテンポラリーでGPUメモリー=workspace sizeを確保するのですが、ここのサイズが不足している可能性が高いですね。 解決策:次のコードをプログラムに追加する。 > > ws_size = 256*1024*1024 > > chainer.cuda.set_max_workspace_size(ws_size) > > > 参考URL