Setup dialog Processing panel Distributed Bucket Rendering
Note: The Processing
panel appears only when the mental ray renderer is the currently
Controls on this rollout
are for setting up and managed distributed bucket rendering. With
distributed rendering, multiple networked systems can all work on
a mental ray rendering. Buckets are assigned to systems as they
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.
TipWhen you use distributed
bucket rendering, be sure to:
- Turn on Use Placeholder Objects on the
When placeholder objects are enabled, geometry
is sent to the renderer only on demand.
- Leave Bucket Order set to Hilbert on
With Hilbert order, the sequence of buckets
to render uses the fewest number of data transfers.
NoteContour shading does
not work with distributed bucket rendering.
ImportantTo 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.
allow any owner of a 3ds Max license to freely use up to eight
slave CPUs 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
In addition, information
about each satellite should be stored in the
You can set up satellite systems by using the Add button on the
Distributed Bucket Rendering rollout, as described in the “Interface”
Host Systems with SPM Licenses
When you use mental ray
SPM licenses, remote hosts (that is, all systems other than the
one running 3ds Max) must have the mental ray renderer (ray.exe)
and a mental ray SPM license server running. To obtain this, you
must run the mental ray installer on all remote hosts, then configure
and run the SPM license server. Instructions about how to do so
are provided with the mental ray renderer sold by mental images.
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
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
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 SPM licenses, 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.
To use mental ray distributed rendering:
- On the Render Setup dialog, go to the
Processing panel. On the Distributed Bucket Rendering rollout, turn
on Distributed Render.
NoteThe Net Render option on the Common Parameters
rollout has no effect on distributed bucket rendering.
- 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.
- 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.
- 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
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 8 CPUs per Backburner server, thereby increasing the
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.
NoteThe number of machines
you can use depends on the number of machines running licensed copies
of 3ds Max. You are able to use only eight external (or satellite)
CPUs per licensed copy of 3ds Max: four dual-processor machines
or eight single-processor machines (or equivalent).
- 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.
- Use the Windows Notepad program or a
text editor to open the max.rayhosts file on machine A,
located in mentalimages subdirectory within 3ds Max folder.
- In the max.rayhosts file,
under the “localhost” entry enter the IP address of each satellite
CPU to be used; up to eight in all (see Figure 1).
Example of a rayhost
- Repeat the previous step on machines
B and C with the remaining IP addresses.
- Launch Backburner Manager on the machine
submitting the job or any other machine. Launch the Backburner Server
on machines A, B, and C.
WarningIt 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
- On the machine submitting the job choose
mental ray as the renderer, and then turn on Use Placeholder Objects,
Use mental ray Map Manager (see Figure 2), and the Distributed Render
(see Figure 3).
- Submit the job to the Backburner network
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.
- 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.
NoteThe Net Render option
on the Common Parameters rollout has no effect on distributed bucket
The other distributed
rendering controls are unavailable unless Distributed Render is
- 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 for mental
ray to distribute 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]
- [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.
NoteThe 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.
Highlights all system names
in the hosts list.
Clears the highlight
from all system names in the hosts list.
Click to display the
DBR Host dialog, and edit the highlighted
host processor's entry in the RAYHOSTS file. Available only when
a single list entry is highlighted.
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.