Karma XPU randomly not/late using GPU?

   958   7   0
User Avatar
Member
79 posts
Joined: March 2016
Offline
I am trying to render shots with karma xpu. However it feels like it is randomly using the gpu.

For example, I have a scene where I setup a tree for usd. When I render the tree in this scene it's really fast, and xpu instantly kicks in to 100%. Even when having it instanced like 100.000 times.

But whenever I load that tree into an existing 'street scene' with a little more textures and geo, it would render the whole frame on cpu. Whilst when I'd render that street scene without the tree's it'd use the GPU after like 20seconds.

Also I am using a 3080 with 12GB, the karma viewport statistics says it's only using around 3-4GB of memory.

Anyone experienced this aswell?
https://www.youtube.com/@Klonkel
User Avatar
Staff
531 posts
Joined: May 2019
Offline
> Whilst when I'd render that street scene without the tree's it'd use the GPU after like 20seconds.

There is shader compilation that happens. But after it happens once, then it will be cached and not be a cost again. So if you re-render, does it still take 20seconds before GPU starts?

> Also I am using a 3080 with 12GB, the karma viewport statistics says it's only using around 3-4GB of memory.

What does your GPU ram say? (eg in task manager in windows, or "nvidia-smi" on linux)
Its possible that other things are using up memory on the GPU other than XPU.
eg
- Vulkan/OpenGL
- OpenCL
- Another Houdini session
- etc...

How are you doing your rendering? viewport? mplay? offline via karma/husk?
What happens if you only use offline (ie karma/husk command) and do rendering without houdini open?
User Avatar
Member
183 posts
Joined: Jan. 2015
Offline
I'm having issues on two machines at the moment, with a scene that contains allot of textures.

Karma XPU is running on Deadline with Husk.

Cuda usage in Task Manager is just between 0% and 12%, and VRAM usage around half. Nothing out of the ordinary is showing in the logs. One of the machines is using a 3090 and the other 4090.

When working in the Solaris IPR viewport everything is fine. And we have allot of other machines that run with no problems.

All the machines are using local texture cache btw.

Will report if I find what is causing it.
User Avatar
Member
79 posts
Joined: March 2016
Offline
Hi, thanks for the reply!
For me it seems like it's the gpu memory indeed, I can related that to the gpu either not kicking in or extremely late. Will try to optimize the scene more.
https://www.youtube.com/@Klonkel
User Avatar
Member
79 posts
Joined: March 2016
Offline
Okay so for the xpu rendering in the viewport it was the memory.

Rendering via deadline/husk tho, I actually have the same problem as heileif. I see no increase in gpu memory and via velocityx (pny 3080) no mhz increase.
https://www.youtube.com/@Klonkel
User Avatar
Member
183 posts
Joined: Jan. 2015
Offline
I'm not 100% sure if fixed. But I tried to remove the "HOUDINI_PATHMAP" environment variable. Now regular speed is back.
User Avatar
Member
79 posts
Joined: March 2016
Offline
Hmm, don't have that variable anywhere in the .env file. Also turned off hardware accelerate GPU-scheduling to be able to see the cuda cores usage in percentage (task manager). Via deadline just showing it is exactly 0.
https://www.youtube.com/@Klonkel
User Avatar
Member
79 posts
Joined: March 2016
Offline
Allright, fixed it from my side. Feeling stupid tho. So when you create a karma rop you get 3 nodes: the karma node, null (OUT) and a usd render rop. When you set the karma node to xpu, the usd render rop still has a render delegate selection, which you then also have to set to xpu, otherwise it'll default be cpu.
https://www.youtube.com/@Klonkel
  • Quick Links