深層学習とかでのCUDAエラー「Attempting to fetch value instead of handling error Internal: failed to get device attribute 13 for device 0: CUDA_ERROR_UNKNOWN: unknown error」への対処

#目的

GPUを使って深層学習で学習させようとした場合に、
以下のようなエラーが出る場合がある。

```
2019-11-18 04:16:42.405806: F tensorflow/stream_executor/lib/statusor.cc:34] Attempting to fetch value instead of handling error Internal: failed to get device attribute 13 for device 0: CUDA_ERROR_UNKNOWN: unknown error
```

このエラーの原因をネットで検索しても、
あまり良い情報がない。
単に、英語とか中国語が理解できていないだけかもしれないが。

自分なりに理解できたことを示す。

参考程度に環境を示す

```
tensorflow           1.14.0
tensorflow-estimator 1.14.0
tensorflow-gpu       1.14.0

```


#エラー対策

tensorflowのバージョンとかの可能性もあるのかもしれないが、
ひとつのケースとして、
単なるメモリ不足（この場合、GPUのメモリではなく、CPUのメモリ）
で、このエラーが
出ることを確認している。

もし、
**CPUのメモリの使用量を減らすことができるなら、
試してみて下さい。**

ちなみに、
このエラーがどういうエラーであるかは、全く、理解できない。
（たぶん、理解できるようなエラーではないと、想像します。）

# 別のエラー（全く、未解決。）

以下のようなエラーが出る場合もある。
そもそも、エラーメッセージの意味がうまく理解できない。
ネットで調べても、参考になる情報がない。

エラー抜粋

```
RuntimeError: CUDA out of memory. Tried to allocate 64.00 MiB (GPU 0; 4.00 GiB total capacity; 2.90 GiB already allocated; 30.80 MiB free; 9.54 MiB cached)
```

全体

```
D:\_mish1\Mish-master\Mish-master\Examples and Benchmarks>python _res50_1.py
Files already downloaded and verified
Files already downloaded and verified
Traceback (most recent call last):
  File "_res50_1.py", line 329, in <module>
    logps = model.forward(inputs)
  File "_res50_1.py", line 242, in forward
    x = self.conv2(x)
  File "C:\Users\XYZZZ\AppData\Roaming\Python\Python37\site-packages\torch\nn\modules\module.py", line 547, in __call__
    result = self.forward(*input, **kwargs)
  File "C:\Users\XYZZZ\AppData\Roaming\Python\Python37\site-packages\torch\nn\modules\container.py", line 92, in forward
    input = module(input)
  File "C:\Users\XYZZZ\AppData\Roaming\Python\Python37\site-packages\torch\nn\modules\module.py", line 547, in __call__
    result = self.forward(*input, **kwargs)
  File "_res50_1.py", line 208, in forward
    return f_mish(self.split_transforms(x) + self.shortcut(x))
  File "C:\Users\XYZZZ\AppData\Roaming\Python\Python37\site-packages\torch\nn\modules\module.py", line 547, in __call__
    result = self.forward(*input, **kwargs)
  File "C:\Users\XYZZZ\AppData\Roaming\Python\Python37\site-packages\torch\nn\modules\container.py", line 92, in forward
    input = module(input)
  File "C:\Users\XYZZZ\AppData\Roaming\Python\Python37\site-packages\torch\nn\modules\module.py", line 547, in __call__
    result = self.forward(*input, **kwargs)
  File "C:\Users\XYZZZ\AppData\Roaming\Python\Python37\site-packages\torch\nn\modules\batchnorm.py", line 81, in forward
    exponential_average_factor, self.eps)
  File "C:\Users\XYZZZ\AppData\Roaming\Python\Python37\site-packages\torch\nn\functional.py", line 1656, in batch_norm
    training, momentum, eps, torch.backends.cudnn.enabled
RuntimeError: CUDA out of memory. Tried to allocate 64.00 MiB (GPU 0; 4.00 GiB total capacity; 2.90 GiB already allocated; 30.80 MiB free; 9.54 MiB cached)
```


#まとめ
これをみて、問題解決する人がいれば、幸甚。


#関連（本人）

[pythonをストレスなく使う！（generatorに詳しくなる。since1975らしい。)](https://qiita.com/enoughspacefor/items/524a76fcde2610b9da8a)
[pythonをストレスなく使う！（Pythonでは、すべてがオブジェクトとして実装されている)](https://qiita.com/enoughspacefor/items/0c6118da4c228226a65f)
[pythonをストレスなく使う！（Pylintに寄り添う)](https://qiita.com/enoughspacefor/items/df692b27bb58ca1ffa1d)
[pythonをストレスなく使う！（ExpressionとStatement)](https://qiita.com/enoughspacefor/items/1a11f553c265a2c703f2)
[英語と日本語、両方使ってPythonを丁寧に学ぶ。](https://qiita.com/enoughspacefor/items/d4b49747773e2d0285f9)

#今後
コメントなどあれば、お願いします。:candy:
勉強します、