小白问个问题,求大佬解答下,关于粒子数量多的时候,爆内存
houdini吧
全部回复
仅看楼主
level 9
JAR马 楼主
内存爆了,怎么优化一下粒子数量500万的时候,不爆内存?多谢大佬
2019年12月18日 14点12分 1
level 9
JAR马 楼主
@乐琢 大神
2019年12月18日 14点12分 2
level 9
JAR马 楼主
500万粒子轻轻松松爆了我32G内存,不想再加内存了,怎么优化[泪]
2019年12月18日 14点12分 3
把无需用的属性删掉,
2019年12月19日 01点12分
常规制作流程下,500W粒子是爆不了32G内存的。1:首先看下dop的cache下的内存分配机制,默认一半是5G内存,你可以分配高点。2:用磁盘缓存。 你可以先把粒子缓存到硬盘上,sim完了之后再读取查看形态。
2019年12月19日 04点12分
@零下七度0 我把5G上调到了25G,然后想用file cache缓存一下,每次到几十帧的时候就opencl崩溃,我觉得还是内存爆了,因为OpenCL开始是显卡报错,然后我切换到CPU,然后CPU报错,每次内存使用都能到25G以上,然后爆掉。
2019年12月19日 14点12分
@JAR马 你可以管理器下盯着内存看下,确定下是内存的问题。一般32G别说500W,就是1000W也没问题的。先排除下内存问题。
2019年12月20日 01点12分
level 8
我做流体的时候内存也爆炸了[泪]
2019年12月18日 17点12分 4
level 9
JAR马 楼主
@乐琢 大佬,这种情况怎么弄
2019年12月19日 01点12分 5
level 9
JAR马 楼主
如何不让大量粒子爆掉内存?求大佬明示
2019年12月19日 14点12分 6
大佬,我今年才开始学习houdini,我也是模拟沙子,遇到了和你一样的问题。我试着给你发私信,失败了。也不知道怎么加好友。能帮帮我吗?怎么解决这个问题[泪]
2021年11月29日 13点11分
吧务
level 13
500万按说应该没问题,是不是你的场景中有其他问题?
实在不行,可以考虑分批出缓存,每次出100万,出5套。每次缓存输出时,可以更改发射源的随机性,确保每套缓存都不一样,类似的做法在 Houdini Ink FX 这个教程有提到。置顶应该有这个教程。
2019年12月19日 23点12分 7
乐大你好,我查看了官方文档,发现DOP network在计算大型场景时,如果内存不足,可以关闭缓存,然后系统会自动舍弃旧的,也就是只保留最新的几帧缓存用于计算,这样能大幅降低内存消耗。我测试了,并且完整缓存了240帧的file cache,现在正在rop输出中,不确定能不能行,不过目前运行良好
2019年12月20日 01点12分
顺便,我做的模拟是500W沙子碰撞动画
2019年12月20日 02点12分
乐神,我又尝试了一下600万沙子碰撞模拟,在一个容器中,分段缓存32G内存也支撑不了了,请问可以删除哪些属性?可以优化一下
2019年12月20日 09点12分
@JAR马 你永远做不出来
2020年01月08日 14点01分
level 5
做的什么模拟?500w粒子应该爆不了32G,我之前测试,64G内存,做2000w粒子的白水也没爆。
2019年12月20日 02点12分 8
沙子模拟,互相碰撞[不高兴]
2019年12月20日 02点12分
@JAR马 简化场景。周边的参与碰撞的物体有没有优化?有没有超快速的运动?另外缓存的时候先删除多余的属性。另外32G确实还是小了。有些模拟实在也是捉襟见肘,尽量加内存吧。
2019年12月20日 03点12分
@JAR马 刚用我的笔记本测试了下,640w粒子的grain,圆环发射,最简单的掉落地面,也差不多要20G内存(win7,houdini17).删除只剩P,cd,v,pscale,每帧缓存也要300-1000M不等。
2019年12月20日 03点12分
@蓝色星空starry 你好,请问可以详细说一下沙子碰撞模拟,哪些属性可以删除吗?删除之前和之后缓存大小能降低多少呢?
2019年12月20日 09点12分
level 5
多做缓存
2020年01月09日 15点01分 9
level 8
骂篝火逼的帖子没了?
2020年01月11日 14点01分 10
好像是。不知道谁删了
2020年01月12日 00点01分
level 3
五百万一般都能跑的吧[惊哭]
2020年04月11日 17点04分 11
level 3
一亿粒子随便跑的
2020年04月11日 17点04分 12
1