Quadro GV100䜿甚時のメモリ䜿甚量に぀いお

267 views
Skip to first unread message

quiet_man

unread,
Dec 18, 2018, 12:57:38 AM12/18/18
to Chainer Japanese User Group
こんにちは。
GeForce GTX 1080 Ti11GBからQuadro GV10032GBに倉曎した結果
メモリ䜿甚量が玄8000MiBから玄28,000MiBぞず増加しおしたいたした。
メモリ䜿甚量を元に戻すためにはどうすれば良いでしょうかそれずもこれが正垞なのでしょうか
ご教瀺お願いいたしたす。

束本竜矢

unread,
Dec 18, 2018, 1:29:09 AM12/18/18
to Chainer Japanese User Group
cuda.set_max_workspace_size(8388608000)
ずするずどうなるでしょうか

2018幎12月18日火曜日 14時57分38秒 UTC+9 quiet_man:

quiet_man

unread,
Dec 18, 2018, 1:38:30 AM12/18/18
to Chainer Japanese User Group
返信ありがずうございたす。
早速远加しおみたのですが改善したせんでした。

2018幎12月18日火曜日 15時29分09秒 UTC+9 束本竜矢:

quiet_man

unread,
Dec 18, 2018, 11:05:59 AM12/18/18
to Chainer Japanese User Group
Chainerにサンプルずしお実装されおいるtrain_cifar.pyを動かしおみたのですが、こちらもメモリ䜿甚率が玄31,000MiB皋に膚れ䞊がりたした。
同じサンプルコヌドであるにも関わらず1080TIを䜿甚しおいた頃ずは異なる挙動ずなったため戞惑っおいたす。
私が䜿甚しおいるVolta GPU32GBは孊習を始めるずGPUメモリのほが党おを確保しおいるのではないかず考えおいるのですがどうなのでしょうか
解決策がありたしたらご教瀺お願い臎したす。

念のため動䜜環境を䞋蚘に蚘述しおおきたす。
Python 2.7.3
Chainer 5.1.0
ChainerCV 0.11.0
Cuda v9.0.176
cuDNN 7.3.1

2018幎12月18日火曜日 15時38分30秒 UTC+9 quiet_man:
Message has been deleted

quiet_man

unread,
Dec 19, 2018, 5:01:08 AM12/19/18
to Chainer Japanese User Group
nvprofコマンドでプロファむリングしお埗られたファむルを添付したす。

2018幎12月19日氎曜日 1時05分59秒 UTC+9 quiet_man:

Message has been deleted

ssu...@preferred.jp

unread,
Dec 20, 2018, 9:25:58 PM12/20/18
to Chainer Japanese User Group
PFNの鈎朚です。

メモリの䜿甚量をもずの状態に戻す方法はわからないので、答えるのを控えおいたしたが、どうしお32GBのメモリのGPUを䜿っおいるずメモリの䜿甚量が膚れ䞊がるのかずいう郚分はわかるので、
その郚分に関しおはお答えしたす。
結論からいえば、cupyのGPUメモリ解攟の仕様でできるだけメモリを解攟しないようにしおいるため、䞀芋GPUのメモリを䜿い切っおいるように芋えるだけです。

GPUのメモリ確保は非垞に重い凊理なため、頻繁に実行するずGPUのメモリ確保の郚分がボトルネックになっおしたいたす。
これを回避するために、cupyでは䞀床確保したメモリはできるだけ䜿いたわすずいうこずをしおいたす。
この結果、実際に䜿っおいるGPUのメモリ以䞊のメモリが確保されおいお、あたかもすごくメモリを䜿っおいるように芋えたすが、倧郚分は䜿われおいないが解攟せずに残しおいる状態のメモリ領域になっおいるはずです。
では、どのタむミングでGPUのメモリの解攟が動くかずいうず、基本的にはGPUのメモリを確保しようずしたずきに、GPUのメモリ䞍足が起きたずきに動きたす。
コヌドずしおはこの郚分です。
https://github.com/cupy/cupy/blob/v5/cupy/cuda/memory.pyx#L675-L694

なので、メモリの倧きさの違うGPUを比范するず挙動が違うように芋えたすが、内郚では同じように凊理しおいお、想定動䜜のはずです。
たた、必芁になった際にメモリを確保するようになっおいるので、孊習を始める段階でGPUのメモリを党確保しおいるわけではないです。

cupy呚りの開発者ではないので、間違っおいるこずを蚀っおたら開発者の皆様、蚂正しおください。

2018幎12月19日氎曜日 19時01分08秒 UTC+9 quiet_man:

quiet_man

unread,
Dec 21, 2018, 2:50:58 AM12/21/18
to Chainer Japanese User Group
返信が遅れおしたい申し蚳ございたせん。
なるほど、そのような事情があるずは知りたせんでした。
メモリ䞍足の問題は、Chainerのバヌゞョンを5.1.0から4.5.0に䞋げたずころ元に戻りたした。
ありがずうございたした。


2018幎12月21日金曜日 11時25分58秒 UTC+9 ssu...@preferred.jp:

Nomad

unread,
Jan 26, 2019, 11:22:32 PM1/26/19
to Chainer Japanese User Group
Chainerのissuesにお同様の問題を報告された方がいらっしゃいたした。

okuta

unread,
Feb 6, 2019, 12:10:26 AM2/6/19
to Chainer Japanese User Group
こちらご報告ありがずうございたす。

貌っおいただいたissueの方で、問題解決が進んでおりたす。
Python2を䜿っおいる堎合は、masterもしくはv5のブランチを䜿っおためおみおいただけないでしょうか

よろしくお願いいたしたす。

2019幎1月27日日曜日 13時22分32秒 UTC+9 Nomad:
Chainerのissuesにお同様の問題を報告された方がいらっしゃいたした。
Reply all
Reply to author
Forward
0 new messages