Network distributed simulation

Ocean can distribute a simulation over several computers. This is very efficient as computer power are truly additive : using ten similar computer will divide render times by 10 at similar noise levels.

This is achieved by using several computers running Ocean in server mode, and another one in normal client mode for loading the scene and connecting to all others.

Configuring the working directory

Each computer must have access to the scene files, including texture images and libraries.

Libraries are automatically loaded by Ocean (see Preferences, you just need to ensure that all required libraries are properly loaded and are the same on each computer)

Other files (scene files, images) should be accessible on each computer in a directory having the same folder structure. This can be achieved by either:

  • Using a network folder

  • Synchronizing a main folder in each computer local disk

  • Manually copying a folder structure in each computer

This directory is not required to be at the same place on every computer, it just needs to have the same structure. Then, it must be set as the working directory in the Preferences. Please note that if you change this setting, it is recommended to close and reload the scene to update links.

Preparing your scene

The main scene file should be stored in the working directory, or a sub-folder. Then, each file it refers to (part scene files, images…) should be accessible by other computers. This is best achieved when the files are also in the working directory structure, and addressed by relative paths. Ocean automatically saves files using relative paths when they are either :

  • In the working directory structure

  • In the main scene file directory structure

For this reason, it is not recommended to move scene files manually without moving the full directory structure, or links will be broken.

If the scene files have been saved in Ocean XML format, they can be opened in a text editor, for looking and modifying file paths. Just search for text such as path=

Starting the servers

Start Ocean on every server node, configure the working directory as explained above, and click on the “Server” button.

Launching the render on the client

Servers toolbox screenshot

On the client computer, load the scene, then go to the servers toolbox

In the top left edit box, enter the IP address or host name of a server node, and click on Add button. Repeat this for every node.

Additionally, if the client computer should also use its resources for the simulation, check the Internal box.

Then click on “Start” as you would for a normal simulation. After some initialization time, servers will start sending samples to the client, and render speed will increase. In the servers toolbox, you can find servers status, servers speed, and potential error messages. The full log of each server may be read in the remote log toolbox.

Changing the network port

If for any reason the TCP/IP port of a server needs to be changed, this can be done in its Preferences Just stop and restart the server mode after this. On the client computer, IP adresses or hosts names must include the new port number in the standard format, such as 192.168.10.25:12345 or susans-computer:12345