作者gn02516700 (oopa也是小豬~)
看板DataScience
標題[問題] 關於Tensorflow的多gpu運算
時間Mon Apr 9 15:41:13 2018
作業系統: win7
類別:DL
使用工具:tensorflow-gpu 1.7.0, CUDA : 9.0, CuDnn : 7.0.5
問題內容:
各位版上大神好,不知道這個問題適不適合在這個版問,如果不適合會自刪
小弟有在打Kaggle的2018 DSBL時有用到Mask RCNN做Instance segmentation遇到一個問題
就是Mask RCNN裡面有一個config檔案可以設定要用幾個GPU去做運算
還有設定每一個GPU可以train幾張圖片(底下是該config檔連結)
https://goo.gl/fB5mo6
而一個batch_size就是GPU數量*一張GPU要train幾張圖片,訓練時的圖片大小都是512*512
我之前只有單一片1070設定GPU_count = 1, IMAGE_PER_GPU = 2時可以執行
但訓練到第三個階段就會OOM,所以之後都是設定GPU_count = 1, IMAGE_PER_GPU = 1
然後訓練一個epoch大約是1200秒左右。
而最近拿到了兩片1080 ti就換上去也有SLI,想說兩張1080 ti可以把設定調高
但是不管怎樣都會OOM,就連設定GPU_count = 1, IMAGE_PER_GPU = 2在第一階段就會OOM
只有在GPU_count = 1, IMAGE_PER_GPU = 1才可以執行不會OOM
而在上面的條件下訓練一個epoch變成大約1000秒左右
也就是說兩片1080 ti才比一片1070快200秒左右。
我有下載GPU-Z來看GPU的情況,發現到兩張1080ti都是memory滿載但是load才5%不到
有看到其他kaggler有兩張1080ti的訓練一個epoch大約是300秒
同樣都是1080ti下我的執行時間卻是他們的好幾倍,甚至連batch_size都只能設定為1
想請問各位前輩們是不是我少設定什麼或是有什麼建議的,謝謝各位
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 220.128.240.196
※ 文章網址: https://webptt.com/m.aspx?n=bbs/DataScience/M.1523259676.A.148.html
1F:推 hl4: 可以調fit_generator的worker, use_multiprocessing, queue 04/09 16:47
2F:→ hl4: 最近剛好也在用這model玩這dataset... 04/09 16:48
我試試看調整這些參數看看 謝謝
3F:推 goldflower: 雖然應該不是這個問題 不過你並不需要SLI 04/09 17:21
4F:→ goldflower: 兩片插上去就好 04/09 17:21
※ 編輯: gn02516700 (220.128.240.196), 04/10/2018 09:24:56
5F:推 hl4: stage2很狂啊,一堆全黑圖還有教科書的手繪圖片... 04/12 20:30
6F:→ gn02516700: 真的超扯 training data是testing data的1/5... 我sta 04/13 09:08
7F:→ gn02516700: ge1名次才top10% 目前還在re-train model中 不知道hl4 04/13 09:08
8F:→ gn02516700: 大大有沒有小技巧提點一下 04/13 09:08
9F:推 hl4: 我也才玩這個幾天而已,stage1最後名次到38x,還差幾名到銅 04/13 17:42
10F:→ hl4: 話說現在還能re-train嗎?我以為upload之後就不能動了QQ 04/13 17:44
12F:→ gn02516700: 最後結算成績是Top4% 04/17 09:44
13F:推 hl4: 真是高手,我也才前三分之一而已,怎麼一堆墊背的不見了lol 04/17 13:18