Help me understand GPU memory usage.

Restarting DAZ before each render.

Test render 1:
Custom made genesis 8 base character, just added hair, no clothes, nothing else.
GPU memory usage via GPU-Z during render: About 3000 MB

Test render 2:
Some indoor location plus HDRi environment.
GPU memory usage via GPU-Z during render: About 2500 MB

Test render 3:
Now I am merging both scenes into one, placing the character into the room.
GPU memory usage via GPU-Z during render: About 3500 MB

3000 + 2500 = 3500

? surprise

I'm asking, because I'm trying to figure out how much items and characters I can use without getting beyond my GPU memory (RTX 2060 6 GB).

Comments

  • Matt_CastleMatt_Castle Posts: 2,728

    It's complicated, but the short version is that a lot of your usage is the actual render data - and, if it's also your primary display adaptor, a large chunk taken by Windows just to run the display.

    Big overheads that only count once, and don't double when you add both scenes together.

  • What about a blank render with just hdri?

    The number of items and objects really depends on the settings, base figures are 17k polygons, hires setting is the same 17k, but it's x4 for every sub division on top. Then if the figures aren't close up you can resize the textures, they are at 4k, but you don't get much loss of detail if they are at 1k depending on their distance, close ups you'll need to go to 8k, but then there is probably just 1 figure.

    My cpu rendering with 8gb mem starts to sulk at 4 million textured triangles.

     

  •  A blank render with just the HDRi used almost 2500 MB GPU memory.

  • PaintboxPaintbox Posts: 1,633

    What size is the HDRi environment? (2k,4k or 8k ?)

  • alex86firealex86fire Posts: 1,130

    It's crazy how much memory Iray renders eat.

    I had to start hide whatever is not in my camera view to make sure my render doesn't switch to CPU.

    I even hid some parts of the body that were hidden by clothes.

    Complex scenes with more than 2 characters are dangerous if you don't resize any textures (which I haven't done yet).

    I am wondering if there is any way to render an image without the renderer showing up and taking from the GPU memory.

    I once forgot to close the previous image and had 2 renderers on screen. It did not agree with my GPU :).

  • marblemarble Posts: 7,500

    Don't take this as gospel but I get the impression that IRay uses texture compression more the closer you get to the VRAM limit. So you might think that adding an extra G8 when you are at 6GB of your 8GB limit might take you over the top but somehow it fits. I've never been able to get a handle on the maths but that's the way it seems to work - i.e. there is not a linear relationship between scene content and VRAM usage.

    Having said that, I routinely use Scene Optimizer to reduce texture sizes by at least half.

  • It's crazy how much memory Iray renders eat.

    I had to start hide whatever is not in my camera view to make sure my render doesn't switch to CPU.

    I even hid some parts of the body that were hidden by clothes.

    Complex scenes with more than 2 characters are dangerous if you don't resize any textures (which I haven't done yet).

    I am wondering if there is any way to render an image without the renderer showing up and taking from the GPU memory.

    I once forgot to close the previous image and had 2 renderers on screen. It did not agree with my GPU :).

    It all depends on your VRAM and how you optimize the scene. I've gotten 5 G8 characters plus an indoor environment on my 8Gb card by cutting all the texturesd in half. 2k is visually identical at qall but the closest view to 4k. Since each surface can have several maps, all at 4k, that can add up in a hurry.

    If you're not willing to use something like Scene Optimizer you'll have a lot of trouble with much more than 2 g8's on an 8gb card. 

    As to the OP, a chunk of VRAM is always reserved by Windows unless you're using a Quadro, The render engine itself also takes up VRAM. Then the geometries and textures have to be loaded as well as an output buffer and some space for all the calculations and intermediate numbers.

  • jmtbankjmtbank Posts: 176

    This is the way I see it:    Your first scene was about 1000 and the 2nd 500.  

    Your Daz, Windows and browser will have been generating 2000.  When push comes to shove at big render time Iray seems to manage to negotiate some of this baseline back from Windows sometimes.  But it wont bother until your card runs out of memory, so you get situations where a render is 6000.  You dump an extra 3000 of non-instancable stuff in, and it still managers to fit in 8000.   Its hard to tell whats going on, as when it gets close to 100% it will start to force compress some textures.

    People on the forums have been upset with the way they feel Win10 handles gfx memory vs Win7, stating they could run bigger scenes on W7.  

  • Paintbox said:

    What size is the HDRi environment? (2k,4k or 8k ?)

    It's 8k. Probably way too much for what I need.
    But it's crazy how an empty scene with only the HDRi (between 50 - 100 MB texture file) can generate 1500 GB VRAM usage.

     

     

    jmtbank said:

    This is the way I see it:    Your first scene was about 1000 and the 2nd 500.  

    Your Daz, Windows and browser will have been generating 2000.  When push comes to shove at big render time Iray seems to manage to negotiate some of this baseline back from Windows sometimes.  But it wont bother until your card runs out of memory, so you get situations where a render is 6000.  You dump an extra 3000 of non-instancable stuff in, and it still managers to fit in 8000.   Its hard to tell whats going on, as when it gets close to 100% it will start to force compress some textures.

    People on the forums have been upset with the way they feel Win10 handles gfx memory vs Win7, stating they could run bigger scenes on W7.  

    I don't think that's the case, because before starting each render (but the scene loaded), VRAM was only filled between 200 - 400 MB. So most of the GBs were actually generated by the render itself.
    BTW, I am on Win7.

  • An 8k HDRI is more than just a background image. It contains a huge amount of lighting information. That information has to be translated from the file into a lit scene by iRay. That clearly takes some VRAM.

  • kyoto kidkyoto kid Posts: 41,380

    ...I can often get two G3s and a simple HDRI (Fast Production Lights) to fit on the 4 GB GPU in my assembly system at  927 x 1,200 which I usually use for proofing characters and small scene subsets.  Render quality "1" is sufficient for tests.

Sign In or Register to comment.