Distributed Bucket Rendering Rollout (mental ray Renderer)

Controls on this rollout are for setting up and managed distributed bucket rendering. With distributed rendering, multiple networked systems can work on a mental ray rendering. Buckets are assigned to systems as they become available.

While distributed bucket rendering can be used for offline rendering of animation frames, as in standard network rendering, it's best suited for speeding up the rendering of single images as you work. Especially when rendering high-resolution still images, you can get much faster results with distributed bucket rendering.

Tip: When you use distributed bucket rendering, be sure to:
Note: Contour shading does not work with distributed bucket rendering.
Attention: To use distributed bucket rendering, you must set up host systems that are capable of running the mental ray renderer. There are two ways to do so: Set up satellite systems, or install mental ray standalone licensing on remote hosts.

Satellite Systems

“Satellite” processors allow any owner of a 3ds Max license to freely use up to four slave machines (with an unlimited number of processing threads) to render an image using distributed bucket rendering, not counting the one, two, or four processors on the “master” system that runs 3ds Max.

Each satellite system must have the following files installed:

where <X> is the current 3ds Max version number.

You can use the 3ds Max installation program to install these files: see the Installation Guide for more information.

You can find these files in this folder: /Program Files/Autodesk/3ds Max <X>/NVIDIA/Satellite.

In addition, information about each satellite should be stored in the RAYHOSTS file. You can set up satellite systems by using the Add button on the Distributed Bucket Rendering rollout, as described in the “Interface” section, below.

Host Systems with mental ray Standalone Installations

When you use mental ray standalone systems, remote hosts (that is, all systems other than the one running 3ds Max) must have the mental ray renderer (ray.exe). To obtain this, you must run the mental ray installer on all remote hosts. Instructions about how to do so are provided with the mental ray renderer sold by NVIDIA.

Once the remote hosts have been configured to run a licensed instance of ray.exe, you can use them for distributed rendering simply by naming them in the RAYHOSTS file. You can add hosts to the RAYHOSTS file using the Add button described in the “Interface” section, below, just as you would add a satellite processor.

Batch Rendering (Using Backburner or the Command Line)

You can launch distributed bucket rendering from the command line, using 3dsmaxcmd.exe.

If you use satellite processors, you cannot use Backburner to manage distributed bucket rendering. When host processors have standalone mental ray installations, you can use Backburner to manage distributed bucket rendering.

You can use the environment variable MRMAX_OFFLINE_DBR_OVERRIDE to control whether batch rendering uses distributed bucket rendering. The state of this variable overrides the “DBR enable” flag. If it is set to “yes,” “true,” or “on,” distributed bucket rendering is enabled; if it is set to “no,” “false,” or “off,” distributed bucket rendering is disabled. All other values of this variable are ignored.

Procedures

To use mental ray distributed rendering:

  1. On the Render Setup dialog, go to the Processing panel. On the Distributed Bucket Rendering rollout, turn on Distributed Render.
    Note: The Submit To Network Rendering command on the Render button drop-down menu has no effect on distributed bucket rendering.
  2. Click to select the names of those satellite or host systems you want to use for distributed rendering.

    You can click All to select all the host names in the list, or None to select none of the hosts.

  3. If other host systems have maps installed on them, with exactly the same file names and path names as on your local host, turn on Distributed Maps.

    With Distributed Maps turned on, remote renderers can use their local copy of maps, which saves time.

  4. Render the scene.

    Each system renders the buckets assigned to it. The final rendering appears on your local system, with buckets “arriving” in an indeterminate order.

Example: To use mental ray distributed bucket rendering with Backburner:

    This procedure demonstrates how to multiply the number of CPUs used for rendering without having to purchase mental ray standalone licenses, using the 3ds Max satellite technology.

    If you have a few machines with 3ds Max licensed, and many machines without, you can use both the distributed rendering technology and Backburner so a rendering job would use 4 systems per Backburner server, thereby increasing the rendering speed.

    For the purpose of this procedure, we're using a render farm comprising three machines named A, B, and C, each running a licensed copy of 3ds Max.

    Note: The number of machines you can use depends on the number of machines running licensed copies of 3ds Max. You can use up to four external (or satellite) machines per licensed copy of 3ds Max.
  1. Choose which machines (other than machines A, B, and C) will serve as satellites, install 3ds Max on each, and write down each machine's IP address.
  2. Use the Windows Notepad program or a text editor to open the max.rayhosts file on machine A, located in the /NVIDIA subfolder within the 3ds Max folder.
  3. In the max.rayhosts file, under the “localhost” entry enter the IP address of each satellite machine to be used; up to four in all.

    Example of a rayhost file

  4. Repeat the previous step on machines B and C with the remaining IP addresses.
  5. Launch Backburner Manager on the machine submitting the job or any other machine. Launch the Backburner Server on machines A, B, and C.
    Warning: It is necessary for the machine running the Backburner Server to have 3ds Max licensed. A mental ray standalone license will not enable you to use the distributed bucket rendering feature, and Backburner will prompt you with a license error.
  6. On the machine submitting the job choose mental ray as the renderer. On the Processing panel Translator Options rollout, turn on Use Placeholder Objects and Use mental ray Map Manager.

    Translator Options

    On the Processing panel Distributed Bucket Rendering rollout, turn on Distributed Render.

    Distributed Bucket Rendering

  7. Submit the job to the Backburner network rendering farm.

    The job is submitted to the network rendering farm and is picked up by machines A, B, and C. Each machine uses its internal CPU as well as its satellite CPUs to render the job.

Interface

Distributed Render

When on, the mental ray renderer can use multiple satellite or host systems for distributed rendering. The list specifies which systems to use. Default=off.

Note: The Submit To Network Rendering command on the Render button drop-down menu has no effect on distributed bucket rendering.

The other distributed rendering controls are unavailable unless Distributed Render is on.

Distributed Maps

When on, specifies that all texture maps can be found on each of the slave machines doing distributed rendering. This saves time by avoiding the necessity of mental ray distributing all the maps to each slave via TCP/IP. When off, specifies that all maps used in rendering reside on the local system; that is, the system on which you start rendering. Default=off.

If Distributed Maps is on but the maps are not found on the slaves, those maps simply will not render on the slaves, and rendered output will be incorrect. Also, an error message will appear in the mental ray message window.

If you are doing local rendering only, this setting has no effect.

Maps on all systems in distributed rendering must have exactly the same name and directory path.

[name field]

Displays the RAYHOSTS file name and path.

[list of hosts]

After you choose a RAYHOSTS file, this list shows the host systems available for distributed mental ray rendering. You can use this list to choose only those hosts you want to use for this particular rendering. When you render with Distributed Render on, the mental ray renderer uses only the hosts whose names are highlighted in this list. Click a host name to select it. To deselect a selected host name, click it again.

Note: The RAYHOSTS file, and therefore the host list, can contain duplicate entries. However, before you render you must select only processors that are not duplicates; otherwise, at render time 3ds Max will display an error message.

If Distributed Render is on but the list of hosts is empty when you click Render, 3ds Max will not perform distributed bucket rendering.

All

Highlights all system names in the hosts list.

None

Clears the highlight from all system names in the hosts list.

Add

Click to display an Add/Edit DBR Host dialog, which lets you add a host processor to the RAYHOSTS file.

Edit

Click to display the Add/Edit DBR Host dialog, and edit the highlighted host processor's entry in the RAYHOSTS file. Available only when a single list entry is highlighted.

Remove

Click to remove the currently highlighted host processors from the list and the RAYHOSTS file. Available only when one or more list entries are highlighted.

Clicking Remove displays a Remove Selected Hosts dialog, which warns you that the host descriptors will be removed from both locations:

To restore a host that you have removed, use the Add button once again.