Jump to content

Speeding up particle fluid interactions???


crash0283

Recommended Posts

Hey Guys

I'm working on my thesis where I have two characters made from particle fluid interacting with each other. The problem lies in the interaction. I created a ROP in particle fluid node and it took over 20 hrs to write out 50 frames. I then created a file node to read them out and it was still cooking the simulation. I then created a file node in DOPs and its taking even longer. My two questions are: 1.) Is there another way to speed up this process? 2.) Why is the simulation still cooking when I'm reading from file? Any advice would be much appreciated and VERY helpful. Thanks

Chris

P.S. I'm running a quad-core with 8GB ram and a Quadro FX 1700 card

Link to comment
Share on other sites

It sounds like you wrote out all of the sim data as opposed to just the particles themselves... what you are running into is probably dops trying to cache into memory what is on disk for playback purposes -- plus it doesn't just load the single frame, I think there's more going on here, such as it needing to load the history of the simulation into memory. Here's a few things I would do:

*Turn down the cache size on the dop network so it isn't trying to fill up all of your ram with a sim it's already reading from disk... you could try turning on 'timeless' as well (works in some cases, not in others), so it doesn't try to read all the history and stuff (I don't think a sim cache reads just that frame's data -- I think it has to try and build the sim from the changes in data per frame as well... not positive on all this)

*Use a dop import in a sop node to fetch the particles / geometry from your dop network, and use the rop (save to bgeo) and then file in there. Then turn off dynamic simulations (turn off the lil brain on the bottom right) to stop the dop network from doing anything. This will use the .bgeo sequence on disk of just your particles, and since it lives in sop land it'll be super fast and not try to sim anything.

Link to comment
Share on other sites

Hey Ian,

Thanks so much for the fast reply....I have a couple of questions. Unfortunately, the "timeless" option isn't working for me, but, one, when I turn down the cache size what do you recommend and two, when I just extract the particles from the DOP network, how would I go about that? Would I have to specify the name in the geometry data path in the DOP import node? If so, how would I do this? Thanks again and hope to hear from you soon.

Chris

Link to comment
Share on other sites

Hey Ian,

Thanks so much for the fast reply....I have a couple of questions. Unfortunately, the "timeless" option isn't working for me, but, one, when I turn down the cache size what do you recommend and two, when I just extract the particles from the DOP network, how would I go about that? Would I have to specify the name in the geometry data path in the DOP import node? If so, how would I do this? Thanks again and hope to hear from you soon.

Chris

If you used the shelf tools to set up the sims, then you probably already have what you need in one of the sops that was created... look for a dop import or dop i/o in one of the sops (typically the one that is piping data into the fluid surfacer. You would have to specify the name/path (dop path to the geo) if you didn't use the shelf tools... if you didn't use the shelf tools, then I'd suggest using them once to see how it sets it up, and then copy something similar from that. ...i'd try and be more detailed, but I just did a fresh linux install and don't have houdini installed yet.

Link to comment
Share on other sites

Hey Ian,

Yeah, I used the shelf tools and in the particle fluid node I piped a ROP output driver from the DOP import node. I did this before, but it was really slow, so I created my own DOP import in the particle fluids node and sourced out "flipfluidobject1" for the object mask name. I then piped a ROP driver from there and a file node, it sped it up quite a bit somehow. It still took around 3hrs to write 42 bgeo files. I guess this is as fast as its going to get, but let me know if there is anything else. I can post screenshots if you want. Thanks again.

Chris

Link to comment
Share on other sites

Hey Ian,

Yeah, I used the shelf tools and in the particle fluid node I piped a ROP output driver from the DOP import node. I did this before, but it was really slow, so I created my own DOP import in the particle fluids node and sourced out "flipfluidobject1" for the object mask name. I then piped a ROP driver from there and a file node, it sped it up quite a bit somehow. It still took around 3hrs to write 42 bgeo files. I guess this is as fast as its going to get, but let me know if there is anything else. I can post screenshots if you want. Thanks again.

Chris

I guess there was a little bit of confusion -- the stuff I mentioned was for playback after your initial sim... it's not the fastest of solvers, but that sounds a bit exessive... it all depends on how many particles you're getting, how detailed your collision geo it, etc. You can lower ram usage by using hbatch (command line version of houdini)... I was able to get a 10 hour sim down to 4 hours because I wasn't swapping to disk, and houdini wasn't eating a ton of ram because there's no gui to worry about... keeping in mind I only have 4 gigs of ram, so it helped me a lot. So after your 3 hour sim, you can place down a file node set to read your bgeo sequence, and it should be able to read it really fast off your hd... then you can at least play with meshing settings (or use it to drive another particle simulation) without having to worry about it trying to resimulate your particles.

Link to comment
Share on other sites

Hey Ian

Thanks for the info...it still took me around 16 hrs to write out 63 frames, but I figure that's just how it goes. I wrote the bgeo sequence to file and am reading it from a file node. I turned off the 'enable simulation' option and it all works great. But, I still have one problem. When I go to render random frames to look at from Mantra, it renders the first 15 frames or so pretty fast, but when i get higher than that is seems to keep cooking and not rendering. Is there something I can do about that? Thanks again and sorry for all the questions.

Chris

Link to comment
Share on other sites

Hey Ian

Thanks for the info...it still took me around 16 hrs to write out 63 frames, but I figure that's just how it goes. I wrote the bgeo sequence to file and am reading it from a file node. I turned off the 'enable simulation' option and it all works great. But, I still have one problem. When I go to render random frames to look at from Mantra, it renders the first 15 frames or so pretty fast, but when i get higher than that is seems to keep cooking and not rendering. Is there something I can do about that? Thanks again and sorry for all the questions.

Chris

I guess it all depends on how many particles you have. How are you rendering the particles? as points? as a surfaced mesh? as spheres...? Lots of things can slow it down... does anything happen after the first 15 frames like a sudden jump in particle count? a particle shooting off into space?

Link to comment
Share on other sites

are you ROP-ing out the geometry from the particle fluid surface node? that is a relatively slow node, especially if u have a high particle count and/or tiny stepsize, but you need it to render the fluid particles

personally i like to ROP out just the particles until im sure my sim is 100% then ROP out the generated surface afterwards

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...