Page 1 of 2
Memory management.How much RAM amount needed to manage VRAM?
Posted: Wed Jun 22, 2011 11:22 am
by ROUBAL
Hi, I think that this question has been treated a long time a go, but I can't find the topic, so I ask again :
I upgraded my system very recently, and now I use two EVGA GTX 580 3GB in my Cubix box.
I opened Win 7(x64 pro) ressource monitor and saw that when loading data into the GPU, the memory is always used at maximum (I have 8GB of RAM on my motherboard and it doesn't support more). Window itself requires between 500MB and 1GB.
I would like to know if I can be sure to get advantage of my full 3GB VRAM amount.
So, my questions are :
1 - how much RAM is actually required to managed 3GB of VRAM during the loading process ?
2 - Does Octane or Windows use the hard disk to buffer if there is not enough RAM available ?
Thanks in advance.
Re: Memory management.How much RAM amount needed to manage VRAM?
Posted: Wed Jun 22, 2011 8:31 pm
by abstrax
ROUBAL wrote:Hi, I think that this question has been treated a long time a go, but I can't find the topic, so I ask again :
I upgraded my system very recently, and now I use two EVGA GTX 580 3GB in my Cubix box.
I opened Win 7(x64 pro) ressource monitor and saw that when loading data into the GPU, the memory is always used at maximum (I have 8GB of RAM on my motherboard and it doesn't support more). Window itself requires between 500MB and 1GB.
I would like to know if I can be sure to get advantage of my full 3GB VRAM amount.
So, my questions are :
1 - how much RAM is actually required to managed 3GB of VRAM during the loading process ?
2 - Does Octane or Windows use the hard disk to buffer if there is not enough RAM available ?
Thanks in advance.
To question 1: The only step that requires significant amount of memory is loading and voxelizing the geometry. How much depends on your scene. After voxelizing the temporary memory is deallocated again and only the data that gets loaded onto the GPU is kept. That also applies to the image textures. I.e. after the voxelizing, only about the memory that gets uploaded is kept in the host memory. Or in other words: If you use those 3GB mainly for textures and not so much for geometry, your 8GB should be more than enough. If you use them mainly for geometry you might run out of memory.
To question 2: If you run out of memory, Windows starts swapping RAM onto the hard drive, which is a lot slower than RAM, but should still work.
Cheers,
Marcus
Re: Memory management.How much RAM amount needed to manage VRAM?
Posted: Wed Jun 22, 2011 10:07 pm
by ROUBAL
Hmmm, Thanks.
I use mainly geometry, and I use textures only when really necessary.
If I fill the 3GB of VRAM with pure geometry in my two cards, how much RAM will it actually require ? 2x3 GB ? More ?
Re: Memory management.How much RAM amount needed to manage VRAM?
Posted: Wed Jun 22, 2011 10:15 pm
by abstrax
ROUBAL wrote:Hmmm, Thanks.
I use mainly geometry, and I use textures only when really necessary.
If I fill the 3GB of VRAM with pure geometry in my two cards, how much RAM will it actually require ? 2x3 GB ? More ?
Sorry, I don't know since I have never tried it. If I remember correctly, Dave62 tried to fill the 3GB mainly with geometry and voxelizing used up to 12GB. Maybe he can give some more details.
Cheers,
Marcus
Re: Memory management.How much RAM amount needed to manage VRAM?
Posted: Thu Jun 23, 2011 12:59 am
by ROUBAL
12GB ! Wow ! I hope that I will be able to complete my current scene. I will have several detailed buildings and cars and a lot of high poly city props.
Instances will be really welcome !
EDIT : I have just thought that the memory load also depends on the output image resolution.
I will do some tests as soon as possible with various resolution. Currently, I have been able to load a scene of more than 7 000 000 triangles for a resolution 8192x8192, as I would like to do some posters. The memory load is around 1800 MB. I will try to load a scene of pure geometry in 1280x1280 for example and in 8192x9192, and see what happens and how many triangles I can render in each case...
Re: Memory management.How much RAM amount needed to manage VRAM?
Posted: Thu Jun 23, 2011 10:39 pm
by ROUBAL
Well, I have done some tests... It has been rather long because exporting from Blender a file giving 12 Millions of triangle requires around 7 minutes and the loading in Octane requires more !
I created in Blender a Cube with faces cut in triangles (12 triangles) and I duplicated it a cube made of 100 cubes and again an other cube of 100 cubes until I got a cube of 12 Millions faces. I exported it in obj and imported it in Octane. I got 12 million triangles, and 2161.8/3002MB used, in 8192x4096. The RAM required was much over the 8GB, but the buffer on disk seemed to work.
But I didn't see anything. The render window was pitch black, and even an hdr loaded in background was unvisible.
Then, I loaded my last and biggest working scene of 7.6 millions of triangles, in 2560x2560 resolution. VRAM used was around 1.6GB.
I updated the blend file with a copy of a new building and one more car, and exported an obj.
I relinked to the the new obj, and the Octane scene volume raised to around 9.2 Millions of triangles.
The image rendered fine, and I was able to navigate correctly. So I increased the resolution. The memory amount used did not increase, but the image turned pitch black while the GPU usage for the two used GPU falled down to 31% to 35 %.
As the scene was already loaded and rendered fine with a low use of RAM and plenty of VRAM still available, what does it mean ?
Re: Memory management.How much RAM amount needed to manage VRAM?
Posted: Thu Jun 23, 2011 11:12 pm
by abstrax
ROUBAL wrote:Well, I have done some tests... It has been rather long because exporting from Blender a file giving 12 Millions of triangle requires around 7 minutes and the loading in Octane requires more !
I created in Blender a Cube with faces cut in triangles (12 triangles) and I duplicated it a cube made of 100 cubes and again an other cube of 100 cubes until I got a cube of 12 Millions faces. I exported it in obj and imported it in Octane. I got 12 million triangles, and 2161.8/3002MB used, in 8192x4096. The RAM required was much over the 8GB, but the buffer on disk seemed to work.
But I didn't see anything. The render window was pitch black, and even an hdr loaded in background was unvisible.
Then, I loaded my last and biggest working scene of 7.6 millions of triangles, in 2560x2560 resolution. VRAM used was around 1.6GB.
I updated the blend file with a copy of a new building and one more car, and exported an obj.
I relinked to the the new obj, and the Octane scene volume raised to around 9.2 Millions of triangles.
The image rendered fine, and I was able to navigate correctly. So I increased the resolution. The memory amount used did not increase, but the image turned pitch black while the GPU usage for the two used GPU falled down to 31% to 35 %.
As the scene was already loaded and rendered fine with a low use of RAM and plenty of VRAM still available, what does it mean ?
If it turns black, you run out of memory. An image of 8K x 8K pixels requires 1GB of VRAM...
But you can work around this problem by rendering your image in tiles, using the lens shift option and reducing the FOV.
Cheers,
Marcus
Re: Memory management.How much RAM amount needed to manage VRAM?
Posted: Thu Jun 23, 2011 11:28 pm
by ROUBAL
If it turns black, you run out of memory. An image of 8K x 8K pixels requires 1GB of VRAM...
But you can work around this problem by rendering your image in tiles, using the lens shift option and reducing the FOV.
OK! Thank you Marcus. I will try that.
Re: Memory management.How much RAM amount needed to manage VRAM?
Posted: Sat Jun 25, 2011 2:41 pm
by Timmaigh
I can say from personal experience, that 12GB of RAM is not enough for voxelising an obj file of 1,5GB size (i think it was about 14 mio of polys)
For 32bit systems, the maximum size of obj i was able to voxelize was around 220MB.
Re: Memory management.How much RAM amount needed to manage VRAM?
Posted: Sun Jun 26, 2011 1:46 am
by ROUBAL
Well, more experiments... and bad surprises...
My current obj weights 578.693 MB.
exporting takes 8min 30s and Relinking in Octanes takes around 30 min on my PC with 8GB of RAM ! The ressource monitor displayed around 13.9 GB in the "validation" column.
I had a scene loaded with 7.64 Triangles displayed in Octane. 1603.8/3002 MB used.
The Cuda manager displays geometry 1GB, Textures 99MB, and film plate 62MB for an image of 2560x2560.
I changed for 3000x3000, so not much more, Octane displayed 1946.5/3002 MB used and then I got the black screen and the render rate accelerated... The cuda manager displays only 82MB instead of 62MB in previous resolution.
So, I ran out of which memory ? RAM or VRAM ? The disk buffer doesn't work in this case ?
It seems that I had still around 1GB of unused VRAM, so increasing simply a bit the resolution shouldn't lead to a crash imho...
I forgot to say that I use the 1.0246b x 64 Cuda 3.0 in order to used multi GPU at best.