Jump to content

No GPU Utilization on OpenCL with Viscus fluids?


HappehLemons

Recommended Posts

Does anyone have insight on what makes or breaks OpenCL? I have a sim with high viscosity (200~2000) and a particle separation of around 0.02, with a scene total of around 600,000 points per frame but I'm not seeing any GPU utilization with OpenCL turned on. I have a GTX1080ti and my whole scene should fit on it. 

 

The only other thing I have going is that i have deforming collisions my scene the with fluid. Is this "too complex" for OpenCL to calculate or something? I just want to make sure I'm using all my resources properly when doing my simulations and in theory this should be a good scene since it's working with viscus FLIPs.

 

Houdini does see my card, and in the about settings in help I see it's listed under OpenCL. 

Edited by HappehLemons
Link to comment
Share on other sites

More than likely, your simulation is too complex to fit inside your graphics card. It doesn't take much to break the 11GB boundary and you're not even getting all that if you are using the same card for display, or have other applications open. One thing that will kill OpenCL is continuous emission into a scene, without a sink to remove anything. Try disabling caching on the dopnetwork, and write the result of your simulation directly to disk. Having to update the viewport every frame also diminishes the gains obtained by OpenCL.

Particle separation alone is not enough to determine the size of your simulation. It is the box size of your domain that is divided by the particle separation that determines ram usage. If your box size grows over time, your memory footprint will grow.

Try looking into the new sparse solver. Even though it is CPU based, in some situations it can outperform OpenCL.

 

 

Edited by Atom
Link to comment
Share on other sites

The only way I have been able to experience OpenCL speed up is by following the rules listed here:
https://www.sidefx.com/forum/topic/25234/

That post is for smoke, but it applies to flip and other OpenCL accelerations as well.

Turn off the cache, don't continuously emit, and write your result directly to a disk file. Each time you break one of those rules, the CPU comes into play and the GPU advantage drops lower. Updating the viewport every frame pretty much eliminates the OpenCL gains. The most I have been able to get out of flip was about a 35% utilization on my GPU, which I monitored using MSI Afterburner.

Try the example file at the link. It's fun to see how quickly you can simulate smoke  on your GPU.

Edited by Atom
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...