POP Solver: Enable Solver vs Switch DOP

   1805   0   0
User Avatar
Staff
4170 posts
Joined: Sept. 2007
Offline
With the POP Solver, I noticed I could get a 27% speed up in large particle sims by using a Switch DOP to disable Collisions.

I thought that perhaps if I set Enable Collision Attributes to Set Initial, and initial was 0, I would get similar speedups; but it was the same (a hair slower).

Should the Enable Solver be that slow? I haven't done much low-level DOPs work, so it could be that I'm missing something. I was just surprised at how much faster Switch + Null was, compared to the Enable Solver, especially considering Enables are all over the POP Solver.

The attached file has a modified POP Solver, and here are some of the results I was seeing with a 300,000 particles being birthed + some noise and color (and gravity), for 72 frames (POP Solver time only):

- No Modifications: 4.59s
- Set Inital (on Enable Collision Attrs) to 0: 4.52s
- Disconn. Enable Collisions and Reaping: 3.41s
- Disabled Coll. Attrs via Switches:3.60s
- Disabled Coll. Attrs + Reaping via Switches: 2.34s

I know reaping and collision attributes aren't something you'd normally get rid of; I noticed in the Performance Monitor those two areas were a big chunk of sim time, and could imagine scenarios where you don't have any collisions, you'd want to avoid paying that cost for no reason.

Thanks!

Attachments:
switch_vs_enablesolver.png (21.7 KB)
pop_perf_test.hipnc (529.4 KB)

I'm o.d.d.
  • Quick Links