PDA

View Full Version : Finding which Render a job was sent to


EverZen
05-01-2008, 12:38 PM
Hi all,

The company I work for has 50 odd renderers, and I have been ask to try to write a script that submits jobs automatically from a UI. This has worked out well, but now I need track which renderers the job has been distributed to! Is this possible? If I know the renderer name, then I can use a bit of Dot Net to automatically VNC/remote Desktop onto it, so the artist can see the progress of the render.

I have the job stored in a variable, and I was looking at the maxscript help. Even when the job is active if I use the

<job>.numServers

command it always returns 0. And:

<job>.GetServerInfo <integer>

requires an integer, which doesnt make such sense to me since it is returning 0 servers!

If there a simple way to get the name of the renderer that the job has been sent to. So the name of the computer out of the 50 renderers that is actually rendering the job?

I have very little experience with the rendering side of maxscript, so any help would be really appreciated!

Cheers guys,

Rich

Gravey
05-01-2008, 12:58 PM
try getting all #busy servers and loop through and check <server>.jobHandle against your job's <job>.handle property

Kramsurfer
05-01-2008, 05:48 PM
What Version of Max and BB?

Below is just some lines I typed in the listener.. and the responses.. I already had a connected BB manager in FSM_Connected_Manager.

You need to dig down to the task and see what server rendered it...


tnServers = FSM_Connected_Manager.getservers()
#(<MixinInterface:NetServer>, ...)
tnServers[1].name
"adrianacd28"
tnServers[1].handle
"00121759C0AC"
tnJobs = FSM_Connected_Manager.getjobs()
#(<MixinInterface:NetJob>, <MixinInterface:NetJob>, , ...)
tnJobs.count
52
tnJobs[1].name
"08012-AN-SITE_PARK-34-FOUNTAINS^50s"
tnJobs[1].state
#complete
tnTask = tnJobs[1].GetFrameInfo 1
<MixinInterface:NetFrameInfo>
tnTask.servername
"farmd420018"
tnTask.serverHandle
"0015F25A0FAF"


FYI: BackBurner is getting less and less usable. AD isn't really supporting it either. In Max9 to bb2007 the entire "groups" interface doesn't work. if you've 50 boxes, you may want to look at a 3rd party render management like Deadline. It seems pricey at the outset, maybe about $10k, but think about how long it will take you to code anything close to it and it's a deal...

EverZen
05-02-2008, 08:24 AM
Gravey:

Thats a top answer, works like a dream, and allows me to dig out the required servers really nicely. Big thumbs up :)

KramSurfer:

Thanks for your comments, definitely helped me plan to get to the solution. But your comments about the lack of bb compatibility were even more interesting. Currently my render program is used for fast test renders. It just rams in some quick settings and fires it off of to the renderfarm, and then you can click a button to view the result as soon as it is finished. For all our serious renders we set them up with RPManager and then send them through backburner.

We looked into deadline (and yeah quite expensive!), but for animations it looked great. But we produce very high res still images too. It appeared that to strip render a very large image Deadline would splt it up into multiple jobs, so instead of one job appearing it appears as about 20! We could be running 5 large stills at a time, so that is 100 jobs appearing, making it impossible to manage anything! If I am miss understanding Deadline, or if they are planning to update this feature with a solution then I would be most interested!

There is an alternative called Royal Render. This is cheaper and looks like it handles large still images in a practical way. It supports RPManager, but RPManager says it wont offer support to help with working with Royal Render! Making it all a little tricky.

If you (or anyone) has any suggestions/ words of wisdom, then I am all ears, since we are well aware that the time that could be saved would be vast if one of these systems is installed properly.

Thanks for your time!

Rich

LoneRobot
05-02-2008, 09:06 AM
FYI: BackBurner is getting less and less usable. AD isn't really supporting it either. In Max9 to bb2007 the entire "groups" interface doesn't work. if you've 50 boxes, you may want to look at a 3rd party render management like Deadline. It seems pricey at the outset, maybe about $10k, but think about how long it will take you to code anything close to it and it's a deal...

I found this when i tried to write a 'compact' queue manager. Changing the framerange on a submitted job always appended the new range of frames onto the original ones.

Kramsurfer
05-05-2008, 04:01 PM
Thanks for that info about the large stills rendering in Deadline, never tried that... We do primary Animations, and occassionally a huge still the client selects from the animation, which was built with JUST enough detail for the animation resolution.. ha ha..
We also use V-ray which has it's own DR, which we've used a few times for really big stills. Definitely better than the strips thing, but a hassle to setup and very little feedback while underway...
I've written an entire solution here at focus360, named Scene Pimp, that also handles all the V-ray Imaps/Light cache plus automatic file pathing based on project, time logging, estimation.. ect, from BB's info... but I've found the weakest link is BB. For completed jobs I don't even "connect" to the manager, I'll read the XML's from the job folder and parse those... One less connection to the manager in our situation can mean life or death... and as with all firms where the boss doesn't use the software anymore, so it's been pulling teeth to get a new solution... We lost 7 hours this weekend, it seems to crash most when you set the alarm in the building.. ;-)
And I'll look at this "Royal Render" you speak of... Okay, just did.. The submittal dialog on the 3dsmax "plug-in" is one button... I'm guessing you would have adjust each job in the queue control app..

CGTalk Moderation
05-05-2008, 04:01 PM
This thread has been automatically closed as it remained inactive for 12 months. If you wish to continue the discussion, please create a new thread in the appropriate forum.