私は2つのGPUを持っており、1つのGPUを使用してテンソルフローによってネットワークをトレーニングしたい。私はそれを訓練すると、コードは2つのGPUのすべての記憶を使用しますが、唯一のGPUが働いている:テンソルフロー:1つのGPU上でネットワークをトレーニングするが、他のGPUのスペースを占める
私がなぜ、どのようにこの問題を解決することを知りません。
私は2つのGPUを持っており、1つのGPUを使用してテンソルフローによってネットワークをトレーニングしたい。私はそれを訓練すると、コードは2つのGPUのすべての記憶を使用しますが、唯一のGPUが働いている:テンソルフロー:1つのGPU上でネットワークをトレーニングするが、他のGPUのスペースを占める
私がなぜ、どのようにこの問題を解決することを知りません。
デフォルトでは、テンソルフローは、使用可能なすべてのGPUのメモリを消費します。あなたは@ sygiの回答ごとに許容成長を設定することも、ヤロスラフのコメントに従ってGPUの1つだけをテンソルフローに見えるようにすることもできます。そして、this questionに従って。
最後に、私は両方の方法を使用します。 –
は設定してみてください:questionのように
config = tf.ConfigProto()
config.gpu_options.allow_growth=True
sess = tf.Session(config=config)
。
スクリプトを実行する前に 'export CUDA_VISIBLE_DEVICES = 0'を実行してください –