GPU RAM size.

I tend to use GPU for Blender rendering and am currently using a GTX 670 4GB. Looking to have a separate computer just for rendering, perhaps with a two card set-up. I am rendering large files and am wondering if there is any way to calculate if I need 2GB or 4GB cards.

The size of renders is often 5200 x 5200 pixels at 500 samples, or bigger.

Can I use two 2GB cards in SLI and have same non-issues with my current 4GB GPU (it doesn’t crash)?

You don’t need to use SLI, the cards just run paired if you put them in. Actually SLI can cause issues.

vRAM size does not add up. 2*2GB = 2GB for rendering. All scene information is copied to each cards vRAM and each cards calculates a “half” of the image - still needs all the information though.

Assuming your image has 24bit color depth, you need 5200x5200x24 = 648.960.000 bit.
1 byte has 8 bit -> 648960000/8 = 81.120.000 byte.
Factor is 1024 for kilobyte, megabyte … -> 77.36 MB memory is needed to store the final render.

However, the huge memory consumption comes from geometry and textures used.

Thanks for that. Just a follow up on the GB size. Is there any significance in choosing RAM size for GPU based on the memory peak shown for a render i.e. if I never see more than say 1.5GB of peak memory, can I safely buy a 2GB card as opposed to current 4GB card?

I can’t really tell you, as I don’t really know Blender’s rendercode.

But I can guesstimate a few things:

I guess that CUDA uses different datastructures. To oversimplify it, while CPU rendering might store a value in a 8bit variable, CUDA might require a 32bit variable for the same parameter - could also be the other way round.

Rendering on the GPU requires ALL data to be in the vRAM. Then rendering starts, there’s no data I/O until we’re done.
Rendering on the CPU, you can always stream data. Flush stuff you don’t need anymore, load new stuff into the RAM.
I don’t know how Blender does it, if it also loads all data into the RAM before starting CPU rendering - as it wouldn’t matter you fill the RAM, and the overflow goes to the pagefile.sys or your swap partition, depending on the OS.

But I am sure someone in this forum has the knowledge to answer this clearly, just got to wait for him to pass by :slight_smile: