Setting Up for Distributed Rendering
 
 
 

To set up Satellite distributed rendering for Softimage, several steps must be followed before and after the program is installed.

In a network rendering setup, whichever computer initiates the render (the master) oversees the organization of the images to be rendered and distributes the rendering tasks among the other computers in the setup (the slaves). This is accomplished through the use of the ray3hosts and linktab text files.

For the master to properly communicate with the slaves, each computer should have the same version of the mental ray rendering software installed and use the same TCP/IP port number. The master should have more memory than the slave computers and as much virtual memory as possible.

Defining a .ray3hosts File

The .ray3hosts file identifies the computers that will participate in distributed renders. This file must be present on the computer designated as the master, in the location specified by the MI_RAY_HOSTSFILE environment variable.

If you do not explicitly set the MI_RAY_HOSTSFILE environment variable, by default mental ray will search your $HOME directory (on Linux) or the location specified by XSI_USERHOME (on Windows) for a .ray3hosts file.

If you want to set a different location in your MI_RAY_HOSTSFILE environment variable, be sure to specify both the path and file name.

The .ray3hosts file contains a list of the computers that can participate in distributed rendering (not including the master) and the port numbers they use for the mental ray service.

Each computer must be listed by name on a separate line, optionally followed by a colon and the port number you want mental ray to use on that computer. If no port number is listed for a given computer, that computer will use the port defined in its MI_RAY3_SERVICE variable.

Any line preceded by a hash (#) symbol is considered a comment and is ignored.

Here's a sample .ray3hosts file:

# The first three computers are always part of the
# render network. The last computer listed is only
# used for overnight renders; remove the # to make
# it available.
larry:7020
moe:7020
curly:7020
# shemp:7024
NoteDepending on your network settings, it can take up to several minutes for a computer to tell mental ray that a host does not answer, so be sure to modify your .ray3hosts file if you know that certain computers are down.

Environment Variables for Distributed Rendering

These environment variables are required for distributed rendering. They are set during installation in the environment script (setenv.bat on Windows and .xsi_2012.SAP on Linux).

  • _ADSK_LicServers must be set to the computer name of the computer running the Autodesk Network License Manager. For example:

    _ADSK_LicServers=@buzzgoodhost
  • MI_ROOT defines the location of the ray3rc file.

    The default location is the Application/rsrc subfolder of the directory specified by SI_HOME.

    On Linux it is also set in ray3.sh which is called during distributed rendering.

  • SI_HOME is set to the directory in which Softimage is installed.

  • SI_LINKTAB_LOCATION points to the location of the linktab.ini file.

    If the linktab file is not named linktab.ini, you must also include the file name.

  • MI_RAY_HOSTSFILE defines the location and name of the .ray3hosts file on the master computer.

For details on how to define the various environment variables used by Softimage, see the Environment Variable Reference.

Managing the mental ray Services

The raysatsi2012_3_9_1_44server service must be running on each slave computer for it to connect to the master. This is usually an automatic process, but you may need to perform some operations manually when troubleshooting.

For example, from the Softimage command prompt type:

raysatsi2012_3_9_1_44server /stop

This stops the raysatsi2012_3_9_1_44server service on the current machine.

You can run the raysatsi2012_3_9_1_44server executable from a Softimage command prompt with the following options:

Option

Function

/install

Installs the service and starts it.

/remove

Stops and uninstalls the service.

/start

Starts the service on the current computer.

/stop

Stops the service on the current computer.

Machine Won't Load For a Network Render?

If a machine won't load for a network render with mental ray, try the following to see if the machine is responding:

For example, if sparky won't load, type:

telnet sparky mi-raysatsi2012_3_9_1_44
  • If you see some messages ("Escape character is..."), this is good.

  • If you see "Unable to connect...", there is a problem with the slaves' /etc/inetd.conf or /etc/services.