Home

Topic: Distributed Rendering - Experience From the Trenches

posted by Christopher Grant/ Dave Buchhhofer
archived on 10.12.2004

Technically, DR (distributed rendering) works but there are some things to keep in mind, especially if you are spoiled by backburner...

1. DR currently works only with the beta version of vray. As of today, the current beta is 1.46.08 with the final version being 1.5. Thus, it's getting close to the final rev, but it's not without its faults... The key is to expect problems , small or large, and don't be surprised when something goes wrong - it's BETA.

2. The vray spawner (equivalent to backburner server) must be restarted a lot. A lot. Just do yourself a favor and expect it and you'll be fine.

3. Don't hit cancel. The max pause/cancel buttons that appear after you hit render. Those are mystery buttons. I think they work like this: every other time you click cancel vray (much like max used to do) decides you've spent too much time working on your project and you should take a break, thus quickly crashing max regardless if you saved recently or not.

4. DR is awesome. It's enabled me to render things across several stations that I would have needed an entire weekend to process on one computer.

5. The host computer (the one you're working on) MUST participate in the DR process. So, in the middle of the day when you hit render you have to wait to use your computer until the DR is done. Works great for previews. Great. BUT if you have a hi-res print due at 5pm don't expect to use your computer much while it is rendering. Vray does a great job of using every CPU cycle available, unlike the MAX Scanline renderer, whose inefficiencies make it easy to keep on doing photoshop work / light max stuff even while rendering...

6. Your VRay license is tied up while waiting for DR to finish. Don't expect that you can switch to another workstation and work on your project while a render is going. Not going to happen. Vray uses a network license server, when DR is going, that license is used up. You could buy another license of course though. In which case this problem isn't a problem at all...

7. DR is absolutely unbelievable. I use it every day. When I have to use the scanline and can't use DR, it just seems so wasteful...

8. Don't get any ideas about backburning your DR render so you can work on your workstation... It would be a great idea if it worked. But no. So, I repeat, when you start a DR, your license is tied up. There isn't some slick way to bypass it... You'll have to wait it out.

9. There is no way to change / schedule DR renders. The computers that are available to render when you hit render are the ones that render. They don't automatically join if you start them after the render has started. You can't remove them (although truth be told I never tried manually killing one with task manager because I've never had a project that I could risk it)

10. If you successfully hit cancel and nothing crashes, you must wait for the currently rendering buckets to finish. So, if you set up the render as super duper high quality uber cool, you might wait half an hour or whatever for all the rendering buckets to finish before you cancel. Or, you could kill the process with task manager, restart all your vray spawners / 3dsmax.exe processes on your rendering stations and reload your max file... Unless your farm is huge you can probably do all that before vray would otherwise have finished. It's what I do everyday nearly. Annoying but it's offset by #11.

11. Distributed Rendering, IMHO, is the best thing as a max user that I've ever seen. I know it's not technically "new" as other renderers have had it, but for those of us who waited and waited before selecting a 3rd party renderer, it's absolutely indispensible!

12. In 1.46.08 if the DR servers (Vrayspawners) are currently rendering a job, and you second another job that overlaps / specifies the same render slaves, you crash the first render.. the second sent render finishes, but only using the local processors.. So Be careful !

13. you WILL be restarting the vrayspawners often.. so if you're lazy like me, and dont want to walk over... heres a couple tips on how to do it remotely from your own desk.. (Disclaimer.. some setups or network administrators may have these disabled.. but for the majority of us it will work fine.)

13a. Tools to download: the PSTools utilities by Mark Russinovich, a set of DOS programs to help with administering remote systems..

13b. Stopping the Vrayspawner via a Batchfile.
Putting this in a batch file (A text file with the extension renamed to .bat) will kill the vrayspawner process on the computer rendernode3
pskill \\rendernode3 vrayspawner60


13c. Starting the Vrayspawner via a Batchfile.
this will execute the process vrayspawner on the remote machine rendernode3, let it interact with the desktop (So you can USE it), and detach the process (so you can continue with the rest of your batchfile)
psexec \\rendernode3 -i -d C:\3dsmax7\vrayspawner60.exe


13d. So.. to automate that a little.. assuming you have the hard drive of rendernode3 shared with the name C_Drive.. this would end the process.. clear the network cache, and then restart it...
pskill \\rendernode3 vrayspawner60
del /q \\rendernode3\C_drive\3dsmax7\Network*.*
psexec \\rendernode3 -i -d C:\3dsmax7\vrayspawner60.exe

Follow-ups

v.1.1 20041212
This article will be updated as the forum thread progresses, and as VRay changes.

> print this entry
VRay.info v2.0 | VRay.info is NOT the official VRay site. VRay is property of Chaos Group