"Render to File" for PC. When?

Started by nem, September 23, 2009, 06:01:28 AM

Previous topic - Next topic

nem

Hi All,

from what I've learned reading a number of posts it seems that the only way to render massive resolution images is to "massively" increase the amount of RAM. This needs in turn to switch to a 64bit system.
As I understood, this limitation (the need of a "super" system) seems not to be present in the Mac version, where the option "Render to File" is available, which saves step by step the render to the hard drive.
When will it be available for the PC version as well, so that massive renders could be obtained without the need to upgrade our system? (of course the render time would be in any case extremely long, but this is a different question...).

Thanks,
Nem


jo

Hi Nem,

Are you talking about TG2 or TG Classic (v0.9)?

Neither the Mac or Windows versions of TG2 have a render to file capability. The Mac version of TG Classic does, but there are no plans to add it to the Windows version.

If I remember rightly, with TG Classic Mac you could use render to file to render images larger than the Windows version could handle, but there wasn't a huge difference. It might have been something like 13000 pixels wide on Windows versus 15000 pixels wide on the Mac. Where render to file particularly helped was on Mac OS 9 which had very limited RAM available to applications. On OS X which has proper virtual memory it doesn't make such a difference.

Regards,

Jo

nem

Hi Jo,

thanks a lot for the clarifications. Yes, I was referring to TG2, and didn't know/remember that the "render to file" option was present just in the "classic" version. So, about PC (and TG2), would it help (in term of avoiding RAM and op.system upgrades) to have a "render to file" feature? Or do we have to rely on plenty of RAM now and forever? :)
Thanks!

Ciao,
Nem

neuspadrin

I think what Jo is saying is the feature was only put in as a fix around the lack of memory in Mac, and the fact it didn't have proper virtual memory.

With new OS supporting proper virtual memory, the work around is basically not needed.

Virtual memory is memory which is really faked, and is your hard drive pretending to be extra RAM.  This memory is slower, but the Operating system treats it like RAM still and gives it to programs.  So basically with low amounts of ram you can try increasing your virtual memory to be a little more helpful.

Problem is you'll still hit problems as there still limits to virtual memory.

So Planetside must've basically hacked together their own version of "virtual memory" just for TG .9 so that Mac could run properly.

Cyber-Angel

The odd thing is that Bryce has a Render To File Option and I think so do a number of other applications (don't quote me on that) its useful for cheeking settings on dense scenes and for large final renders: PC users would use such a feature if it where available, I for one would a useful tool for the tool box IMHO.  ;D

Regards to you.

Cyber-Angel     

cyphyr

Am I missing something here but whats the difference between "Render to File" (which we dont have) and "Sequence Output" (which we do)! How is this not Render to File? Change the extension to exr if you like and set your "sequence first" and "sequence last" to the frame you want to render. How is this not "Render to File"? I believe there is also a command line way of doing the same but you'd have to ask someone who actually knows whats going on ...
:)
Richard
www.richardfraservfx.com
https://www.facebook.com/RichardFraserVFX/
/|\

Ryzen 9 5950X OC@4Ghz, 64Gb (TG4 benchmark 4:13)

neuspadrin

Quote from: cyphyr on September 23, 2009, 02:02:40 PM
Am I missing something here but whats the difference between "Render to File" (which we dont have) and "Sequence Output" (which we do)! How is this not Render to File? Change the extension to exr if you like and set your "sequence first" and "sequence last" to the frame you want to render. How is this not "Render to File"? I believe there is also a command line way of doing the same but you'd have to ask someone who actually knows whats going on ...
:)
Richard

By "render to file", what they are saying is use the harddrive to do the actual render, rather then the RAM.  Not talking about saving the file once a render is done, talking about the massive RAM needed to render it and using the harddrive instead ;)  This causes slower renders, but could technically make a larger render possible without failing as much.

Matt

I can't say when we'll implement this, but we are thinking about a few ways we might make it easier to render very large images without using so much RAM.

Matt
Just because milk is white doesn't mean that clouds are made of milk.

Oshyan

The difference between sequence output, already available in TG2, and Render to File, is that the latter actually writes image data to the large image file on disk as it's rendered (essentially) rather than keeping a large buffer in memory to write it all to, which is what the normal rendering process does. Because of this large buffer needed for normal rendering - which increases in size proportional to the number of pixels in the image (and sometimes other factors like AA) - the standard rendering process is limited in resolution by available memory. Because TG2 is not yet a 64 bit app, this is more of a problem in practice than it needs to be. Once TG2 x64 is available, the low cost of RAM, and increasing availability of 64 bit OSs will make even the current rendering method much more practical for extremely large images. Still, a render to disk option can be helpful, for example if the render crashes it will usually have what has been rendered so far still there. So you could for example simply do a crop render to finish the remainder. As it is now, with the image being kept in memory until complete, if the render crashes, the image in memory disappears without being written to disk.

So yes, it's an option we'd like to add at some point.

- Oshyan

cyphyr

Quote from: cyphyrAm I missing something here...
Yup, got the wrong end of the stick entirely!
Thanks neuspadrin and Oshyan :)
lol
Richard
www.richardfraservfx.com
https://www.facebook.com/RichardFraserVFX/
/|\

Ryzen 9 5950X OC@4Ghz, 64Gb (TG4 benchmark 4:13)

shadowphile

I have my memory maxed for the PC and I still get render errors even on scenes without huge resolution, mostly if I have something like a large lake in the viewport.
I've been using neon22's batch renderer and it is awesome!  Functionally it is a compromise between render to disk and render to RAM, with the user choosing the trade-off by specifying the number of 'tiles'.  The use of an external program to splice the tiles together is an unfortunate requirement for an third-party solution, but could easily be written from scratch inside TG2 if this type of functionality was added natively.
I'm not keen on virtual memory though; render times are already the the most challenging aspect of TG and you can still lose all your work if something crashes.