Backburner Render Farm

The Backburner Render Farm allows you to render Autodesk 3D Studio Max files on a large pool of high-spec computers. With the rendering divided among many computers, it will complete much faster than rendering on a single computer.

Contents:

Active Jobs:

At: 25/04/2025 7:57:56

Click column headings to sort.
Server GroupOwnerJob NameFramesCompleted
Frames1
Active NodesFailed Nodes21st Frame
Problem3?
No active jobs.

Notes:

  1. Completed Frames: This count comes from looking on your output filestore. When resubmitting a job, this count will be wrong, because we can't tell the difference between frames rendered this time and frames rendered in a previous run. Also, if your job name ends in "000", Backburner names your frames according to a different algorithm, so we can't count you completed frames.
     
  2. Failed Nodes: The server declares a node "failed", i.e. unavailable to your job, when that node has failed to render a frame at least 4 times. If you have a lot of failed nodes, there is a problem with your job. Either every frame is failing, or you have the first frame problem.
     
  3. First Frame Problem: This job shows signs of the first frame problem: the first frame has repeatedly failed to render on multiple nodes, while other frames have completed successfully. If this is combined with a high failed-node count, then it is virtually certain.

 

Getting Started

  1. Request access to the render farm. You only have to do this once.

    When you receive your e-mail, you are set up to use the render farm.

  2. Be aware...

  3. Read the FAQs. They're short.
     
  4. Submit a job.
     

How to Submit a Job

  1. Before you start, find out how long your worst-case frames will take to render. Choose a part of your scene that you expect to take the most time per frame, and begin rendering one frame manually. 3dsmax will soon show you how long it expects that frame to take. Use this information to choose a Server Group.
     

TIP: Test several frames, from different parts of your scene, to find out whether they will take very different amounts of time. If so, consider breaking your scene up into separate jobs submitted to different Server Groups.


  1. Make whatever settings you need for this render. What follows are the additional settings that must be made to perform a network render.
     

INFO: Backburner is very fussy about the 3dsmax version. This year, Backburner expects 3dsmax 2024. If you submit from any other version, the job will never be assigned to any render nodes.


  1. Choose Rendering | Render Setup... (or press F10).
     

  1. Choose a renderer.
     

TIP: Don't choose the Quicksilver renderer. It works interactively, but not in Backburner.


  1. If you are using the ART Renderer, set a time limit appropriate for the Server Group you are going to submit it to. (E.g. for Medium Frames, set a limit of no more than 4 hours.)
  2. Alternatively, set an Iterations limit.

Set maximum rendering time or iterations when using the ART Renderer

INFO: Do this because jobs routinely think they will need hundreds of hours per frame, and hundreds of thousands of iterations.

INFO: You can't set this number as high as you might expect. Some jobs set to 40 never finished.

TIP: Submit with a low number, see how it goes, and only resubmit with a higher number if those frames render very quickly.

TIP: The Long Frames Server Group operates for 15.5 hours on weeknights. When using it, set a time limit of no more than 7h 30m to complete 2 frames on most render nodes in a single night. Otherwise the render nodes will run out of time just before they would have finished a frame.

TIP: Never set a limit higher than 9h 50m. Backburner has a built-in default limit of 10 hours, after which it will abandon the frame anyway.


  1. Tick the Save File box near the top right. If it's already ticked, click the "..." button just to the right of it.
     
Tick Save File

  1. In the "Render Output File" dialog that appears:
     
    1. Choose a file type which will generate one file per frame, e.g. JPEG.
       
    2. For the file name, put:

      \\mfs02\dept02\backburner\output\<your username>\<a file name>.<the single-frame extension you chose>

      ...and click Save.

      Example: \\mfs02\dept02\backburner\output\lnelson\output.jpg

Choose a file type, output path and filename

TIP: Don't choose a file format that produces a single output file for the whole thing, like AVI. If Backburner can't break up the output into individual frames, the whole job will be assigned to a single render node.

TIP: You must use the UNC. The render nodes must be able to understand and access the output location. They will not be logged on as you and will not have your drive letters. If you submit your job using a drive letter, every frame will fail.

TIP: The folder must already exist. Backburner will not create it for you. If the folder doesn't already exist, every frame will fail.


  1. Back in the Render Setup dialog:
     
    1. In the Time Output section, make choices such that you are rendering multiple frames.
       
    2. In the Target drop-down list, select Submit to Network Rendering.
       
Choose multiple frames to render

TIP: Using the Frames radio button, you can submit noncontiguous frames. Useful to resubmit a few frames that failed in a previous render.

TIP: Once you have chosen Submit to Network Rendering, you won't come back to this dialog, so don't do it until you have made all your choices.


  1. In the "Network Job Assignment" dialog:
     
    1. Type a name for this job.

      Examples: scene, scene1, scene2...

    2. Untick Automatic Search
       
    3. Enter Manager Name or IP Address: bb2019.liv.ac.uk
       
    4. Click Connect. If successful, the "All Servers" tab will become populated with render farm nodes.
       
    5. Tick Include Maps. You may have to tick other things as well for your particular job, but this is definitely necessary.
       
    6. In the Server Usage section, select Use Group.
       
    7. In the list box to the right of Use Group, choose a group based on how long your average frame will take to render. For example, if your sample frame said it would take 3 hours, choose Server Group "Medium Frames [10min-4hr]". You must choose a Server Group; if you submit without choosing one, we will warn you and delete your job. See the FAQs about Server Groups.
       
    8. Click Submit.

      Your job is submitted to the render farm. It will begin rendering according to its position in the queue and which Server Group you submitted to.

Submit job to Backburner

INFO: You can't use the same name as a job already in the queue.

INFO: Use only alphanumeric characters in the job name.

TIP: If parts of your scene will take very different times to render, break your scene up into multiple jobs and submit them to different Server Groups.

INFO: If there are no jobs in Long Frames just before 17:00, we may move jobs from Medium Frames to get maximum throughput.


  1. Wait for your acknowledgment e-mail before logging off. It will be sent within about 5 minutes. It may include warnings about the job you have just submitted. If you walk away you will miss the opportunity to correct problems and resubmit your job immediately.
     

  1. Wait for your output. When it arrives, reassemble your rendered frames.
     

TIP: You can use Monitor to observe your job's progress.


How to Reassemble Your Rendered Frames

This is clunky, but it gets there.

  1. Create an IFL file:
    1. In 3dsmax, in the Command Panel (an area of icons near the top right), click the Utilities tool icon. This opens the Utilities Panel directly below:
    2. Utilities Panel

    3. In the Utilities Panel, click More...
       
    4. In the list of utilities that appears, select IFL Manager. The Manager then appears in the bottom right corner of the 3dsmax window.
       
    5. In the IFL Manager, click the Select button. Navigate to your Backburner output directory.
       
    6. Select any of the rendered files and click Open. This will set your "prefix" (e.g. if your rendered files are called output0000.jpg etc., the prefix is "output"). Don't make any other changes in this dialog -- particularly don't choose a file type! -- or the dialog will go stupid.
       
    7. Click Create. In the file dialog that displays, supply a name for the IFL file that will be created.
       
  2. Use Video Post and your IFL file to create an animation:
  3. Any of the dialogs in this sequence may require additional modifications for your particular job.

    1. In 3dsmax, choose Rendering | Video Post
       
    2. Click Add Image Input Event (Add Image Input Event).
       
    3. Choose the IFL file you just created and click Open, then OK.
       
    4. Now click Add Image Output Event (Add Image Output Event).
       
    5. Enter a filename and set the output format. Then click Save.
       
    6. Select a codec, adjust other settings as necessary, and click OK. The settings you see in this dialog will depend on your input and output formats. Watch out for things like quality settings of 0 and be sure to adjust.
       
    7. This is what the window looks like when you have successfully added Input and Output events:
    8. Input and output events added

    9. Now click Execute Sequence (Execute Sequence), then Render. If all has been set up correctly, this will save your animated output file.

    This describes only the basics to reassemble your frames. You can do lots more in Video Post.


FAQs

Q: Which "Server Group" should I submit my job to?
A: This is how the groups compare. Choose a group based on how long your frames will take to render. Render one frame interactively, from the most complex part of your scene, to find out how long your frames take, worst-case.

Server Group Hours Purpose Additional Information Nodes Spec
Short Frames [under 10min]24 hrs Allows fast-frame jobs to be processed quickly, without getting stuck behind slow jobs. Uses brief windows when nodes don't have a user logged on, so expect frames to be abandoned and started over frequently.
 
Will also use idle nodes from the Medium and Long groups.
 
245+At least:
Core i7-7770
3.6 GHz
16 GB RAM
Medium Frames [10min-4hr]Weekdays: ~22:00-08:30
Weekends: all day
Ensures that jobs with moderately long frame times are run only on nodes that have a long uninterrupted weeknight render time. In-progress frames will continue to render after 08:30, on nodes where nobody is logged on. If a user logs on, that node will abandon the frame. Abandoned frames will start over when the Server Group's hours resume.
 
412At least:
Core i7-6700
3.4 GHz
16 GB RAM
Long Frames [over 4hr]Weekdays: 17:00-08:30
Weekends: all day
Ensures that jobs with very long frame times are run only on the nodes that have the longest uninterrupted weeknight render time. In-progress frames will continue to render after 08:30, on nodes where nobody is logged on. If a user logs on, that node will abandon the frame. Abandoned frames will start over when the Server Group's hours resume.
 
This is the only group that can render frames of the Backburner-default maximum render time, 10 hours.
239Core i7-6700
3.4 GHz
16 GB RAM

Q: What if I submit my job to the wrong Server Group?
A: If we think your job would be significantly better suited to a different group, we will reassign it. Frames in progress will be abandoned and started over. (We understand that frames in the same job may take very different amounts of time to render. We won't do it lightly.)

Q: What if I submit my job without using any Server Group at all?
A: We will be automatically notified of this. We will delete the job and ask you to resubmit it to the appropriate group.

You don't want to do this anyway. You might think that submitting without choosing a group would allow you to use the entire render farm, but that's wrong. We limit all jobs to 150 nodes anyway (see below), which is fewer nodes than any of the Server Groups contains. Also, each Server Group prioritises its own jobs, so jobs submitted with no Server Group will be lower priority than all other jobs.

Q: How many nodes will process my job?
A: To allow everyone to get some use of the render farm during busy times, we limit all jobs to 150 nodes each. If you break up your render into multiple jobs, and those jobs are monopolising the render farm, we will suspend all but the first job until other people have also had a chance.

Q: What controls how long a frame takes to render?
A: Output type and size appear to have little effect. It appears to be mostly governed by your "quality" settings. (For example, for the ART renderer, this is called "Render Quality". Render times get long surprisingly quickly: if you choose "High" and set a maximum render time of 4 hours, frames will use all of that time without reaching the "target quality".)

Q: How long will it take to process my job?
A: Do the math: (your expected average frame time) * (number of frames). Divide this by your maximum of 150 nodes for your job. It will take longer than this, because you won't always get 150 nodes, and some frames will fail and retry. You should also expect there to be other jobs -- possibly lots -- in the queue ahead of you.

When doing the math, notice whether you are expecting something impossible. If you have a 1500-frame job where every frame is going to take 6 hours, that's an absolute minimum of 60 hours of rendering time, using 150 nodes of capacity the whole time. If 50 other people have put similar jobs in the queue, and you all have a deadline on Monday, that's not going to work.

Q: When can I submit jobs?
A: Anytime. If you submit outside your Server Group's hours of operation, your job will remain "Waiting" until your Server Group's starting time, at which point the job will start by itself. If the nodes are powersaved, within a few minutes the render farm will notice and begin waking them up. It'll take at least 5 minutes for nodes to start up.

Q: May I increase my job's priority, or tick Critical?
A: No. Don't. Changing priority to move yourself up the queue will be treated as queue-jumping and will, on second offence, result in you losing access to the render farm.

Submitting a job with a higher priority causes all frames in progress on currently-running jobs to be abandoned, to free up the nodes to work on the higher-priority job. This is extremely wasteful of render farm time and unfair to other users.

We will delete the job, as there is no way to fix the problem without causing further disruption.

If all jobs are submitted with the same priority, the queue is first-come first-served. If we allowed priority changes, pretty soon everyone would do it, and all jobs would be submitted with the highest possible priority -- at which point they would all be equal, and be handled first-come first-served anyway. So the only thing achieved by changing priority is a lot of wasted effort and angry users.

Q: May I take queue control in Monitor?
A: No. Don't. This will be treated as misconduct and will probably result in you losing access to the render farm. Be aware that we can tell, from the server logs, when this has been done.

There is one circumstance in which you may take control of the queue, and that is to suspend or delete your own job, if, for example, you have realized that you have submitted it without selecting a Server Group. Having done that, you must immediately close Monitor so that I can take back control of the queue.

Q: Can I direct my output somewhere else?
A: No. The render farm doesn't have permissions anywhere else. 3dsmax won't prevent you from specifying a different location, but the render farm will be unable to access it. Every frame will fail.

Q: My job has thousands of frames; is there anything special I should do?
A: Not really. Be aware of other people's deadlines, though; assume that the render farm may be in heavy use and you may not get as much rendering time as you want.

Q: My job's frames will each take hours to render; is there anything special I should do?
A: Assign your job to the "Long Frames [over 4hr]" Server Group. Submit the job on Friday, so it has the whole weekend uninterrupted. Note that there is a 3dsmax-default 10-hour time limit on individual frames, after which they will be abandoned. The time limit can be increased, but we don't recommend it; you're unlikely to get more than 10 uninterrupted hours successfully on render nodes anyway. Instead, find ways to reduce the per-frame render time. Contact me in advance to discuss options if you have a particularly high-requirements job.

Q: How big does a job have to be, to be eligible for the render farm?
A: It can be tiny! Even a single-frame job is fine.

Q: Why are some computers with low-end graphics cards members of the render farm?
A: It turns out that most renderers don't use the graphics card at all, only the CPU. A good graphics card doesn't help.

Q: What happens to my job after it's completed?
A: After a few days, we will delete it from the queue to keep things tidy. (Note that jobs will be deleted sooner at busy times.) If you want to keep a record, in Monitor, select your job, then choose Job | Report. This would be useful if, for example, you want to be able to look up later how long each frame took to render, or which node rendered a frame.

Q: How long will my Backburner output folder exist?
A: We will delete all Backburner output folders at the end of each academic year. Be sure to copy off any materials you want to keep beyond the end of the year.

Q: Why does the Backburner user have "read-only" permissions on my M: drive?
A: When you submit a job to Backburner, all the external files it will need are bundled up and submitted to the server along with the .max file itself, because of course the Backburner user doesn't have access to the various places you may have stored files. This means that unless you make a mistake like setting your output path to a location on your M: drive, Backburner rendering should be entirely independent of the user who submitted the job.

We believe that 3dsmax 2019 has a bug that 2018 didn't. Even though all the files it needs are supplied to each render node, it looks for them wherever they were originally anyway. This "looking for" is really intense: each render node tries about 1500 times per second. Basically it looks for a file, can't even find the path, doesn't take no for an answer, and tries again. For some jobs, this "looking for" continues throughout the rendering of every single frame. For others, it lasts only a couple of minutes at the beginning of each frame. This activity is intense enough to make the server become unavailable to users.

We can't prevent 3dsmax from trying to perform these reads. We therefore have no choice but to grant the Backburner user read-only permissions to the most likely places it will try to look. You can see these permissions using MyDrives (shortcut on your desktop), if you like; run MyDrives, then click Manage Rights.

We are granting the Backburner user read-only permissions in two places on your M: drive:

Depending on your personal work habits, it may require access elsewhere on your M: drive. We don't want to give it read-only access to your entire M: drive, so instead, we are giving it permission to see all folders on your M: drive. This is the folders only, not files. You'll see this permission on the root of your M: drive. It looks like normal read-only permissions, but that's because MyDrives isn't expecting the extremely limited form of permissions I've granted. In MyDrives, if you tick the box "Show advanced options" and then "Show more detail", you'll get extra columns, confirming that these "read-only" permissions are limited to "This folder and subfolders", whereas other normal permissions are granted to "This folder, subfolders and files". This unusual permission will not allow your Backburner job to complete -- the Backburner user will get "access denied" errors if it needs files from locations other than the desktop or My Documents -- but it is sufficient to prevent Backburner from hammering the server trying to access them.

MyDrives, showing folder-only permissions on the root of the M: drive


Advanced Topics

How to Monitor the Status of Your Job

  1. From any computer where 3D Studio Max is installed, run the Backburner Monitor:
     
    Start Menu | Programs | Autodesk Backburner 2019 | Monitor
     
  2. Choose Manager | Connect (or press Ctrl+O)
     
  3. Enter manager name or IP address: bb2019.liv.ac.uk
     
  4. Click OK. The Monitor connects to the Backburner Manager.
     
  5. Find your job in the job list (in the top left pane of Monitor) and click on it.
     
  6. Monitor, showing list of current jobs, with one job selected

  7. The top right pane of Monitor now shows all information about your job. The Task Summary tab is useful if you want to watch your job being processed by the nodes. You can see each frame being assigned, worked on, and completed. Click on the Task Summary tab:
  8. Task summary for the selected job

    Here you see the the first 21 frames of the job. In the other columns:

You can also use Monitor to see other things, like how many other jobs are in your Server Group's queue, how big they are, and how many render nodes are up.

Be aware that Monitor is flaky and hangs easily. It's more likely to hang when:

When Monitor hangs, all you can do is close and reopen it.


How to Map a Drive to the Backburner Output Filestore

You can use MyDrives to map a drive letter to the Backburner output filestore, but only for your convenience in collecting your output. Do not use that drive letter when submitting a job. If you do, the job will fail.

  1. Run MyDrives. (There is a shortcut on the desktop.)
  2. Click Add.
  3. Click Save, then confirm.
  4. Click Exit.

You now have the Backburner output filestore on P:. You can open this drive letter in Windows Explorer like any other drive letter, to collect your output.


The Backburner Logs

Each render node produces logs. Backburner produces a log, as does 3dsmax. We upload these logs every 5 minutes to a folder on the network for easy access for troubleshooting.

Log Extracts

Backburner/3dsmax logs are so full of information that sometimes it's unhelpful. We provide a summarized version, containing only the log lines from today that we think are most likely to be informative, so that you can see just those lines, all at once. These extracts are generated on a server, every two hours, so be aware that they will be out of date. On busy days, it takes more than an hour to generate the extracts!

To open the log extracts:

In each file, the entries are sorted by computer, then time. Each line has a prefix showing the computer name and the time. For example, the following line comes from render node CT6P-001, and the entry was made at 10:36:20 on 11/04/18:

  CT6P-001-Max.log:2018/04/11 10:36:20 INF: [07408] [10588] Done loading file: C:\Users\backburner\AppData\Local\backburner\ServerJob\blinz2.max

A few examples:

Log Extracts for Other Days

The log extracts will only show you log entries from today. But the log extracts from previous days are stored indefinitely, here: \\mfs02\dept02\backburner\logs\extracts

Full Logs

If you want more than just the extracts, you can see the raw log files. Open \\mfs02\dept02\backburner\logs\nodes. Here we upload the local logs from Backburner and from 3dsmax for each render farm node:


Common Failures:


Troubleshooting

Some things to consider before you get into detailed troubleshooting:

Preparing to Troubleshoot

Failed Frames

Here we are interested in the frames that Monitor shows as "Failed".

First, look at the pattern of Failed frames and consider, with your knowledge of your scene, whether the failed frames had anything in common, especially any way in which they differ from the frames that succeeded. If, for example, all your early frames fail, but your later frames succeed, what objects are in the early frames but not the later frames?

If not -- if you have frame failures all over the place -- you can try looking at the logs to see what happened when those particular frames were rendered. You might get helpful items like this:

  2018/03/31 00:38:04 ERR: [00664] [00792] Object (UVW 1): Sphere481 requires texture coordinates and may not render correctly

Well, you might.

Troubleshooting a Single Failed Frame

Here is a Task Summary in Monitor, showing some Failed frames:

Task summary showing Failed frames

Let's troubleshoot Frame 5. In the "Server" column, you can see that Frame 5 was assigned to server CT6P-001. This is the name of the computer that processed, and failed, the frame. You can also see that it was assigned on 11/04/2018 at 10:35:46. You'll need both these pieces of information.

I look first in date_servergroup_Backburner.log. I search for CT6P-001, and, having found its lines, look for times around 10:35. I get this:

  CT6P-001-backburnerServer.log:2018/04/11 10:35:48 INF Job 'blinz2' received and ready
CT6P-001-backburnerServer.log:2018/04/11 10:36:21 INF New task assigned: 5
CT6P-001-backburnerServer.log:2018/04/11 10:36:41 ERR Task error: 3dsmax adapter error : Autodesk 3dsMax 19.0 reported error: An unexpected exception has occurred in the network renderer and it is terminating.
CT6P-001-backburnerServer.log:2018/04/11 10:36:41 ERR 3dsmax adapter error : Autodesk 3dsMax 19.0 reported error: An unexpected exception has occurred in the network renderer and it is terminating.
CT6P-001-backburnerServer.log:2018/04/11 10:36:42 ERR Unknown Error

Notice that, after the date and time, most log items are marked as e.g. INF or ERR. You are probably interested in any that have ERR. In this case, our ERR is reported by 3dsmax and it is that "An unexpected exception has occurred". Well, that's just Windows-speak for "I crashed".

So now I look in date_servergroup_Max.log to try to find more useful information. I search for CT6P-001, and look at what happened around 10:36:41. I find this:

  CT6P-001-Max.log:2018/04/11 10:36:17 WRN: [07408] [10588] MAXScript Callback script Exception: -- Runtime error: No method found which matched argument list
CT6P-001-Max.log:2018/04/11 10:36:20 INF: [07408] [10588] Done loading file: C:\Users\backburner\AppData\Local\backburner\ServerJob\blinz2.max
CT6P-001-Max.log:2018/04/11 10:36:22 INF: [07408] [10588] Frame 5 assigned
CT6P-001-Max.log:2018/04/11 10:36:30 WRN: [07408] [10588] MAXScript Rollout Handler Exception: -- Known system exception -- ######################################################################## -- Address: 0x1d5aa32; nCode: 0x00000000C0000005 -- Desc: EXCEPTION_ACCESS_VIOLATION The thread tried to read from or write to a virtual address for which it does not have the appropriate access. -- Read of Address: 0x0000000000000000 -- ########################################################################
CT6P-001-Max.log:2018/04/11 10:36:30 ERR: [07408] [10588] An unexpected exception has occurred in the network renderer and it is terminating.

Again, we are looking for lines with ERR and their vicinity. Our last two lines are again about a crash. You could, at this point, Google something like "3dsmax exception_access_violation thread tried to read virtual address appropriate access". Unfortunately, you'll find plenty of people getting this message but no single solution (or rather, many suggestions, but all of them very situation-specific). This again appears to be a generic "I died". My best guess for this problem is that it means that your frame had something in it that 3dsmax really didn't like, to the point where it crashed on startup (these errors always happen within a few seconds of the frame being assigned). Unfortunately I see a lot of frames fail with this error; I think it's probably an example of network rendering being more fragile than local, interactive rendering. You may not be able to get to the bottom of a problem like this.