推 yiefaung: 看你model中間最大的feature map? 03/21 01:38
推 jameschiou: CNN需要intermidiate result才能做backpropagation 03/21 17:51
→ jameschiou: 喔喔抱歉沒仔細看問題...的確如樓上說要注意中間最大 03/21 17:54
→ jameschiou: 的feature map 03/21 17:54
推 yoyololicon: 你圖也太大了吧... 03/22 08:41
→ clansoda: 感謝各位回覆,確實可以研究這件事 03/22 22:23
→ clansoda: yoyo大,我這個是原始圖片,進去前會resize成800 * 800 03/22 22:23
→ clansoda: 想請問一下,我自己測試後發現我一開始讀取alexnet會吃 03/22 23:17
→ clansoda: 約1.4GB的記憶體,我模擬5 x 3 x 224 x 224的資料約佔 03/22 23:18
→ clansoda: 不到1MB的記憶體,我開啟no_grad之後跑model(inputs) 03/22 23:18
→ clansoda: 記憶體仍會從1414上升到1540,也就是上升了126MB的記憶 03/22 23:19
→ clansoda: 體用量,根據我的理解記憶體的使用量理論上應該是weight 03/22 23:20
→ clansoda: 加上gradients加上中間計算的hidden embedding size 03/22 23:20
→ clansoda: 前面weight已經計算過了,gradients我也先關掉了 03/22 23:20
→ clansoda: 難道剩下的記憶體就是中間計算層所占用的? 03/22 23:21
→ clansoda: 根據實驗,這個記憶體的佔用會隨著batch size上升而上升 03/22 23:21
→ clansoda: 請問有人知道這個記憶體的使用是來自哪裡呢? 03/22 23:21
→ yiefaung: 就真的是feature map 不然你中間結果是存在哪裡...當然 03/23 11:07
→ yiefaung: 也跟batch size成正比 03/23 11:07
→ yiefaung: 如果你圖剛讀進來是用int8存 5*3*224*224/1024/1024= 03/23 11:10
→ yiefaung: 0.717 的確不到1MB 然後你運算的時候用float32 就直接4 03/23 11:13
→ yiefaung: 倍起跳 再來你圖變大 batch size變大 feature map變大 03/23 11:13
→ yiefaung: 記憶體用量當然也變大 03/23 11:13
→ watashino: 正常feature map不會比圖本身大阿 03/27 01:00
→ watashino: 當然還是要看你model啦 03/27 01:00
→ yoyololicon: feature map幾乎都比圖大才對吧 第一層直接三個chan 03/27 08:48
→ yoyololicon: nel變64個channel之類 03/27 08:48