How To: Set Up Distributed Rendering
| Table of contents |
Specify the slave rendering hosts
On the master machine:
- Use ping to verify that the slaves are reachable from the master machine.
- Put the hostnames of the slave computers in the .ray3hosts file.
- Check that ray3 services on the slaves all use the same port numbers, and add the port number to the .ray3hosts file.
- Check that the ray3 service is running on the slaves and on the master.
- On the master, run ray3.exe -v 5 to check the connections.
Ping
Before you start, you want to check that the master can connect to the slaves. Open a command prompt and run the command
ping <hostname of slave>
or
ping <ip address of slave>
If you don't know the hostname or IP address of a slave, go to the slave and use the hostname and ipconfig commands to find out.
.ray3hosts
By default, XSI expects the .ray3hosts file to be in the User location. For example:
c:\users\tamu\Softimage\XSI_5.11\.ray3hosts
The XSI Setup does not create the .ray3hosts file, but the default setenv.bat file does set the MI_RAY_HOSTSFILE environment variable to point to the User location.
A .ray3hosts file lists the render slaves in the format hostname:port. For example:
#Render slaves suda:7007 kima:7007 bibi:7007 simba:7007
ray3 Services
On the slaves, there is a service named something like Ray3_4_6_18 Server. The actual name depends on the version of mental ray you have.
The executable for the service is
%XSI_HOME%\Application\bin\ray3_4_6_18server.exe
If you need to install the service, you can do it from the command line:
ray3_4_6_18server.exe /install ray3_4_6_18server.exe /start
If the service won't start, check that there is an entry for the service in the services file.
Port Numbers
The port used by the ray3 service is specified in the services file:
C:\Windows\System32\drivers\etc\services
Scroll down to the bottom of the file and look for a line that looks like this:
mi-ray3_4_6_18 7007/tcp #
To test that the master can connect to the slave on a port, run this command on the master:
telnet <slave_hostname> <port>
If telnet can connect, you'll get a blank command window. Press Ctrl+] and then type quit. Otherwise, you'll get something like this:
C:\Softimage\XSI_5.11\Application\bin>telnet tamu 7009 Connecting To tamu...Could not open connection to the host, on port 7009: Connect failed
Checking the Connections
Running a render with a verbosity level of at least 5 (eg ray3 -v 5) will show you whether the master can connect to the slaves.
If ray3 can connect to the slave, you'll see something like this:
MSG 0.0 debug: connected mtl-p1570:7009 as host 1
and if ray3 cannot connect (for example, if the port number is wrong in .ray3hosts), you'll see this:
MSG 0.0 error 011702: cannot connect(2) host mtl-p1570:7006
Licensing
You have to point the slaves to the SPM License Server.
The location of the license server is specified by the SPM_HOST environment variable, which is set by setenv.bat.

