Hi every one
I use a 6GB card to did some test for pyro with openCL. in this test I enable auto resize so that the memory used will increase slowly, but when gpu memory used go to about 4GB the sim stop.
it's mean 4GB is the maximum openCL can handle?
just want to know how much memory openCL can handle, because I'm plan to buy a new card but confuse buy a 4GB or 6GB+ one
how much gpu memory openCL(pyro) can handle?
16891 25 3- igou
- Member
- 102 posts
- Joined: March 2013
- Offline
- anon_user_37409885
- Member
- 4189 posts
- Joined: June 2012
- Offline
OpenCL can run on the GPU or CPU, each limited by an amount of Ram. OpenCL on the GPU is much more limited, because of usually smaller amount of Ram, than OpenCL on the CPU. GPU does have performance advantages though!
Edit:The amount of Ram available for OpenCL on the GPU will be less when also used as a display(I believe but haven't tested)
This thread is good for OpenCL memory:
http://www.sidefx.com/index.php?option=com_forum&Itemid=172&page=viewtopic&t=30335&highlight=opencl+memory [sidefx.com]
Documentation link for enabling OpenCL on CPU:
http://www.sidefx.com/docs/houdini13.0/news/13/opencl [sidefx.com]
Edit:The amount of Ram available for OpenCL on the GPU will be less when also used as a display(I believe but haven't tested)
This thread is good for OpenCL memory:
http://www.sidefx.com/index.php?option=com_forum&Itemid=172&page=viewtopic&t=30335&highlight=opencl+memory [sidefx.com]
Documentation link for enabling OpenCL on CPU:
http://www.sidefx.com/docs/houdini13.0/news/13/opencl [sidefx.com]
- Skybar
- Member
- 166 posts
- Joined: March 2013
- Offline
- dulo
- Member
- 383 posts
- Joined: June 2010
- Offline
SkybarIt depends on your cpu. We have some linux workstations with 64 cores and they greatly benefit from opencl on cpu compared to native on cpu.
Is there any benefit on using OpenCL on the CPU rather than running normal? It does say it can be 1.5-3x faster, but if anyone has actually compared. Or would it be even better to just skip Windows alltogether and run on Linux?
- Neil78
- Member
- 275 posts
- Joined: July 2010
- Offline
- dulo
- Member
- 383 posts
- Joined: June 2010
- Offline
- Neil78
- Member
- 275 posts
- Joined: July 2010
- Offline
- anon_user_37409885
- Member
- 4189 posts
- Joined: June 2012
- Offline
Neil78
Hey how do you use opencl on the CPU?
Set
HOUDINI_OCL_DEVICETYPE=CPU
but very importantly is using the Intel’s OpenCL SDK, which means:
http://www.sidefx.com/docs/houdini13.0/news/13/opencl [sidefx.com]
- anon_user_37409885
- Member
- 4189 posts
- Joined: June 2012
- Offline
- igou
- Member
- 102 posts
- Joined: March 2013
- Offline
- merlino3d
- Member
- 65 posts
- Joined: Feb. 2013
- Offline
It works perfectly here! I've a i7 4770K and there's my personal bench:
open Houdini -> ctrl+sphere -> volcano -> ctrl+Right Arrow (it jumps to the last frame: 240)
CPU = 1m 23s
CPU w/OpenCL = 1m 02s
GPU (ATI 7980 3GB) = 33s
(using H13.0.260)
EDIT:
oh! and W7
next tests will be with newer version (downloading right now) and I also want to make a dual bot system with mint 16. About that: I'm new to linux, witch version should I choose? In mint's site the KDE description says “Solid, full-featured, polished”: is that “full-featured” saying that is more complete than the other version so I'll have less problems as beginner?
open Houdini -> ctrl+sphere -> volcano -> ctrl+Right Arrow (it jumps to the last frame: 240)
CPU = 1m 23s
CPU w/OpenCL = 1m 02s
GPU (ATI 7980 3GB) = 33s
(using H13.0.260)
EDIT:
oh! and W7
next tests will be with newer version (downloading right now) and I also want to make a dual bot system with mint 16. About that: I'm new to linux, witch version should I choose? In mint's site the KDE description says “Solid, full-featured, polished”: is that “full-featured” saying that is more complete than the other version so I'll have less problems as beginner?
- anon_user_37409885
- Member
- 4189 posts
- Joined: June 2012
- Offline
merlino3d
About that: I'm new to linux, witch version should I choose? In mint's site the KDE description says “Solid, full-featured, polished”: is that “full-featured” saying that is more complete than the other version so I'll have less problems as beginner?
Nice work on the OpenCL!
Linux, I hear that Mint is very good. Also consider Ubuntu/Kubuntu as there are lots resources on the web when you need to fix things up.
- merlino3d
- Member
- 65 posts
- Joined: Feb. 2013
- Offline
Thanks Marty!
So I'll start with Ubuntu/Kubuntu, I think I'll need some help from the community so more resource it's better for me!
Right now, I'm trying to touch my GPU's memory limits. It is cooking right now Just a question: in a simulation like the volcano preset we have density, vel (x,y,z), temperature, fuel, heat and so on, anyone is stored in the GPU memory or just some of them?
So I'll start with Ubuntu/Kubuntu, I think I'll need some help from the community so more resource it's better for me!
Right now, I'm trying to touch my GPU's memory limits. It is cooking right now Just a question: in a simulation like the volcano preset we have density, vel (x,y,z), temperature, fuel, heat and so on, anyone is stored in the GPU memory or just some of them?
- anon_user_37409885
- Member
- 4189 posts
- Joined: June 2012
- Offline
It'll be best to run some tests as I'm on the OsX platform which currently has OpenCL disabled.
To test the memory usage stats set
HOUDINI_OCL_REPORT_MEMORY_USE=1
The try individually turing those setting on and off to see the effect; a dialog box should appear with the memory consumption, and, let us know how it goes

To test the memory usage stats set
HOUDINI_OCL_REPORT_MEMORY_USE=1
The try individually turing those setting on and off to see the effect; a dialog box should appear with the memory consumption, and, let us know how it goes

- merlino3d
- Member
- 65 posts
- Joined: Feb. 2013
- Offline
MartybNz
To test the memory usage stats set
HOUDINI_OCL_REPORT_MEMORY_USE=1

Wow! That's good! (and … where can I find all those interesting flags? It's there any documentation?)
Starting with the same sim I've done before leaving all standard parameters. The final containers are 95 x 110 x 91
I've run 2 times as I can't understand why the “total memory allocated” and the “In Memory Pool” are so different and was thinking I've make a mistake:
CPU OpenCL report #1
===========OpenCL Memory Usage===========
Total Memory Allocated: 4093 MB
In Memory Pool: 4066 MB
# of Buffers in Memory Pool: 5217
In InUse List: 0 MB
Active Memory: 27 MB
CPU OpenCL report #2
===========OpenCL Memory Usage===========
Total Memory Allocated: 4092 MB
In Memory Pool: 4066 MB
# of Buffers in Memory Pool: 5217
In InUse List: 0 MB
Active Memory: 26 MB
AND the memory usage of the application is about 9GB
GPU OpenCL report #1
===========OpenCL Memory Usage===========
Total Memory Allocated: 253 MB
In Memory Pool: 228 MB
# of Buffers in Memory Pool: 237
In InUse List: 0 MB
Active Memory: 24 MB
GPU OpenCL report #2 = #1
AND the memory usage of the application is almost 5GB
- anon_user_37409885
- Member
- 4189 posts
- Joined: June 2012
- Offline
- merlino3d
- Member
- 65 posts
- Joined: Feb. 2013
- Offline
MartybNz
You can see Houdini flags from the terminal: hconfig -a
Thanks! Really interesting!
back to 3GB GPU limits:
I just changed the pyro Division Size from 0.15 to 0.05 so the final containers res (after 240 frames simulation) is 163 x 383 x 197 = 12 298 513 voxels and this is the last memory report:
===========OpenCL Memory Usage===========
Total Memory Allocated: 544 MB
In Memory Pool: 249 MB
# of Buffers in Memory Pool: 7
In InUse List: 0 MB
Active Memory: 294 MB
Application's memory usage is almost 9GB
At this point if I double the res using 0.025 it should go out of memory, as the 544 MB should go to 544 x 8 = 4352 MB … let's try!
EDIT:
Ok, it crashes! But way before I expected: on frame 45 my pc crashes with a blue screen.
So there is the complete report from frame 43 to 44 (no substeps)
It seems like it uses a maximum 1GB of memory (Total Memory Allocated) so I loose something, maybe that's for every container that make use of OpenCL (and I don't know witch one make use and witch one doesn't)
At frame 44 the containers res is 248 x 352 x 254 = 22 173 184 voxels and the application's memory usage is 8.5GB
===========OpenCL Memory Usage===========
Total Memory Allocated: 524 MB
In Memory Pool: 174 MB
# of Buffers in Memory Pool: 2
In InUse List: 0 MB
Active Memory: 349 MB
===========OpenCL Memory Usage===========
Total Memory Allocated: 611 MB
In Memory Pool: 174 MB
# of Buffers in Memory Pool: 2
In InUse List: 0 MB
Active Memory: 436 MB
===========OpenCL Memory Usage===========
Total Memory Allocated: 699 MB
In Memory Pool: 174 MB
# of Buffers in Memory Pool: 2
In InUse List: 0 MB
Active Memory: 524 MB
===========OpenCL Memory Usage===========
Total Memory Allocated: 699 MB
In Memory Pool: 174 MB
# of Buffers in Memory Pool: 2
In InUse List: 0 MB
Active Memory: 524 MB
===========OpenCL Memory Usage===========
Total Memory Allocated: 436 MB
In Memory Pool: 87 MB
# of Buffers in Memory Pool: 1
In InUse List: 0 MB
Active Memory: 349 MB
===========OpenCL Memory Usage===========
Total Memory Allocated: 611 MB
In Memory Pool: 0 MB
# of Buffers in Memory Pool: 0
In InUse List: 0 MB
Active Memory: 611 MB
===========OpenCL Memory Usage===========
Total Memory Allocated: 699 MB
In Memory Pool: 0 MB
# of Buffers in Memory Pool: 0
In InUse List: 0 MB
Active Memory: 699 MB
===========OpenCL Memory Usage===========
Total Memory Allocated: 961 MB
In Memory Pool: 0 MB
# of Buffers in Memory Pool: 0
In InUse List: 0 MB
Active Memory: 961 MB
===========OpenCL Memory Usage===========
Total Memory Allocated: 961 MB
In Memory Pool: 0 MB
# of Buffers in Memory Pool: 0
In InUse List: 0 MB
Active Memory: 961 MB
===========OpenCL Memory Usage===========
Total Memory Allocated: 961 MB
In Memory Pool: 0 MB
# of Buffers in Memory Pool: 0
In InUse List: 0 MB
Active Memory: 961 MB
===========OpenCL Memory Usage===========
Total Memory Allocated: 961 MB
In Memory Pool: 0 MB
# of Buffers in Memory Pool: 0
In InUse List: 0 MB
Active Memory: 961 MB
===========OpenCL Memory Usage===========
Total Memory Allocated: 961 MB
In Memory Pool: 0 MB
# of Buffers in Memory Pool: 0
In InUse List: 0 MB
Active Memory: 961 MB
===========OpenCL Memory Usage===========
Total Memory Allocated: 961 MB
In Memory Pool: 0 MB
# of Buffers in Memory Pool: 0
In InUse List: 0 MB
Active Memory: 961 MB
===========OpenCL Memory Usage===========
Total Memory Allocated: 961 MB
In Memory Pool: 0 MB
# of Buffers in Memory Pool: 0
In InUse List: 0 MB
Active Memory: 961 MB
===========OpenCL Memory Usage===========
Total Memory Allocated: 961 MB
In Memory Pool: 0 MB
# of Buffers in Memory Pool: 0
In InUse List: 0 MB
Active Memory: 961 MB
===========OpenCL Memory Usage===========
Total Memory Allocated: 961 MB
In Memory Pool: 0 MB
# of Buffers in Memory Pool: 0
In InUse List: 0 MB
Active Memory: 961 MB
===========OpenCL Memory Usage===========
Total Memory Allocated: 824 MB
In Memory Pool: 212 MB
# of Buffers in Memory Pool: 40
In InUse List: 0 MB
Active Memory: 611 MB
===========OpenCL Memory Usage===========
Total Memory Allocated: 699 MB
In Memory Pool: 174 MB
# of Buffers in Memory Pool: 2
In InUse List: 0 MB
Active Memory: 524 MB
===========OpenCL Memory Usage===========
Total Memory Allocated: 699 MB
In Memory Pool: 174 MB
# of Buffers in Memory Pool: 2
In InUse List: 0 MB
Active Memory: 524 MB
===========OpenCL Memory Usage===========
Total Memory Allocated: 699 MB
In Memory Pool: 174 MB
# of Buffers in Memory Pool: 2
In InUse List: 0 MB
Active Memory: 524 MB
===========OpenCL Memory Usage===========
Total Memory Allocated: 889 MB
In Memory Pool: 174 MB
# of Buffers in Memory Pool: 2
In InUse List: 0 MB
Active Memory: 714 MB
===========OpenCL Memory Usage===========
Total Memory Allocated: 801 MB
In Memory Pool: 190 MB
# of Buffers in Memory Pool: 4
In InUse List: 0 MB
Active Memory: 611 MB
===========OpenCL Memory Usage===========
Total Memory Allocated: 794 MB
In Memory Pool: 182 MB
# of Buffers in Memory Pool: 4
In InUse List: 0 MB
Active Memory: 611 MB
===========OpenCL Memory Usage===========
Total Memory Allocated: 794 MB
In Memory Pool: 182 MB
# of Buffers in Memory Pool: 4
In InUse List: 0 MB
Active Memory: 611 MB
===========OpenCL Memory Usage===========
Total Memory Allocated: 794 MB
In Memory Pool: 182 MB
# of Buffers in Memory Pool: 4
In InUse List: 0 MB
Active Memory: 611 MB
===========OpenCL Memory Usage===========
Total Memory Allocated: 699 MB
In Memory Pool: 174 MB
# of Buffers in Memory Pool: 4
In InUse List: 0 MB
Active Memory: 524 MB
===========OpenCL Memory Usage===========
Total Memory Allocated: 699 MB
In Memory Pool: 174 MB
# of Buffers in Memory Pool: 4
In InUse List: 0 MB
Active Memory: 524 MB
===========OpenCL Memory Usage===========
Total Memory Allocated: 699 MB
In Memory Pool: 174 MB
# of Buffers in Memory Pool: 4
In InUse List: 0 MB
Active Memory: 524 MB
EDIT II:
Actually right now I'm really curious about make those same test on linux. I hope tomorrow I have the time to format my pc and make a dual boot setup …
- anon_user_37409885
- Member
- 4189 posts
- Joined: June 2012
- Offline
Nice - that the graphics card will be using Vram for the display too, so you won't reach 3Gb for OpenCL GPU
Also the memory pool should be a buffer on the GPU that is kept so as not to transfer across the PCI bus and back into CPU memory format AFAIK
So the total amount of memory for GPU openCL would be Total GPU RAM -Display Ram- OpenCL memory pool. Not too sure if it's all dynamically allocated or fixed as I'm not able to test it currently. Would be an interesting read though!
BTW some light testing checking voxel memory usage shows (VolumeSOP)
5-10KB for 1 scalar voxel.
5-10KB for 1000 scalar voxels
5.46 MB for 1,000,000,000 scalar voxels
5.46GB for 1,000,000,000,000 scalar voxels
Also the memory pool should be a buffer on the GPU that is kept so as not to transfer across the PCI bus and back into CPU memory format AFAIK
So the total amount of memory for GPU openCL would be Total GPU RAM -Display Ram- OpenCL memory pool. Not too sure if it's all dynamically allocated or fixed as I'm not able to test it currently. Would be an interesting read though!
BTW some light testing checking voxel memory usage shows (VolumeSOP)
5-10KB for 1 scalar voxel.
5-10KB for 1000 scalar voxels
5.46 MB for 1,000,000,000 scalar voxels
5.46GB for 1,000,000,000,000 scalar voxels
- merlino3d
- Member
- 65 posts
- Joined: Feb. 2013
- Offline
well, after “some” work on my pc … I've installed ubuntu and houdini works perfect! Hurra!
But, it seems like the Intel SKD for OpenCl doesn't works with Ubuntu! Buuuuuuu!
It works just for
Red Hat Enterprise Linux* OS 6.0 or higher (64-bit version)
SUSE Linux Enterprise Server* 11.1 or higher (64-bit version)
Anyone knows if it works on the free version of the OS?
By the records:
same original simulation, standard volcano with no changes:
CPU = 1m07s (without OpenCL!)
GPU = 30s
It's really impressive the difference. With only CPU t's like 33% faster! ok, maybe things will change with a complex sim and I want to do some test, but the difference seems really worth the time you spend on learning how to make it works on linux!
But, it seems like the Intel SKD for OpenCl doesn't works with Ubuntu! Buuuuuuu!
It works just for
Red Hat Enterprise Linux* OS 6.0 or higher (64-bit version)
SUSE Linux Enterprise Server* 11.1 or higher (64-bit version)
Anyone knows if it works on the free version of the OS?
By the records:
same original simulation, standard volcano with no changes:
CPU = 1m07s (without OpenCL!)
GPU = 30s
It's really impressive the difference. With only CPU t's like 33% faster! ok, maybe things will change with a complex sim and I want to do some test, but the difference seems really worth the time you spend on learning how to make it works on linux!
- anon_user_37409885
- Member
- 4189 posts
- Joined: June 2012
- Offline
merlino3d
well, after “some” work on my pc … I've installed ubuntu and houdini works perfect! Hurra!
But, it seems like the Intel SKD for OpenCl doesn't works with Ubuntu! Buuuuuuu!
I
It'll work but you need to Alien it!
http://en.wikipedia.org/wiki/Alien_(software) [en.wikipedia.org]
Something like this, replace the OpenCL part with the version you have
sudo alien opencl1.2intelcpu3.0.672791.x86_64.rpm
-
- Quick Links