---
title: "Distributed Rendering"
canonical: "https://documentation.chaos.com/space/VMAYA/111739824/Distributed%20Rendering"
format: markdown
---
This page provides information on the Second-generation Distributed Rendering (DR2) in V-Ray for Maya.

For older V-Ray versions, refer to the [Legacy Distributed Rendering workflow](https://docs-chaos.atlassian.net/wiki/spaces/VMAYA/pages/111739562). 


## **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 the different parts of the rendering pipeline and assigning each participant a specific part of the job. A computer network that performs distributed rendering is sometimes referred to as 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. The Render Client connects to a Dispatcher, which connects to the Render Servers. The render servers are sent different parts to calculate. Once done, the servers request additional tasks to render the next part until the entire image is completed, and the client has assembled all the image data back together to form the full image. As a result, many machines can effectively participate in rendering. Note that the Render Client can act as a Dispatcher too, but you can optionally dedicate another machine to the role of a Dispatcher to further boost the performance.  


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


## **Organization**

---

In V-Ray, DR is performed entirely through the TCP/IP protocol, which is the standard protocol of the Internet and thus the most commonly supported protocol by hardware. V-Ray does not need an additional file or directory sharing to perform DR. However, you might need file/directory sharing for the bitmaps or other additional files used during rendering. The distribution management is divided into a *Render Client, Dispatcher,* and one or more *Render Servers*.

### **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 to start DR. The process initiated by the Render Client divides the frame into rendering regions and sends them to the Dispatcher. In any Distributed Rendering job, there is only one Render Client.

### **Render Dispatcher**

Starting with V-Ray 7, update 2, the V-Ray Distributed Rendering process introduces the concept of a *Dispatcher*.   
When a dedicated Dispatcher is used, the Client communicates directly with the Dispatcher, and the Dispatcher, in turn, communicates with the other Servers. Typically, the Client doesn’t participate in the rendering, which benefits machines with less powerful GPUs or CPUs. Customers with render farms can utilize the Dispatcher and Render Servers over a high-speed network link, thereby significantly increasing network throughput. This solution removes the limitation that sending out the scene and transferable assets would bottleneck the process due to the Client's limited network capacity. 

The Dispatcher in a Distributed Rendering job can be only one, and the Dispatcher machine can’t be changed once the Distributed Rendering job has been started.

The machine used for the Render Client can be the same as that for the Dispatcher. 

The Dispatcher can also participate in the rendering process if you want to utilize the machine’s resources.

### **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 Dispatcher, processes it, and returns the result. In any DR job, there can be many Render Servers. Render Servers can be added before or during the distributed rendering process.


## **1. Installation**

---


## **Distributed Rendering on macOS via Autodesk Backburner**

---

Since Backburner starts as the root user (hence, V-Ray is also started as a root user), V-Ray cannot find some files needed to properly set up 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/Chaos/V-Ray/<maya_version>*.
- Add the string:** export VRAY_AUTH_CLIENT_FILE_PATH=/Users/<username>/.Chaos/vrlclient.xml** to the folder */etc/profile*. This ensures V-Ray knows where to load its license.


## **UDP Usage**

---

When UDP is applied to a DR dispatcher or a render server, it allows it to participate in the UDP automatic discovery mechanism on the local network segment. This means that when the UDP is enabled, the dispatcher can find the servers that have it enabled automatically without being provided a list beforehand. The dispatcher and servers have to be started on the same port for this to work. The port can be the default or custom. A custom port may be used, e.g., if you want to discover just the servers running on it.

To use UDP, you need to enable it on both the dispatcher side, so it can find servers, and the servers' side, so they can be automatically discovered. The option does not apply to the client.

### Applied to the **Dispatcher**:


```
vray  -run-dispatcher=1 -distributed-udp
```


**Windows **example:

```
C:\Program Files\Chaos\V-Ray\Maya 2026 for x64\maya_vray\bin\vray.exe -run-dispatcher=1 -distributed-udp
```


**macOS** example:

```
installed_vray_location/vray_72000_maya2026/VRay.app/Contents/MacOS/vray.bin -run-dispatcher=1 -distributed-udp
```


**Linux **example:

```
/usr/Chaos/V-Ray/Maya2026-x64/maya_vray/bin/vray -run-dispatcher=1 -distributed-udp
```


### Applied to the **Server**:


```
vray  -server -distributed-udp
```


**Windows **example:

```
C:\Program Files\Chaos\V-Ray\Maya 2026 for x64\maya_vray\bin\vray.exe -server -distributed-udp
```


**Linux **example:

```
/usr/Chaos/V-Ray/Maya2026-x64/maya_vray/bin/vray -server -distributed-udp
```


**macOS **example:

```
installed_vray_location/vray_72000_maya2026/VRay.app/Contents/MacOS/vray.bin -server -distributed-udp
```


## **Notes**

---

- When you cancel a DR rendering, it may take some time for the render servers to complete their tasks, and they may 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. While a progressive rendering DR job is running, render nodes can’t be removed, but they can be added.  While rendering, some of the options will be disabled. Stop the render to make adjustments.
- If the VRAY_ASSETS_CACHE_PATH [environment variable](https://docs-chaos.atlassian.net/wiki/spaces/VNS/pages/115605616) 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).