Square Enix © Goodbye Kansas

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 9 Next »

Table of Contents

This page provides information on distributed rendering (DR) in V-Ray for Maya.

Overview


Distributed rendering is a technique for distributing a single render job within a single frame across many computers in a network. The idea is to reduce render time by dividing different parts of the rendering pipeline and giving each participant different parts of the job. A network of computers that perform distributed rendering is sometimes called a render farm

V-Ray supports distributed rendering (DR). While there are many ways to do DR with V-Ray, the most common way is to divide the frame to be rendered into small regions (buckets) and give each machine a number of buckets to render, then the machine that started the process gets the results and combines them into the final image.

Distributed rendering is not supported by V-Ray PLE for Maya.


Organization


In V-Ray, DR is done completely through TCP/IP protocol, which is the standard protocol of the Internet and thus the most common protocol that is supported by the hardware. V-Ray itself does not need additional file or directory sharing to perform DR. However, you might need some file/directory sharing for the bitmaps or other additional files used during rendering. The distribution management is divided into a render client and one or more render servers. Please note that if you are using a V-Ray version previous to V-Ray 5, render clients and render servers would be found under different names.

Render Clients

The render client is the computer from which the rendering is started. Maya and V-Ray for Maya must be running on this computer in order to start DR. The process initiated by the render client divides the frame into rendering regions and distributes them among the render servers, and later collects the results. In any DR job, there is only one render client.

Render Servers

A render server is one of the computers in the network that does the rendering work. A render server requests render data from the render client, processes it, and sends the result back. In any DR job, there can be many render servers.

 

Installation Notes


To use the distributed rendering feature you need to have V-Ray for Maya installed on the Render Client and V-Ray Standalone running in server mode on the Render Servers. See the table below for information how to start the V-Ray Standalone on the different operating systems:

How to Start the Render Server
WindowsStart Menu > All Programs > Chaos Group > V-Ray for Maya > Launch V-Ray render server
Linux/usr/autodesk/maya20NN/vray/bin/vrayserver
macOS/Applications/ChaosGroup/V-Ray/Maya20NN/bin/vrayserver

Distributed Rendering Settings


For information on Distributed rendering settings in Maya, please see the Distributed Rendering Settings page.

 

Step by Step DR Setup


1. Set up the render servers. You can do this in two different ways.

a. Start the render servers as specified in the table under Installation Notes.

b. Start the V-Ray Standalone and enter the "vray -server" command in the command prompt.

2. Set-up the Render Client. In the Maya interface, bring forth the Render Settings and in the Settings tab under the System rollout click on the Settings button in the Distributed Rendering group. Add all the Render Servers by inputting their IP's in the  Add Server name or IP  field and click on the Add Server button. You can include or exclude the servers in the list in the current rendering by selecting them from the list and toggling the  Change button.

 

DR Check tool


The DR Check tool can be used to query the state of render servers, the number of processors on the server machine and the V-Ray version of the server.

 

Location:

Depending on your OS, the vraydr_check executable is located as follows:

Windows –  Start Menu > All Programs > Chaos Group > V-Ray for Maya nnnn for x64 > Tools or alternatively start the .exe in a command-prompt from C:\Program Files\Chaos Group\V-Ray\Maya nnnn for x64\bin

Linux –  /usr/ChaosGroup/V-Ray/Maya nnnn -x64/bin

macOS – /Applications/ChaosGroup/V-Ray/Mayannnn/bin

Note: nnnn is the Maya version

 

Usage:

vraydr_check -host=IP -port=num

Note: IP is the IP address of the machine that is running a V-Ray server and num is the number of the port (by default it's 20207). Example: vraydr_check -host=10.0.0.100 -port=20207


Return values:

  • The state of the server: busy or ready depending on whether the server machine is currently rendering or it's available for new render tasks.
  • The number of CPU threads on the server machine. Example: Num processors: 8.
  • The version of V-Ray installed on the server machine. Example: V-Ray version info: Rev 26840 Jun 29 2016.
  • The V-Ray core version. Example: V-ray core version: 3.25.01.

In case a connection cannot be established with the server, the tool will print this message:  Failed to connect to server 1.0.0.100:20207

This could mean that either something is blocking the connection, or the server is not running at all on the specified IP address.

 

Distributed Rendering on macOS via Autodesk Backburner


Since Backburner gets started as root user (hence V-Ray is started as a root user as well), V-Ray would not find some files needed to properly setup distributed rendering. The solution to this problem is to do the following:

  • Copy the vray_dr_list.xml file  from the desired user's settings (/Users/<username>/Library/Preferences/Autodesk/maya) to /Applications/ChaosGroup/V-Ray/<maya_version>.  
  • Add the string: export VRAY_AUTH_CLIENT_FILE_PATH=/Users/<username>/.ChaosGroup/vrlclient.xml to the folder /etc/profile. This ensures V-Ray will know where to load its license from.

 

Notes


  • When you cancel a DR rendering, it might take some time for the render servers to finish working and they might not be immediately available for another render.

  • Servers can be added, removed, enabled, and disabled while running a CPU distributed render. For GPU rendering, DR settings can not be changed during the render. When using progressive rendering, nodes can only be added or enabled while rendering.  While rendering, some of the options will be disabled. Stop the render to make adjustments.

  • If the VRAY_ASSETS_CACHE_PATH environment variable is not set, the default system temp folder is used for copying the assets, usually  C:\Users\<username>\AppData\Local\Temp on Windows (%TEMP%) or /tmp on Linux and macOS ($TMPDIR).