質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
Python 3.x

Python 3はPythonプログラミング言語の最新バージョンであり、2008年12月3日にリリースされました。

Q&A

解決済

1回答

3903閲覧

機械学習時のGPUのOOMについて

neru.0707

総合スコア2

Python 3.x

Python 3はPythonプログラミング言語の最新バージョンであり、2008年12月3日にリリースされました。

0グッド

0クリップ

投稿2022/05/27 06:30

編集2022/05/27 07:10

付属コードを実行したいのですが,
以下のようなエラーが出ます

バッチサイズを減らしてみましたが, それでもこのエラーは出ます.
何か他に対処法はございますでしょうか

Python

1python fcn-12.3.1.py --train 22022-05-27 14:44:22.472707: I tensorflow/core/platform/cpu_feature_guard.cc:151] This TensorFlow binary is optimized with oneAPI Deep Neural Network Library (oneDNN) to use the following CPU instructions in performance-critical operations: AVX AVX2 3To enable them in other operations, rebuild TensorFlow with the appropriate compiler flags. 42022-05-27 14:44:22.780566: I tensorflow/core/common_runtime/gpu/gpu_device.cc:1525] Created device /job:localhost/replica:0/task:0/device:GPU:0 with 30720 MB memory: -> device: 0, name: NVIDIA GeForce RTX 3060 Laptop GPU, pci bus id: 0000:01:00.0, compute capability: 8.6 51 Physical GPUs, 1 Logical GPUs 62022-05-27 14:44:23.746268: I tensorflow/stream_executor/cuda/cuda_driver.cc:739] failed to allocate 30.00G (32212254720 bytes) from device: CUDA_ERROR_OUT_OF_MEMORY: out of memory 7省略 8DNN library is not found. 9 [[{{node fcn/ResNet56v2/conv2d/Conv2D}}]] [Op:__inference_train_function_18251] 102022-05-27 15:02:19.731278: W tensorflow/core/kernels/data/generator_dataset_op.cc:107] Error occurred when finalizing GeneratorDataset iterator: FAILED_PRECONDITION: Python interpreter state is not initialized. The process may be terminated. 11 12

実行したいコードはこちらです.
https://github.com/PacktPublishing/Advanced-Deep-Learning-with-Keras/tree/master/chapter12-segmentation

環境について
環境
NVIDIA GEFORCE RTX 3060

CUDA 11.4
tensorflow-gpu 2.7.0

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

jbpb0

2022/05/27 11:31

> バッチサイズを減らしてみましたが, それでもこのエラーは出ます. バッチサイズを減らしたら、 failed to allocate 30.00G (32212254720 bytes) の「32212254720 bytes」の数値はどうなりますでしょうか?
guest

回答1

0

ベストアンサー

ご察しの通り恐らくモデルが大きすぎてOutOfMemoryです。

正攻法は書いてあるようにバッチを減らす、です。
これでだめだとパラメータを無理やり縮めるのが次善策になります。

やっていないので保証はできませんが、filter=256を128や64にすれば劇的にメモリが減るはずです。
検討ください。


ソースコードに以下の文面がありました。
RTXはもっとバケモノみたいなメモリを積んでいそうですが、設定したバッチサイズとGPUのメモリはいくつだったのでしょうか?

  1. ResNet50 (v2) backbone.

Train with 6 layers of feature maps.
Pls adjust batch size depending on your GPU memory.
For 1060 with 6GB, --batch-size=1. For V100 with 32GB,
--batch-size=4

投稿2022/05/27 10:28

編集2022/05/27 10:47
退会済みユーザー

退会済みユーザー

総合スコア0

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

neru.0707

2022/05/31 04:06

GPUメモリは6GBです. バッチサイズを1にしても動きませんでしたが, フィルター数を64に減らすと動かすことができました. ありがとうございます.
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問