CGTalk > Software Specific Forums > Blender
Login register
Thread Closed share thread « Previous Thread | Next Thread »
 
Thread Tools Search this Thread Display Modes
Old 05-25-2013, 10:26 PM   #1
DrCharbonneau
Time-Space Physicist
 
DrCharbonneau's Avatar
portfolio
Dr. R. D. Charbonneau A.Ph.D.
Astrophysicist
Charbonneau Arts & Research
USA
 
Join Date: May 2013
Posts: 86
Memory Concerns in Blender

One of the issues with Blender is memory hunger. My experiences have been that RAM is more important than CPU speed. I'm wondering how many of you who are long time experts would agree with that.

I run it on an XP pro machine having 2Gb RAM @ 2.5Ghz, 32bit OS and if the vertices add up into the 10's of thousands, the machine will bog down before even getting to render time. I run the 64bit software (2.67) on a laptop with 4Gb RAM @ 2.0 Ghz and the same file runs much faster until I add even more of a vertex load.

I imagine the question is whether the heightened performance is from the 64bit OS or the RAM. I'm currently saving my pennies for a 64b RAM, 2.7Ghz, 64 bit machine with a nice graphics card or two. Speaking of which, what video cards do some of you recommend?

The attached rendering is WIP. It has about 7000 vertices and takes over an hour torender on the aforementioned laptop.



Thanx ahead of time for responses:

Dr. C.
Attached Images
File Type: jpg podres1f1.JPG (72.4 KB, 17 views)
 
Old 05-26-2013, 12:50 AM   #2
hvanderwegen
Expert
 
hvanderwegen's Avatar
Herbert van der wegen
 
Join Date: Feb 2003
Posts: 563
Are you certain it is not the video card that is the culprit? Did you turn on VBOs? What video card do you have in your desktop?

Blender only takes up about 150mb of memory. With 100k polygons it's still only 250mb.

Check your memory use with Process Explorer:
http://technet.microsoft.com/en-ca/...s/bb896653.aspx

And 64gb of ram seems a bit over the top. Blender only makes use of 1 video card at a time for opengl. However, you can install an ATI card for best opengl performance, and a nvidia card for Cycles GPU rendering.
 
Old 05-26-2013, 01:21 AM   #3
DrCharbonneau
Time-Space Physicist
 
DrCharbonneau's Avatar
portfolio
Dr. R. D. Charbonneau A.Ph.D.
Astrophysicist
Charbonneau Arts & Research
USA
 
Join Date: May 2013
Posts: 86
It's quite possible. I only have the on board video chip, still it's NVidia, if I recall correctly. Dual core Celeron CPU.

I have the OS's performance app on the desktop and it is using the CPU quite intensively when the vertices are up there. I will double check the system nonetheless. You are not the first to mention the video card. It may relate back to it being only a chip instead of a card with video RAM. What is your opinion about USB video cards?

As for 64Gb RAM, I'm eventually planning to do CG rendered illustrations for a sci-fi novel I've been writing that needs an army in a forest setting. Even with a lot of background images taking up the deeper scenes, I'm anticipating some of the scenes will have close to half a billion verts. The two card system will be for two monitors.
 
Old 05-26-2013, 01:17 PM   #4
DrCharbonneau
Time-Space Physicist
 
DrCharbonneau's Avatar
portfolio
Dr. R. D. Charbonneau A.Ph.D.
Astrophysicist
Charbonneau Arts & Research
USA
 
Join Date: May 2013
Posts: 86
(Hoping this is acceptable to post)

This I just rendered on the laptop. The file is around 80000 vertices. Naturally, using strand rendering. It is also using Blender render. When looking at the memory data, it appears to use around 90Mb of RAM, but while rendering the CPU is at 100%.

I've only been using Blender for a month or so. I know I have a LOT more to learn.
Attached Images
File Type: jpg bailey1a.JPG (45.6 KB, 15 views)
 
Old 05-26-2013, 11:36 PM   #5
hvanderwegen
Expert
 
hvanderwegen's Avatar
Herbert van der wegen
 
Join Date: Feb 2003
Posts: 563
One thing to keep in mind is that Nvidia's more current video cards do not hardware accelerate double-sided polygons, and you should turn this option off for all your meshes in the viewport.

Check this thread for more information:
http://www.blenderartists.org/forum...ything+viewport

Also, your approximation for half a billion vertices for illustrative renders seems quite off. For example, instancing should be used for a large forest or army, and/or billboards could be used for tress in the far background.

See this example for instancing:
http://blenderartists.org/forum/sho...-number-anymore

There are 19 billion polygons in this scene, but only approx. 350 million are actually held during render time and the viewport.

Another trick is to render out several layers, and composite those in the compositor for much reduced render times, more flexibility, and so on.

Aside from all this, your dual core Celeron is one of the slowest CPUs on the market today. For semi-heavy duty 3d work a desktop is always preferable over a laptop, but if the hardware is not up to the task nothing can be done, really. On-board Nvida graphic chips on a Celeron main board are... to put it bluntly: utterly ill-suited for 3d content generation.

And a USB video card: generally not a good idea - those use a compressed copy of the image which is sent through the usb cable. Horridly slow, and only usable for browsing. Not for running a 3d viewport ;-)

Another option available with a desktop would be GPU rendering in Cycles: it speeds up rendering tremendously. I purchased an older Nvidia GTX 590 with a mere 1.5GB per GPU (a 590 is a single GPU card with dual GTX580 GPUs), and although I have to pay attention to memory usage, the performance is stunning. Scenes that would ordinarily render for hours on my i7 920@3.6ghz (still quite quick CPU) now render up to 10 times faster: minutes rather than hours. An Nvidia Titan with 6GB of video ram would be able to render most scenes without a hitch at slightly slower render times.

AMD graphic cards (I have a 7970) work faster in Blender's OpenGL viewport, while only Nvidia video cards with CUDA v2.0 support support GPU accelerated Cycles rendering. I use the 7970 to run my screens, and the 590 for GPU rendering. Even if the overall scene does not fit in the GPU's memory, I use it to preview parts quickly and efficiently for texturing and so on, and when I am done render the entire scene on my CPU while I am asleep during the night.
 
Old 05-27-2013, 12:01 AM   #6
DrCharbonneau
Time-Space Physicist
 
DrCharbonneau's Avatar
portfolio
Dr. R. D. Charbonneau A.Ph.D.
Astrophysicist
Charbonneau Arts & Research
USA
 
Join Date: May 2013
Posts: 86
Quote:
Another trick is to render out several layers, and composite those in the compositor for much reduced render times, more flexibility, and so on.



Keeping in mind I'm a newbie to Blender, that possibility, less the compositing, that I haven't even looked at yet, had crossed my mind.

I certainly appreciate the hardware advice. These are questions that seem to baffle some sales techs when asked.

I'll check out those links tomorrow. Thanks. It's time for the 60 year old dude scientist to spend some evening time with his other half and likely fall asleep in the recliner.

For what it's worth, I spent 2 and 1/2 years in Kitzingen, Deutchland and took many of my classes toward my BScME at the Univ. of Wurzburg, that being used as an extension of Univ. of Maryland in those Vietnam Era days...

Also, the reason for this thread was for opinions about memory versus vertices. In another forum, I was harped at about Blender needing to run "vertex lean." It's good to get some different opinions about that.
 
Old 05-28-2013, 12:59 PM   #7
DrCharbonneau
Time-Space Physicist
 
DrCharbonneau's Avatar
portfolio
Dr. R. D. Charbonneau A.Ph.D.
Astrophysicist
Charbonneau Arts & Research
USA
 
Join Date: May 2013
Posts: 86
http://www.tomshardware.com/forum/3...one-build-there

http://communities.intel.com/thread/26787

Here are a couple of discussions concerning the 64Gb RAM concern. The 1st I became involved in and shared the concern and an example of what a scientist might encounter that could need even as much as a Tb RAM.

Is there a limit to how much RAM Blender CAN use? If so, is it possible to overcome such a limit using Python scripting?

Imagine using Blender to depict many layers of galaxies while applying an Einsteinian gravitational lensing effect to accurately bring 15 Billion light years of distance onto a computer monitor screen...
 
Old 05-29-2013, 09:22 PM   #8
hvanderwegen
Expert
 
hvanderwegen's Avatar
Herbert van der wegen
 
Join Date: Feb 2003
Posts: 563
Official specs regarding main boards and memory option should be (sometimes) taken with a grain of salt: for example, my pt6 deluxe v1 main board with an i7920@3.6GHZ runs 48GB of memory - something of a goof-up on my part, since I had purchased 3x8GB modules when I upgraded the memory, and officially only 4GB modules are supposed to be supported. I took a chance, installed those, and it worked to my surprise. Then I decided to go all out, and purchase another set.

So now I am running 48GB on an aging i7 920 board! And still there are people who told me that running that amount of memory on my board would be impossible.

I did a quick test in Blender, and Blender has no issues with scenes over the 32GB limit. I would be surprised if Blender would be unable to go beyond 64GB. Copying all that data to memory does take a while, though.

Another solution would be to invest in a bigger SSD (256GB) and use that for paging memory. For example I installed a Revodrive x2, which gets a throughput of 1.5gb/s for drive speed - very, very fast.

Though I have to say that instancing your geometry can go a long way: I rendered the island scene on my GTX590 at 8k resolution (Cycles GPU), and only about 235MB of memory was used, while it is rendering an awful lot of polygons (in the billions). I rendered that scene in a mere 11 minutes! You can check my result here:
http://blenderartists.org/forum/sho...l=1#post2387039

ps are you planning to use GPU based calculations at all? Not only for rendering, of course.
 
Old 05-30-2013, 12:06 PM   #9
DrCharbonneau
Time-Space Physicist
 
DrCharbonneau's Avatar
portfolio
Dr. R. D. Charbonneau A.Ph.D.
Astrophysicist
Charbonneau Arts & Research
USA
 
Join Date: May 2013
Posts: 86
Something I'm a bit behind in saavy concerning, is SSD's. I can do a search, I imagine.

The impression I got from the sites for which I placed the links, is that the i7 can only handle the 32Gb at a moment while it uses memory beyond that like a cache or perhaps a virtual screen of sorts. Worst case scenario is I'll have an extra 32Gb RAM that I could always use on a second board.

I'm sure that I'll eventually get into using instances. As of now I'm working at perfecting a generic base mesh object for creating trees.
 
Old 05-30-2013, 06:19 PM   #10
hvanderwegen
Expert
 
hvanderwegen's Avatar
Herbert van der wegen
 
Join Date: Feb 2003
Posts: 563
Quote:
Originally Posted by DrCharbonneau

The impression I got from the sites for which I placed the links, is that the i7 can only handle the 32Gb at a moment while it uses memory beyond that like a cache or perhaps a virtual screen of sorts. Worst case scenario is I'll have an extra 32Gb RAM that I could always use on a second board.


If that were true why would Blender on my system be able to address more than 32GB of memory at once in one scene? Does not make sense to me.
 
Old 05-30-2013, 08:26 PM   #11
DrCharbonneau
Time-Space Physicist
 
DrCharbonneau's Avatar
portfolio
Dr. R. D. Charbonneau A.Ph.D.
Astrophysicist
Charbonneau Arts & Research
USA
 
Join Date: May 2013
Posts: 86
It would be using the additional memory as if it were virtual memory, similar to the days when we used to set up a RAM disk in memory we otherwise could not access. Same as the need for a DOS extender, which is what Windows, UNIX and PharLAP used to be, prior to the days of plugnplay.
 
Old 05-31-2013, 06:42 AM   #12
CorsairX
Frequenter
Andrew
Queensland, Australia
 
Join Date: Nov 2006
Posts: 112
Quote:
Originally Posted by hvanderwegen
...
So now I am running 48GB on an aging i7 920 board! And still there are people who told me that running that amount of memory on my board would be impossible.
...
Another solution would be to invest in a bigger SSD (256GB) and use that for paging memory. For example I installed a Revodrive x2, which gets a throughput of 1.5gb/s for drive speed - very, very fast.
...

I'm using a similar vintage board along with an SSD and it certainly helps. However, my SSD is connected by SATA and I take a bit of a hit as a result - in fact, I'd have to check but I think my board is only running SATA 2 which has implications for throughput.

I've been planning an upgrade for a while and I'm currently not sure which way to jump (or rather when, wait for the next gen chip or the gen after?) but one thing I do plan on is a PCIe connected SSD!
 
Old 05-31-2013, 10:28 AM   #13
DrCharbonneau
Time-Space Physicist
 
DrCharbonneau's Avatar
portfolio
Dr. R. D. Charbonneau A.Ph.D.
Astrophysicist
Charbonneau Arts & Research
USA
 
Join Date: May 2013
Posts: 86
SSD's are expensive.
 
Old 05-31-2013, 05:15 PM   #14
okimin
New Member
portfolio
Juan
London, United Kingdom
 
Join Date: Sep 2012
Posts: 17
Yes but people usually use a combination of a ssd for the main OS (minimum 120gb if your using windows) and a spindle drive (1tb or more) for their files.
 
Old 05-31-2013, 07:47 PM   #15
DrCharbonneau
Time-Space Physicist
 
DrCharbonneau's Avatar
portfolio
Dr. R. D. Charbonneau A.Ph.D.
Astrophysicist
Charbonneau Arts & Research
USA
 
Join Date: May 2013
Posts: 86
Quote:
Originally Posted by okimin
Yes but people usually use a combination of a ssd for the main OS (minimum 120gb if your using windows) and a spindle drive (1tb or more) for their files.


Well... as of now I'm the unusual one. That may all change in the not-so-distant future. I'm learning Blender on a far more modest system, but exploring what others are doing for future reference. It's fascinating to see how quickly everything changes if you go on vacation...
 
Thread Closed share thread


Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

vB code is On
Smilies are On
[IMG] code is On
HTML code is Off
CGSociety
Society of Digital Artists
www.cgsociety.org

Powered by vBulletin
Copyright 2000 - 2006,
Jelsoft Enterprises Ltd.
Minimize Ads
Forum Jump
Miscellaneous

All times are GMT. The time now is 12:20 AM.


Powered by vBulletin
Copyright ©2000 - 2016, Jelsoft Enterprises Ltd.