Jul 3, 2015
Houdini : Memory Leak of DOP
Using a Variable of "HOUDINI_DOP_MAXCACHE" is a method of memory leak.
[ command : hconfig -a ]
Pyro Solver でのシュミレーションからsimやbgeo出力をするとwindowsのメモリが加算され続け42GBを使い切ってしまい、CPUの処理能力が著しく低下した問題に直面。
結論からすると、Linuxだと発生しない問題らしく
WindowsのRAMキャッシュの非効率な欠点が浮き彫りになった。
いろいろな方に相談させていただき、なんとなくですが脱却できそうな感じがしたのでメモ。
まずH14.0.299からの新しい環境変数であるHOUDINI_DOP_MAXCACHE を使用する。
ドキュメントの中にあるhoudini.envファイルに下のように記入。
他のキャッシュも加算されていくので、少し低めの上限に設定。
[ 1024 = 1GB , 16348 = 16GB ]
次にCommand Line Toolsを起動し hconfig -a と入力しEnter
HOUDINI_DOP_MAXCACHE が 16348に設定された。ちなみにデフォルトは-1(無制限)
そしてHoudiniを再起動。
hbatchなどを使用する場合も同様。シュミレーション用のマシンのhoudini.envも書き換える。
設定したバイト数よりも総合的に付加がかかるが、しない場合と比べると違いが顕著にでた。
------------------------------------------------------------------------------
あとはDOP Network のCache Tab/ Save Checkpoints の使用。
Cache Memory を0に設定する。H13まではこのやり方が主流だったっぽいです。
Checkpoint は途中でシュミレーションが止まってしまった際にでもそのフレームから
シュミレーションを計算しなおすことができる。
あとから理解した Checkpoint Trail Lengthを2、3にして前後のキャッシュとして読み込む長さを指定。ここを指定しないとRAMに負担がかかるようでした。
Subscribe to:
Post Comments (Atom)
No comments:
Post a Comment