H12 Pyro FX and OpenCL performance

   12364   8   2
User Avatar
Member
96 posts
Joined: May 2008
Offline
Just installed H12 and was bracing myself for mind boggling speed… only, there wasn't any. Well, that's not fair, it was about twice as fast as it ever was in H11, so that's cool.
But I've turned on OpenCL in the Advanced tab of the pyrosolver node (anywhere else this needs to be activated too?) and I'm running on Win 7 64, GTX 560 Ti with latest nvidia driver (295.73). I've used Process Hacker to monitor the CPU and GPU usage, with these results:
Without OpenCL, CPU is around 40-50% and GPU between 3-4% during a default Billowy Smoke sim.
The same sim with OpenCL turned on, CPU is around 35-40% and GPU at 4-5%. It feels at best 10% faster than the CPU sim. Am I doing something wrong here or is that just the way it is?
User Avatar
Member
1769 posts
Joined: Dec. 2006
Offline
Try with pure smoke solver and you will see very fast sims with gpu.
When you are using pyro which is based on smoke solver, it has bunch of custom shaping tools and stuff going on inside, so when you turn on opencl, speed increase is not that evident, but actually it is faster.

Anyway i think that even on cpu, it is damn fast, and whats good, that you can run low res sims which will look identical in shape on higher res.

I run some test compared to fume, and it was ca. 20% faster.

And remember, pyro is not a black box, you 100% controll over your fields, which you can now easily define in sop land, and it runs fast as hell.

Anyway running highres sims with opencl, you need bunch of video ram, which is only available on highend and expensive quadro cards.

I think sidefx did an amazing job with new smoke/pyro and flip solvers, it is far superior than was in h11.

Just my toughts.
daniel bukovec | senior fx td | weta digital
qLib -- http://qlab.github.io/qLib/ [qlab.github.io]
User Avatar
Member
96 posts
Joined: May 2008
Offline
I didn't mean to downplay the speed increase that are very noticeable compared to H11, kudos to that - I just was expecting a bit more from the GPU acceleration after what was written about H12 before release.

In any case, I just set up a smoke container and sourced the smoke from a cube, so that should be as simple as it comes, still basically no speed difference between CPU and GPU. Have you found any functions that really feel a lot faster on the GPU than CPU so far?

Oh and it appears that when OpenCL is turned on, it's a good idea to save twice as often as normal, had some nice system lockups (something I've had with a number of CUDA apps too, so that's a driver issue most likely)
User Avatar
Member
102 posts
Joined: May 2006
Offline
And this looks like the main issue today with the GPU acceleration, it's too sensitive about what graphic card you have, what drivers and what OS. I can't make it work on my MBP - the pyro just dissapears when is turned on. Also at work on my hp z800 workstation with a 4Gb firegl card and win7 64bit there's no difference between cpu and gpu.
But good thing that the CPU simulation is much much faster than in 12.
User Avatar
Member
40 posts
Joined: July 2010
Offline
i did not notice speed increase from opencl to cpu either. It just uses lot of vram and gpu usage is 2% at best.
User Avatar
Member
66 posts
Joined: July 2005
Offline
Is anyone experiencing random nVidia driver crash when using OpenCL acceleration? For me it's like 95% probability of crash if il simulating like 50 or 60 frames even on not so dense grids.
wbr, Mudvin
User Avatar
Staff
4164 posts
Joined: Sept. 2007
Offline
adrianlazar
And this looks like the main issue today with the GPU acceleration, it's too sensitive about what graphic card you have, what drivers and what OS. I can't make it work on my MBP - the pyro just dissapears when is turned on.

That is because OpenCL acceleration doesn't work on the Mac's, as (from what I understand) Apple's OpenCL drivers are behind (1.1) compared to the current (i.e. used by Houdini) versino, which is 1.2. Can someone (twod) confirm that?
I'm o.d.d.
User Avatar
Staff
6205 posts
Joined: July 2005
Online
There does seem a lot of confusion about this. I put together a post here: http://www.sidefx.com/index.php?option=com_forum&Itemid=172&page=viewtopic&t=25234 [sidefx.com] which hopefully clarifies things. I also included a good starting .hip file for building up an Open CL scene from.
User Avatar
Member
1390 posts
Joined: July 2005
Offline
Thanks Jeff for detailed explanation. Following your advises from beta forum (similar to posted above) I made at last today some test with newer hardware and most recent drivers.

For a record: GTX580(3GB) versus Xeon (4x2.4Ghz):


RES CPU GPU MEM (total allocated)
128^3: 1m 35s 18MB
256^3 12m 5m ~500MB
384^3 35m 10m ~1500MB
512^3 —- —- ———-

System was Linux_x64/gcc4.4 with nvidia drivers 295.20.

Could you explain though the terms used in memory statistic after setting HOUDINI_OCL_REPORT_MEMORY_USE to 1. There are three distinctive memory values there, from which at least two sound vague

Thank you.
  • Quick Links