Page 1 of 1

mesh, texture file sizes, & memory worries?

Posted: Mon Sep 20, 2010 10:02 am
by kettlefish
Hello,

This is my first post here. I couldn't find the answer to my question elsewhere in the forum, so sorry if it's already been covered.

Before I take the plunge and buy octane, I'm a bit confused by the available memory on the video card. I've played with a few scenes and they always seem to take up large amounts of RAM, so I did a quick test, The details are below, just in case I'm doing something stupid.

I built a quick file in Blender which comprised of a background plane, and suzanne (monkey head). I unwrapped the head, and applied a simple texture to it. The texture is simply a face with the background removed and replaced with white saved as a 1024 x1024 jpg.

I imported 2 obj files into different instances of octane, 1 with no materials, 1 with the texture. The measured:

- no textures = 16.4 MB memory used
- textured = 24.1 MB memory used

Therefore it looks to me that the geometry is using 16MB of memory and the texture is using around 8 MB of memory.

BUT and this is where I'm confused, the obj file is only 64 KB, and the image file is only 358 KB, so my question is, why do they take up so much video memory? with a 358 KB image taking up 8MB of video RAM, I would imagine you could run out of memory very quickly.

I'm using ubuntu, 10.4 LTS with a Geforce 9 series card

Thanks in advance for any advice

Re: mesh, texture file sizes, & memory worries?

Posted: Mon Sep 20, 2010 10:39 am
by pixelrush
Hi,
A card's vram capacity is important for Octane purposes.
As you note the mesh and textures take up more space than the .obj and image files.
The render resolution also takes up space.
The data is prepared using the cpu in system ram and fed into the card for cuda to process/render.
With a particular card there will be a trade off as to what is possible to do within the space.
If you settle on a small image size and no textures and max out on the poly count you will find 1gb will hold about 4.5m tris. If you want a large render size you will need to make do with less polys and similarly if you want to use a lot of large unique textures.
If you use the same texture Octane only loads it once though.
In fact 1gb is reasonably useful if your need is average but 512mb is pretty limiting and not something to buy by choice.
Many users are currently going with GTX460/2gb cards for the extra flexibility and decent performance at low cost. This might hold say a scene of 2-3m polys along with a fair number of textures for an image size 4000x3000. Instancing isnt supported yet.
If you are a really heavy duty user you might want to look to multiple Quadro or Tesla cards with 4 or 6 gb but these are disproportionately expensive.
If you have multiple cards the Octane data is loaded into each one so the vram isnt additive. ie if you have two x 1gb cards the total memory for use remains 1gb but it runs almost twice as fast.
You really need to go with 64 bit O/S and 4gb+ ram for 1gb vram and above.
In your case if you currently have say a 9800GT/512mb the best thing would be to retain it to use only for the UI display and add say a GTX460/2gb for the grunt cuda rendering work ie no monitor connected.
Really the lower practical bound for render performance is a card with about 96/112/128 cuda cores. Things begin to hum along at 240 and by the time you hit 480 life is pretty cool. Fermi generation cards are good performers.
HTH
To get an idea what is possible in 896 mb vram see enricocerica's work in the Gallery.
I am sure he would like more room though ;)

Re: mesh, texture file sizes, & memory worries?

Posted: Mon Sep 20, 2010 11:33 am
by kettlefish
thanks for reply pixelrush

weirdly you guessed exactly correctly, I've currently got a 512mb 9800GT, and I've just ordered a 2gb gtx460, which will go into my 64bit ubuntu box, with i7 and 6gb Ram, in exactly the config you mentioned :shock: . But the 9800gt has let me play with octane, enough to get me interested. :D

I was just wondering if I was doing something wrong the the meshes and textures taking up so much RAM on the video card, far higher than the file size of the original files.

Re: mesh, texture file sizes, & memory worries?

Posted: Mon Sep 20, 2010 11:51 am
by pixelrush
Ah you see we are on top of our game here :)

The seemingly outsized space taken up by the data is normal.
Dont think of it as .obj and .jpg so much as predigested numbers for cuda to chew on :o
I think Refractive have already managed to manage it a little better and IIRC they have said something about further efficiency to come.

Re: mesh, texture file sizes, & memory worries?

Posted: Mon Sep 20, 2010 12:15 pm
by kubo
keep in mind that the images used as textures are uploaded to the gpu uncompressed, so doesn't matter if it's a jpg or tiff or whatever, once up all take the same amount of ram for the same res.

Re: mesh, texture file sizes, & memory worries?

Posted: Mon Sep 20, 2010 12:21 pm
by kettlefish
Ahhh.....

awesome thanks for the replies,

just bought Octane.... :D

Re: mesh, texture file sizes, & memory worries?

Posted: Mon Sep 20, 2010 12:29 pm
by pixelrush
Well thats good news. I am pleased we were able to help you 8-)
I think you will like the latest beta.
BTW welcome to the community ;)