Feature Request - check point, restore concept

Started by pfrancke, May 10, 2008, 07:11:47 pm

Previous topic - Next topic

pfrancke

Sorry if this has been mentioned elsewhere...  Using multiple cores is more invasive (when doing long renders).  One can hit pause, but I'm assuming that memory has still been chewed up and is sitting around in an awkward hard to use state (certainly not a state that would survive a boot).  Once in a while if doing a long render, it would be wonderful if there was a way of saving the state of all memory and have a point of recovery.  I appreciate very much having renders go "twice" as fast, but the sacrifice made is a greater commitment to the computer. 

But even better, imagine if the existing multi-core concept was driven forward with the idea of restore points and (if possible) a continuation of the divide and conquer point of view including a put humpty-dumpty back together again function, then it also might be possible to use a render-farm approach that would/could allow hundreds of PCs to attack a given render. 

Imagine the satisfaction of contributing to a massive render that was proto-typed by a Terragen grand-master.

Oshyan

This has actually been requested several times, but unfortunately it's much more complicated to implement than you might think. It's not something we will be able to do any time soon.

- Oshyan

pfrancke

Good gosh but that was a fast response... <grin>  Yeah I imagine a 3D world is impacted by things far as well as near, so the math of it must be miserable if not impossible.  But as a new feature, if it were ever possible, it would massively improve TG output and create much community interest.  I figured the multi-core step was a step in the right direction for sure.  I'm just thinking of the beautiful renders that could be produced, but there would always be brick walls and trouble in the way, like the size of the images...

Oh well.  <grin>  I didn't think it was an original thought.

pfrancke

Let me ask this...   How well does the crop feature work, from an image integrity point of view?

If that area was refined to be a "please do blocks 6,7,8 of the 128 blocks that need doing" and all values were the same, would the image stitch back together properly?   Would it if you had "overlay" areas? 

I'm guessing the problems come in when looking at "limited" worlds?  meaning that what is happening in block 9 might impact block 8?

Oshyan

Cropping works fairly well, and we have improved GI accuracy across render/crop boundaries over time, but there are still situations that will cause problems with what you're suggesting.

One possible way to reduce resource usage mid-render that might be easier to implement in the nearer future would be to simply dynamically select the number of cores to be used. It would probably not be an immediate effect, but it could release the memory and CPU resources for a certain number of threads after they were completed. So for example if you were rendering with 4 cores you could choose to go down to 2, and after the most complete current render tiles completed they would stop taking additional render tiles, and only the other two would continue calculating.

- Oshyan

Moose

Quote from: Oshyan on May 10, 2008, 07:15:19 pm
This has actually been requested several times, but unfortunately it's much more complicated to implement than you might think. It's not something we will be able to do any time soon.



Perhaps you wont have to either? The newly discovered memristor looks promising:

QuoteToday, most PCs use dynamic random access memory (DRAM) which loses data when the power is turned off.

But a computer built with memristors could allow PCs that start up instantly, laptops that retain sessions after the battery dies, or mobile phones that can last for weeks without needing a charge.

"If you turn on your computer it will come up instantly where it was when you turned it off," Professor Williams told Reuters.


http://news.bbc.co.uk/1/hi/technology/7377063.stm