How to keep as much gpu memory as possible for octane ?

Houdini Integrated Plugin

Moderator: juanjgon

Post Reply
JPhi
Licensed Customer
Posts: 34
Joined: Tue Nov 15, 2016 11:42 am

Hi,

I need to give octane as much GPU memory as possible, so I'm looking for a way for Houdini to be the least greedy for its display.
Is there any way for it not to use textures for scene view ? I don't mind working without textures in the scene view, and only need them in IPR, but non-textured displays don't change the amount of gpu memory houdini uses.
Maybe a shading tip ?

Thanx.
bartolos
Licensed Customer
Posts: 38
Joined: Thu Aug 11, 2016 8:59 am

Not much to do besides hiding as much geo as you can. You can use nulls tagged for display in sops, and your actual geometry marked for render output.
Other solution would be to get a cheap secondary graphics card for your display and leave the powerful GPU for rendering only.
JPhi
Licensed Customer
Posts: 34
Joined: Tue Nov 15, 2016 11:42 am

Thank you for your response.

Isn't there any way (I don't know enough about Houdini yet but it seems it will become my main 3d software) to setup shaders so only Octane receive textures maps and not houdini preview so main view wouldn't use gpu memory for them ? For now shaders are applied with texture node inside geo nodes. I seem to remember seeing setups where only octane could access textures but not the main view.
Textures maps are where I could save the most here. Geometry is needed. And when I load a the same scene without textures I save a lot of gpu memory.
Last edited by JPhi on Wed Dec 11, 2024 6:44 pm, edited 1 time in total.
ricky_otoy
OctaneRender Team
Posts: 289
Joined: Mon Jun 19, 2023 6:34 am

JPhi wrote:Thank you for your response.

Isn't there any way (I don't know enough about Houdini yet but it seems it will become my main 3d software) to setup shaders so only Octane receive textures maps and not houdini preview so main view wouldn't use gpu memory for them ?
Textures maps are where I could save the most here. Geometry is needed.
I don't think you have to worry about that as unfortunately right now (or fortunately for your case), we do not display the textures in OpenGL in Houdini.
JPhi
Licensed Customer
Posts: 34
Joined: Tue Nov 15, 2016 11:42 am

ricky_otoy wrote: I don't think you have to worry about that as unfortunately right now (or fortunately for your case), we do not display the textures in OpenGL in Houdini.
So I've done something wrong for what I want since main view displays textures (those applied with octane nodes in octane shaders) and it takes several Gb in gpu memory which I would like to save. I can see it when loading scene with and without textures without opening octane.
Where do you put shaders and how do geometry is linked to them in your case ?
JPhi
Licensed Customer
Posts: 34
Joined: Tue Nov 15, 2016 11:42 am

I have several (lot of) imported fbx in geos nodes contained in a subnetwork at obj level, with a material node in the end of each network (in each geo node at the end of each file node network) which point for each group of each file node to octane shaders contained in a material netwok inside the same subnetwork.
And houdini does display textures used by octane shaders in main view in opengl. Without opening octane IPR.
And when I delete octane shaders, houdini does not display anymore those textures and gpu memory saves several Gb of ram. Without opening octane IPR.

So there is a way to display textures contained in octane shaders (at least albedo ones - not checked the others) in houdini.
I can provide a sample scene if needed.

So how do you usually set this up so as not to display these textures in opengl and so save lot of GPU memory when there are lot of shaders and textures (no need to have textures stored twice in memory), which is what I need ?
(Using wireframe or any other non-textured display mode does not changed amount of gpu ram used by houdini, textures stay cached in gpu ram anyway - unless a way to free textures memory exists in those modes that I don't know ?).

EDIT : and a @shop_materialpath variable is used. Is it the culprit ? could it trigger something I did not see ?
ricky_otoy
OctaneRender Team
Posts: 289
Joined: Mon Jun 19, 2023 6:34 am

Are you using the Filmbox FBX importer from the file menu? As far as I know, that will create shaders (not octane ones)

You can repurpose and repoint to new Octane specific materials. Octane would render your scene in a pink/magenta material showing what is unassigned. Set up your materials in a matnetwork using the octane material builder.

I do want to have a way to make these steps quicker and easier for those kinds of imports, but that will probably only come later on.
JPhi
Licensed Customer
Posts: 34
Joined: Tue Nov 15, 2016 11:42 am

I did use houdini filmbox importer and set it to create houdini principled shaders.
Then I converted those shaders in octane shaders with OD tools, so now only octane shader nodes exist; no more houdini native shaders. And all this is easily done with 2 mouse clics.

When I delete octane shaders, houdini opengl is no more textured so information seems to come from them. I thought octane nodes do not give this information to houdini, but it seems I'm wrong.

Does this gives you any clue of why houdini opengl use those images and use gpu ram I would need for octane, and how to avoid it ?
I do want to have a way to make these steps quicker and easier for those kinds of imports, but that will probably only come later on.
Please, find then a way to let the option to not pass textures to opengl, since, as far as I can see, images are loaded twice in gpu memory, once for openGL and once for octane, which is a real problem when working with scenes containing many textures when gpu ram begins to run out.
ricky_otoy
OctaneRender Team
Posts: 289
Joined: Mon Jun 19, 2023 6:34 am

Sorry what I mean is we already don't pass that to the GL - to double check me on this, create a new material with a texture and assign it to a sphere. It won't display the texture in the viewport.
I don't have the HDA, but I would assume that the OD Tools conversion you are using is creating the link for viewport display via script.
skientia
Licensed Customer
Posts: 239
Joined: Tue Mar 12, 2024 1:50 am
Contact:

Strictly regarding the question in the title: was (in an idea situation, all) Octane-related optimizations applied?

The predominant ones and some more are mentioned on this Kernel / Sampling page, if it is of any help.
Octane resources
OCTANE POSTS (URLs have changed, which will break some links but all content remains available).
Post Reply

Return to “Houdini”