Multi-thread & Network rendering support
Views
Personal tools
From LuxRender Wiki
LuxRender includes the support for multi-thread and Network rendering support. It means that you can use all the CPU/Cores available on you machine and/or on your network to reduce the rendering time.
Contents |
Multi-thread rendering
LuxConsole and LuxRender will use one single rendering thread by default however you can increase the number of threads used with the command line option "--threads <number of threads>" (or "-t"). For instance:
luxconsole -t 4 fullcornell-metropolis.lxs
LuxRender includes the support for dynamically add/remove threads from the GUI too.
Network rendering
A rendering network consists of one client and one or more servers. Typically, your main computer is the client.
The same version of LuxRender must be installed on each node, if versions don't match, an "invalid signature" message will be shown.
To prepare for rendering, launch LuxConsole on each server from the command line with the "--server" (or "-s") option. For instance:
luxconsole -s
Do not forget to use the "--threads" option if your server has multiple cores, for instance:
luxconsole -s -t 4
Once all servers are up and running you can start the rendering from the client, for instance:
luxconsole -u 192.168.1.248 -u 192.168.1.19 -t 2 fullcornell-metropolis.lxs
Where "192.168.1.248" and "192.168.1.19" are the IP addresses of 2 servers. You can use as many "--useserver" (or "-u") options as you like (i.e. 1 for each server available). By default every 180 seconds the client will contact the server in order to download the traced samples. This interval can be changed by using the "--serverinterval" (or "-i") option:
luxconsole -u 192.168.1.248 -u 192.168.1.19 -t 2 -i 300 fullcornell-metropolis.lxs
The default TCP port used for client/server communication is 18018. You can use the "--serverport" (or "-p") option in order to change the tcp port:
luxconsole -s -p 10001
The "--useserver" (or "-u") also supports an extended format in order to define the port used by the server:
luxconsole -u 192.168.1.248:10001 -u 192.168.1.19 -t 2 fullcornell-metropolis.lxs
First test
The very first test is to run both the client and the server on the same machine in order to check if everything works fine. For instance in order to run the server open one shell and run:
luxconsole -s
In order to run the client open another shell and run:
luxrender -u 192.168.1.19 -i 30 fullcornell-metropolis.lxs
where 192.168.1.19 is the ip address of your machine and fullcornell-metropolis.lxs is a scene available in the current directory. The client output should be:
[Lux 2008-May-08 15:10:41 INFO : 0] Connecting to server '192.168.1.19' [Lux 2008-May-08 15:10:41 INFO : 0] Server requests interval: 0 secs [Lux 2008-May-08 15:10:41 INFO : 0] GUI: Parsing scenefile 'fullcornell-metropolis.lxs' Loading Cimg Texture: 'pngtestimage.png'... Done. Loading Cimg Texture: 'jpgtestimage.jpg'... Done. Loading Cimg Texture: 'bumptestimage.png'... Done. Loading Cimg Texture: 'bumptestimage.png'... Done. [Lux 2008-May-08 15:10:46 WARNING : 0] Parameter 'roughness' not used [Lux 2008-May-08 15:10:47 INFO : 0] Sending commands to server: 192.168.1.19 [Lux 2008-May-08 15:10:51 INFO : 0] All servers are aligned [Lux 2008-May-08 15:11:05 INFO : 0] GUI: Updating framebuffer... [Lux 2008-May-08 15:11:06 INFO : 0] GUI: Framebuffer update done. [Lux 2008-May-08 15:11:17 INFO : 0] GUI: Updating framebuffer... [Lux 2008-May-08 15:11:19 INFO : 0] GUI: Framebuffer update done. [Lux 2008-May-08 15:11:23 INFO : 0] Getting samples from '192.168.1.19' [Lux 2008-May-08 15:11:25 INFO : 0] Receiving 145328 samples (little endian false) [Lux 2008-May-08 15:11:30 INFO : 0] GUI: Updating framebuffer... [Lux 2008-May-08 15:11:32 INFO : 0] GUI: Framebuffer update done. [Lux 2008-May-08 15:11:36 INFO : 0] Samples recieved from '192.168.1.19' [Lux 2008-May-08 15:11:44 INFO : 0] GUI: Updating framebuffer... [Lux 2008-May-08 15:11:45 INFO : 0] GUI: Framebuffer update done. [Lux 2008-May-08 15:11:53 INFO : 0] Getting samples from '192.168.1.19' [Lux 2008-May-08 15:11:56 INFO : 0] Receiving 173398 samples (little endian false) [Lux 2008-May-08 15:11:57 INFO : 0] GUI: Updating framebuffer... [Lux 2008-May-08 15:11:59 INFO : 0] GUI: Framebuffer update done. [Lux 2008-May-08 15:12:06 INFO : 0] Samples recieved from '192.168.1.19' [Lux 2008-May-08 15:12:11 INFO : 0] GUI: Updating framebuffer... [Lux 2008-May-08 15:12:12 INFO : 0] GUI: Framebuffer update done. [Lux 2008-May-08 15:12:23 INFO : 0] Getting samples from '192.168.1.19' [Lux 2008-May-08 15:12:24 INFO : 0] GUI: Updating framebuffer... [Lux 2008-May-08 15:12:25 INFO : 0] Receiving 178880 samples (little endian false) [Lux 2008-May-08 15:12:26 INFO : 0] GUI: Framebuffer update done. [Lux 2008-May-08 15:12:34 INFO : 0] Samples recieved from '192.168.1.19' [Lux 2008-May-08 15:12:37 INFO : 0] GUI: Updating framebuffer... [Lux 2008-May-08 15:12:39 INFO : 0] GUI: Framebuffer update done. [Lux 2008-May-08 15:12:50 INFO : 0] GUI: Updating framebuffer... [Lux 2008-May-08 15:12:52 INFO : 0] GUI: Framebuffer update done. [Lux 2008-May-08 15:12:53 INFO : 0] Getting samples from '192.168.1.19' [Lux 2008-May-08 15:12:55 INFO : 0] Receiving 184643 samples (little endian false) [Lux 2008-May-08 15:13:03 INFO : 0] Writing OpenEXR image to file fullcornell-metropolis_untonemapped.exr [Lux 2008-May-08 15:13:03 INFO : 0] GUI: Updating framebuffer... [Lux 2008-May-08 15:13:04 INFO : 0] Samples recieved from '192.168.1.19' [Lux 2008-May-08 15:13:05 INFO : 0] GUI: Framebuffer update done. [Lux 2008-May-08 15:13:07 INFO : 0] Writing Tonemapped TGA image to file fullcornell-metropolis.tga [Lux 2008-May-08 15:13:08 INFO : 0] Writing OpenEXR image to file fullcornell-metropolis.exr [Lux 2008-May-08 15:13:16 INFO : 0] GUI: Updating framebuffer... [Lux 2008-May-08 15:13:18 INFO : 0] GUI: Framebuffer update done. [Lux 2008-May-08 15:13:23 INFO : 0] Getting samples from '192.168.1.19' [Lux 2008-May-08 15:13:25 INFO : 0] Receiving 192664 samples (little endian false) [Lux 2008-May-08 15:13:29 INFO : 0] GUI: Updating framebuffer... [Lux 2008-May-08 15:13:31 INFO : 0] GUI: Framebuffer update done. [Lux 2008-May-08 15:13:35 INFO : 0] Samples recieved from '192.168.1.19' [...]
while the server output should be:
[Lux 2008-May-08 15:10:39 INFO : 0] Lux version 0.1 of May 8 2008 at 11:08:55 [Lux 2008-May-08 15:10:39 INFO : 0] Threads: 1 [Lux 2008-May-08 15:10:39 INFO : 0] Launching server mode on port '18018'. [Lux 2008-May-08 15:10:47 INFO : 0] Server processing command: 'luxLookAt' (hash: 3747502632) [Lux 2008-May-08 15:10:47 INFO : 0] Server processing command: 'luxCamera' (hash: 3378604391) [Lux 2008-May-08 15:10:47 INFO : 0] Server processing command: 'luxFilm' (hash: 2531294310) [Lux 2008-May-08 15:10:47 INFO : 0] Server processing command: 'luxPixelFilter' (hash: 2384561510) [Lux 2008-May-08 15:10:47 INFO : 0] Server processing command: 'luxSampler' (hash: 3308802546) [Lux 2008-May-08 15:10:47 INFO : 0] Server processing command: 'luxSurfaceIntegrator' (hash: 4011931910) [Lux 2008-May-08 15:10:47 INFO : 0] Server processing command: 'luxAccelerator' (hash: 1613429731) [Lux 2008-May-08 15:10:47 INFO : 0] Server processing command: 'luxWorldBegin' (hash: 1247285547) [Lux 2008-May-08 15:10:47 INFO : 0] Server processing command: 'luxAttributeBegin' (hash: 684297207) [Lux 2008-May-08 15:10:47 INFO : 0] Server processing command: 'luxLightSource' (hash: 130489799) [Lux 2008-May-08 15:10:47 INFO : 0] Server processing command: 'luxAttributeEnd' (hash: 3427929065) [Lux 2008-May-08 15:10:47 INFO : 0] Server processing command: 'luxTexture' (hash: 475043887) [Lux 2008-May-08 15:10:47 INFO : 0] Server processing command: 'luxTexture' (hash: 475043887) [Lux 2008-May-08 15:10:47 INFO : 0] Server processing command: 'luxTexture' (hash: 475043887) [Lux 2008-May-08 15:10:47 INFO : 0] Server processing command: 'luxTexture' (hash: 475043887) [Lux 2008-May-08 15:10:47 INFO : 0] Server processing command: 'luxTexture' (hash: 475043887) [Lux 2008-May-08 15:10:47 INFO : 0] Server processing command: 'luxTexture' (hash: 475043887) [Lux 2008-May-08 15:10:47 INFO : 0] Server processing command: 'luxTexture' (hash: 475043887) [Lux 2008-May-08 15:10:47 INFO : 0] Server processing command: 'luxTexture' (hash: 475043887) [Lux 2008-May-08 15:10:47 INFO : 0] Server processing command: 'luxTexture' (hash: 475043887) [Lux 2008-May-08 15:10:47 INFO : 0] Server processing command: 'luxTexture' (hash: 475043887) [Lux 2008-May-08 15:10:47 INFO : 0] Server processing command: 'luxTexture' (hash: 475043887) [Lux 2008-May-08 15:10:47 INFO : 0] Server processing command: 'luxTexture' (hash: 475043887) [Lux 2008-May-08 15:10:47 INFO : 0] Server processing command: 'luxTexture' (hash: 475043887) [Lux 2008-May-08 15:10:47 INFO : 0] Server processing command: 'luxTexture' (hash: 475043887) [Lux 2008-May-08 15:10:47 INFO : 0] Server processing command: 'luxTexture' (hash: 475043887) [Lux 2008-May-08 15:10:47 INFO : 0] Server processing command: 'luxTexture' (hash: 475043887) [Lux 2008-May-08 15:10:47 INFO : 0] Server processing command: 'luxTexture' (hash: 475043887) [Lux 2008-May-08 15:10:47 INFO : 0] Server processing command: 'luxTexture' (hash: 475043887) [Lux 2008-May-08 15:10:47 INFO : 0] Server processing command: 'luxTexture' (hash: 475043887) [Lux 2008-May-08 15:10:47 INFO : 0] Server processing command: 'luxTexture' (hash: 475043887) [Lux 2008-May-08 15:10:47 INFO : 0] Server processing command: 'luxTexture' (hash: 475043887) [Lux 2008-May-08 15:10:47 INFO : 0] Receiving file : 'pngtestimage.png' Loading Cimg Texture: 'pngtestimage.png'... Done. [Lux 2008-May-08 15:10:48 INFO : 0] Server processing command: 'luxTexture' (hash: 475043887) [Lux 2008-May-08 15:10:48 INFO : 0] Server processing command: 'luxTexture' (hash: 475043887) [Lux 2008-May-08 15:10:48 INFO : 0] Server processing command: 'luxTexture' (hash: 475043887) [Lux 2008-May-08 15:10:48 INFO : 0] Server processing command: 'luxTexture' (hash: 475043887) [Lux 2008-May-08 15:10:48 INFO : 0] Server processing command: 'luxTexture' (hash: 475043887) [Lux 2008-May-08 15:10:48 INFO : 0] Server processing command: 'luxTexture' (hash: 475043887) [Lux 2008-May-08 15:10:48 INFO : 0] Server processing command: 'luxTexture' (hash: 475043887) [Lux 2008-May-08 15:10:48 INFO : 0] Server processing command: 'luxTexture' (hash: 475043887) [Lux 2008-May-08 15:10:48 INFO : 0] Receiving file : 'jpgtestimage.jpg' Loading Cimg Texture: 'jpgtestimage.jpg'... Done. [Lux 2008-May-08 15:10:49 INFO : 0] Server processing command: 'luxTexture' (hash: 475043887) [Lux 2008-May-08 15:10:49 INFO : 0] Server processing command: 'luxTexture' (hash: 475043887) [Lux 2008-May-08 15:10:49 INFO : 0] Server processing command: 'luxTexture' (hash: 475043887) [Lux 2008-May-08 15:10:49 INFO : 0] Server processing command: 'luxTexture' (hash: 475043887) [Lux 2008-May-08 15:10:49 INFO : 0] Server processing command: 'luxTexture' (hash: 475043887) [Lux 2008-May-08 15:10:49 INFO : 0] Server processing command: 'luxTexture' (hash: 475043887) [Lux 2008-May-08 15:10:49 INFO : 0] Server processing command: 'luxTexture' (hash: 475043887) [Lux 2008-May-08 15:10:49 INFO : 0] Server processing command: 'luxTexture' (hash: 475043887) [Lux 2008-May-08 15:10:49 INFO : 0] Server processing command: 'luxTexture' (hash: 475043887) [Lux 2008-May-08 15:10:49 INFO : 0] Receiving file : 'bumptestimage.png' Loading Cimg Texture: 'bumptestimage.png'... Done. [Lux 2008-May-08 15:10:50 INFO : 0] Server processing command: 'luxTexture' (hash: 475043887) [Lux 2008-May-08 15:10:50 INFO : 0] Server processing command: 'luxTexture' (hash: 475043887) [Lux 2008-May-08 15:10:50 INFO : 0] Server processing command: 'luxTexture' (hash: 475043887) [Lux 2008-May-08 15:10:50 INFO : 0] Server processing command: 'luxTexture' (hash: 475043887) [Lux 2008-May-08 15:10:50 INFO : 0] Receiving file : 'bumptestimage.png' Loading Cimg Texture: 'bumptestimage.png'... Done. [Lux 2008-May-08 15:10:51 INFO : 0] Server processing command: 'luxTexture' (hash: 475043887) [Lux 2008-May-08 15:10:51 INFO : 0] Server processing command: 'luxTexture' (hash: 475043887) [Lux 2008-May-08 15:10:51 INFO : 0] Server processing command: 'luxTexture' (hash: 475043887) [Lux 2008-May-08 15:10:51 INFO : 0] Server processing command: 'luxTexture' (hash: 475043887) [Lux 2008-May-08 15:10:51 INFO : 0] Server processing command: 'luxTexture' (hash: 475043887) [Lux 2008-May-08 15:10:51 INFO : 0] Server processing command: 'luxTexture' (hash: 475043887) [Lux 2008-May-08 15:10:51 INFO : 0] Server processing command: 'luxTexture' (hash: 475043887) [Lux 2008-May-08 15:10:51 INFO : 0] Server processing command: 'luxTexture' (hash: 475043887) [Lux 2008-May-08 15:10:51 INFO : 0] Server processing command: 'luxTexture' (hash: 475043887) [Lux 2008-May-08 15:10:51 INFO : 0] Server processing command: 'luxTexture' (hash: 475043887) [Lux 2008-May-08 15:10:51 INFO : 0] Server processing command: 'luxTexture' (hash: 475043887) [Lux 2008-May-08 15:10:51 INFO : 0] Server processing command: 'luxTexture' (hash: 475043887) [Lux 2008-May-08 15:10:51 INFO : 0] Server processing command: 'luxTexture' (hash: 475043887) [Lux 2008-May-08 15:10:51 INFO : 0] Server processing command: 'luxMakeNamedMaterial' (hash: 2355625968) [Lux 2008-May-08 15:10:51 INFO : 0] Server processing command: 'luxAttributeBegin' (hash: 684297207) [Lux 2008-May-08 15:10:51 INFO : 0] Server processing command: 'luxTransform' (hash: 2039102042) [Lux 2008-May-08 15:10:51 INFO : 0] Server processing command: 'luxMaterial' (hash: 4064803661) [Lux 2008-May-08 15:10:51 INFO : 0] Server processing command: 'luxShape' (hash: 1943702863) [Lux 2008-May-08 15:10:51 INFO : 0] Server processing command: 'luxAttributeEnd' (hash: 3427929065) [Lux 2008-May-08 15:10:51 INFO : 0] Server processing command: 'luxAttributeBegin' (hash: 684297207) [Lux 2008-May-08 15:10:51 INFO : 0] Server processing command: 'luxTransform' (hash: 2039102042) [Lux 2008-May-08 15:10:51 INFO : 0] Server processing command: 'luxMaterial' (hash: 4064803661) [Lux 2008-May-08 15:10:51 INFO : 0] Server processing command: 'luxShape' (hash: 1943702863) [Lux 2008-May-08 15:10:51 INFO : 0] Server processing command: 'luxAttributeEnd' (hash: 3427929065) [Lux 2008-May-08 15:10:51 INFO : 0] Server processing command: 'luxAttributeBegin' (hash: 684297207) [Lux 2008-May-08 15:10:51 INFO : 0] Server processing command: 'luxTransform' (hash: 2039102042) [Lux 2008-May-08 15:10:51 INFO : 0] Server processing command: 'luxMaterial' (hash: 4064803661) [Lux 2008-May-08 15:10:51 INFO : 0] Server processing command: 'luxShape' (hash: 1943702863) [Lux 2008-May-08 15:10:51 WARNING : 0] Parameter 'roughness' not used [Lux 2008-May-08 15:10:51 INFO : 0] Server processing command: 'luxAttributeEnd' (hash: 3427929065) [Lux 2008-May-08 15:10:51 INFO : 0] Server processing command: 'luxAttributeBegin' (hash: 684297207) [Lux 2008-May-08 15:10:51 INFO : 0] Server processing command: 'luxTransform' (hash: 2039102042) [Lux 2008-May-08 15:10:51 INFO : 0] Server processing command: 'luxMaterial' (hash: 4064803661) [Lux 2008-May-08 15:10:51 INFO : 0] Server processing command: 'luxShape' (hash: 1943702863) [Lux 2008-May-08 15:10:51 INFO : 0] Server processing command: 'luxAttributeEnd' (hash: 3427929065) [Lux 2008-May-08 15:10:51 INFO : 0] Server processing command: 'luxAttributeBegin' (hash: 684297207) [Lux 2008-May-08 15:10:51 INFO : 0] Server processing command: 'luxTransform' (hash: 2039102042) [Lux 2008-May-08 15:10:51 INFO : 0] Server processing command: 'luxMaterial' (hash: 4064803661) [Lux 2008-May-08 15:10:51 INFO : 0] Server processing command: 'luxShape' (hash: 1943702863) [Lux 2008-May-08 15:10:51 INFO : 0] Server processing command: 'luxAttributeEnd' (hash: 3427929065) [Lux 2008-May-08 15:10:51 INFO : 0] Server processing command: 'luxAttributeBegin' (hash: 684297207) [Lux 2008-May-08 15:10:51 INFO : 0] Server processing command: 'luxTransform' (hash: 2039102042) [Lux 2008-May-08 15:10:51 INFO : 0] Server processing command: 'luxMaterial' (hash: 4064803661) [Lux 2008-May-08 15:10:51 INFO : 0] Server processing command: 'luxShape' (hash: 1943702863) [Lux 2008-May-08 15:10:51 INFO : 0] Server processing command: 'luxAttributeEnd' (hash: 3427929065) [Lux 2008-May-08 15:10:51 INFO : 0] Server processing command: 'luxAttributeBegin' (hash: 684297207) [Lux 2008-May-08 15:10:51 INFO : 0] Server processing command: 'luxTransform' (hash: 2039102042) [Lux 2008-May-08 15:10:51 INFO : 0] Server processing command: 'luxMaterial' (hash: 4064803661) [Lux 2008-May-08 15:10:51 INFO : 0] Server processing command: 'luxShape' (hash: 1943702863) [Lux 2008-May-08 15:10:51 INFO : 0] Server processing command: 'luxAttributeEnd' (hash: 3427929065) [Lux 2008-May-08 15:10:51 INFO : 0] Server processing command: 'luxAttributeBegin' (hash: 684297207) [Lux 2008-May-08 15:10:51 INFO : 0] Server processing command: 'luxTransform' (hash: 2039102042) [Lux 2008-May-08 15:10:51 INFO : 0] Server processing command: 'luxMaterial' (hash: 4064803661) [Lux 2008-May-08 15:10:51 INFO : 0] Server processing command: 'luxShape' (hash: 1943702863) [Lux 2008-May-08 15:10:51 INFO : 0] Server processing command: 'luxAttributeEnd' (hash: 3427929065) [Lux 2008-May-08 15:10:51 INFO : 0] Server processing command: 'luxAttributeBegin' (hash: 684297207) [Lux 2008-May-08 15:10:51 INFO : 0] Server processing command: 'luxTransform' (hash: 2039102042) [Lux 2008-May-08 15:10:51 INFO : 0] Server processing command: 'luxMaterial' (hash: 4064803661) [Lux 2008-May-08 15:10:51 INFO : 0] Server processing command: 'luxShape' (hash: 1943702863) [Lux 2008-May-08 15:10:51 INFO : 0] Server processing command: 'luxAttributeEnd' (hash: 3427929065) [Lux 2008-May-08 15:10:51 INFO : 0] Server processing command: 'luxAttributeBegin' (hash: 684297207) [Lux 2008-May-08 15:10:51 INFO : 0] Server processing command: 'luxTransform' (hash: 2039102042) [Lux 2008-May-08 15:10:51 INFO : 0] Server processing command: 'luxMaterial' (hash: 4064803661) [Lux 2008-May-08 15:10:51 INFO : 0] Server processing command: 'luxShape' (hash: 1943702863) [Lux 2008-May-08 15:10:51 INFO : 0] Server processing command: 'luxAttributeEnd' (hash: 3427929065) [Lux 2008-May-08 15:10:51 INFO : 0] Server processing command: 'luxAttributeBegin' (hash: 684297207) [Lux 2008-May-08 15:10:51 INFO : 0] Server processing command: 'luxTransform' (hash: 2039102042) [Lux 2008-May-08 15:10:51 INFO : 0] Server processing command: 'luxMaterial' (hash: 4064803661) [Lux 2008-May-08 15:10:51 INFO : 0] Server processing command: 'luxShape' (hash: 1943702863) [Lux 2008-May-08 15:10:51 INFO : 0] Server processing command: 'luxAttributeEnd' (hash: 3427929065) [Lux 2008-May-08 15:10:51 INFO : 0] Server processing command: 'luxAttributeBegin' (hash: 684297207) [Lux 2008-May-08 15:10:51 INFO : 0] Server processing command: 'luxTransform' (hash: 2039102042) [Lux 2008-May-08 15:10:51 INFO : 0] Server processing command: 'luxMaterial' (hash: 4064803661) [Lux 2008-May-08 15:10:51 INFO : 0] Server processing command: 'luxShape' (hash: 1943702863) [Lux 2008-May-08 15:10:51 INFO : 0] Server processing command: 'luxAttributeEnd' (hash: 3427929065) [Lux 2008-May-08 15:10:51 INFO : 0] Server processing command: 'luxAttributeBegin' (hash: 684297207) [Lux 2008-May-08 15:10:51 INFO : 0] Server processing command: 'luxTransform' (hash: 2039102042) [Lux 2008-May-08 15:10:51 INFO : 0] Server processing command: 'luxMaterial' (hash: 4064803661) [Lux 2008-May-08 15:10:51 INFO : 0] Server processing command: 'luxShape' (hash: 1943702863) [Lux 2008-May-08 15:10:51 INFO : 0] Server processing command: 'luxAttributeEnd' (hash: 3427929065) [Lux 2008-May-08 15:10:51 INFO : 0] Server processing command: 'luxAttributeBegin' (hash: 684297207) [Lux 2008-May-08 15:10:51 INFO : 0] Server processing command: 'luxTransform' (hash: 2039102042) [Lux 2008-May-08 15:10:51 INFO : 0] Server processing command: 'luxMaterial' (hash: 4064803661) [Lux 2008-May-08 15:10:51 INFO : 0] Server processing command: 'luxShape' (hash: 1943702863) [Lux 2008-May-08 15:10:51 INFO : 0] Server processing command: 'luxAttributeEnd' (hash: 3427929065) [Lux 2008-May-08 15:10:51 INFO : 0] Server processing command: 'luxAttributeBegin' (hash: 684297207) [Lux 2008-May-08 15:10:51 INFO : 0] Server processing command: 'luxTransform' (hash: 2039102042) [Lux 2008-May-08 15:10:51 INFO : 0] Server processing command: 'luxMaterial' (hash: 4064803661) [Lux 2008-May-08 15:10:51 INFO : 0] Server processing command: 'luxShape' (hash: 1943702863) [Lux 2008-May-08 15:10:51 INFO : 0] Server processing command: 'luxAttributeEnd' (hash: 3427929065) [Lux 2008-May-08 15:10:51 INFO : 0] Server processing command: 'luxAttributeBegin' (hash: 684297207) [Lux 2008-May-08 15:10:51 INFO : 0] Server processing command: 'luxTransform' (hash: 2039102042) [Lux 2008-May-08 15:10:51 INFO : 0] Server processing command: 'luxMaterial' (hash: 4064803661) [Lux 2008-May-08 15:10:51 INFO : 0] Server processing command: 'luxShape' (hash: 1943702863) [Lux 2008-May-08 15:10:51 INFO : 0] Server processing command: 'luxAttributeEnd' (hash: 3427929065) [Lux 2008-May-08 15:10:51 INFO : 0] Server processing command: 'luxAttributeBegin' (hash: 684297207) [Lux 2008-May-08 15:10:51 INFO : 0] Server processing command: 'luxTransform' (hash: 2039102042) [Lux 2008-May-08 15:10:51 INFO : 0] Server processing command: 'luxMaterial' (hash: 4064803661) [Lux 2008-May-08 15:10:51 INFO : 0] Server processing command: 'luxShape' (hash: 1943702863) [Lux 2008-May-08 15:10:51 INFO : 0] Server processing command: 'luxAttributeEnd' (hash: 3427929065) [Lux 2008-May-08 15:10:51 INFO : 0] Server processing command: 'luxAttributeBegin' (hash: 684297207) [Lux 2008-May-08 15:10:51 INFO : 0] Server processing command: 'luxTransform' (hash: 2039102042) [Lux 2008-May-08 15:10:51 INFO : 0] Server processing command: 'luxMaterial' (hash: 4064803661) [Lux 2008-May-08 15:10:51 INFO : 0] Server processing command: 'luxShape' (hash: 1943702863) [Lux 2008-May-08 15:10:51 INFO : 0] Server processing command: 'luxAttributeEnd' (hash: 3427929065) [Lux 2008-May-08 15:10:51 INFO : 0] Server processing command: 'luxAttributeBegin' (hash: 684297207) [Lux 2008-May-08 15:10:51 INFO : 0] Server processing command: 'luxTransform' (hash: 2039102042) [Lux 2008-May-08 15:10:51 INFO : 0] Server processing command: 'luxMaterial' (hash: 4064803661) [Lux 2008-May-08 15:10:51 INFO : 0] Server processing command: 'luxShape' (hash: 1943702863) [Lux 2008-May-08 15:10:51 INFO : 0] Server processing command: 'luxAttributeEnd' (hash: 3427929065) [Lux 2008-May-08 15:10:51 INFO : 0] Server processing command: 'luxAttributeBegin' (hash: 684297207) [Lux 2008-May-08 15:10:51 INFO : 0] Server processing command: 'luxTransform' (hash: 2039102042) [Lux 2008-May-08 15:10:51 INFO : 0] Server processing command: 'luxMaterial' (hash: 4064803661) [Lux 2008-May-08 15:10:51 INFO : 0] Server processing command: 'luxShape' (hash: 1943702863) [Lux 2008-May-08 15:10:51 INFO : 0] Server processing command: 'luxAttributeEnd' (hash: 3427929065) [Lux 2008-May-08 15:10:51 INFO : 0] Server processing command: 'luxAttributeBegin' (hash: 684297207) [Lux 2008-May-08 15:10:51 INFO : 0] Server processing command: 'luxTransform' (hash: 2039102042) [Lux 2008-May-08 15:10:51 INFO : 0] Server processing command: 'luxAreaLightSource' (hash: 515057184) [Lux 2008-May-08 15:10:51 INFO : 0] Server processing command: 'luxShape' (hash: 1943702863) [Lux 2008-May-08 15:10:51 INFO : 0] Server processing command: 'luxAttributeEnd' (hash: 3427929065) [Lux 2008-May-08 15:10:51 INFO : 0] Server processing command: 'luxAttributeBegin' (hash: 684297207) [Lux 2008-May-08 15:10:51 INFO : 0] Server processing command: 'luxTransform' (hash: 2039102042) [Lux 2008-May-08 15:10:51 INFO : 0] Server processing command: 'luxMaterial' (hash: 4064803661) [Lux 2008-May-08 15:10:51 INFO : 0] Server processing command: 'luxShape' (hash: 1943702863) [Lux 2008-May-08 15:10:51 INFO : 0] Server processing command: 'luxAttributeEnd' (hash: 3427929065) [Lux 2008-May-08 15:10:51 INFO : 0] Server processing command: 'luxWorldEnd' (hash: 1582674973) [Lux 2008-May-08 15:10:58 INFO : 0] [1 threads] 00:00:05 9195 samples/sec 9195 samples/totsec 0.0852098 samples/pix [Lux 2008-May-08 15:11:03 INFO : 0] [1 threads] 00:00:10 9153 samples/sec 9176 samples/totsec 0.156013 samples/pix [Lux 2008-May-08 15:11:08 INFO : 0] [1 threads] 00:00:15 7337 samples/sec 8601 samples/totsec 0.212772 samples/pix [Lux 2008-May-08 15:11:13 INFO : 0] [1 threads] 00:00:20 8087 samples/sec 8479 samples/totsec 0.275332 samples/pix [Lux 2008-May-08 15:11:18 INFO : 0] [1 threads] 00:00:25 7354 samples/sec 8262 samples/totsec 0.332224 samples/pix [Lux 2008-May-08 15:11:23 INFO : 0] Server processing command: 'luxGetFilm' (hash: 859419430) [Lux 2008-May-08 15:11:23 INFO : 0] Transmitting film samples [Lux 2008-May-08 15:11:23 INFO : 0] Transfering 640000 pixels (145328 samples, little endian false) [Lux 2008-May-08 15:11:23 INFO : 0] [1 threads] 00:00:30 7259 samples/sec 8100 samples/totsec 0.38838 samples/pix [Lux 2008-May-08 15:11:28 INFO : 0] [1 threads] 00:00:35 4653 samples/sec 7622 samples/totsec 0.42438 samples/pix [Lux 2008-May-08 15:11:33 INFO : 0] [1 threads] 00:00:40 3722 samples/sec 7146 samples/totsec 0.453176 samples/pix [Lux 2008-May-08 15:11:36 INFO : 0] Pixels transmition done (8459.91 Kbytes sent) [Lux 2008-May-08 15:11:36 INFO : 0] Finished film samples transmission [Lux 2008-May-08 15:11:38 INFO : 0] [1 threads] 00:00:45 5828 samples/sec 7003 samples/totsec 0.49826 samples/pix [Lux 2008-May-08 15:11:43 INFO : 0] [1 threads] 00:00:50 7784 samples/sec 7079 samples/totsec 0.558478 samples/pix [Lux 2008-May-08 15:11:48 INFO : 0] [1 threads] 00:00:55 6456 samples/sec 7024 samples/totsec 0.608418 samples/pix [Lux 2008-May-08 15:11:53 INFO : 0] Server processing command: 'luxGetFilm' (hash: 859419430) [Lux 2008-May-08 15:11:53 INFO : 0] Transmitting film samples [Lux 2008-May-08 15:11:53 INFO : 0] Transfering 640000 pixels (173398 samples, little endian false) [Lux 2008-May-08 15:11:53 INFO : 0] [1 threads] 00:01:00 6113 samples/sec 6949 samples/totsec 0.655709 samples/pix [Lux 2008-May-08 15:11:58 INFO : 0] [1 threads] 00:01:05 3791 samples/sec 6710 samples/totsec 0.685036 samples/pix [Lux 2008-May-08 15:12:03 INFO : 0] [1 threads] 00:01:10 4095 samples/sec 6525 samples/totsec 0.716718 samples/pix [Lux 2008-May-08 15:12:06 INFO : 0] Pixels transmition done (8866.19 Kbytes sent) [Lux 2008-May-08 15:12:06 INFO : 0] Finished film samples transmission [Lux 2008-May-08 15:12:08 INFO : 0] [1 threads] 00:01:15 5486 samples/sec 6457 samples/totsec 0.759158 samples/pix [Lux 2008-May-08 15:12:13 INFO : 0] [1 threads] 00:01:20 7241 samples/sec 6505 samples/totsec 0.815173 samples/pix [Lux 2008-May-08 15:12:18 INFO : 0] [1 threads] 00:01:25 7920 samples/sec 6588 samples/totsec 0.876443 samples/pix [Lux 2008-May-08 15:12:23 INFO : 0] Server processing command: 'luxGetFilm' (hash: 859419430) [Lux 2008-May-08 15:12:23 INFO : 0] Transmitting film samples [Lux 2008-May-08 15:12:23 INFO : 0] Transfering 640000 pixels (178880 samples, little endian false) [Lux 2008-May-08 15:12:23 INFO : 0] [1 threads] 00:01:30 7410 samples/sec 6633 samples/totsec 0.933767 samples/pix [Lux 2008-May-08 15:12:28 INFO : 0] [1 threads] 00:01:35 4186 samples/sec 6505 samples/totsec 0.966147 samples/pix [Lux 2008-May-08 15:12:33 INFO : 0] [1 threads] 00:01:40 4504 samples/sec 6406 samples/totsec 1.00099 samples/pix [Lux 2008-May-08 15:12:34 INFO : 0] Pixels transmition done (8936.39 Kbytes sent) [Lux 2008-May-08 15:12:34 INFO : 0] Finished film samples transmission [Lux 2008-May-08 15:12:38 INFO : 0] [1 threads] 00:01:45 6521 samples/sec 6412 samples/totsec 1.05144 samples/pix [Lux 2008-May-08 15:12:43 INFO : 0] [1 threads] 00:01:50 7843 samples/sec 6476 samples/totsec 1.11211 samples/pix [...]
Using Network Rendering under XP/Vista
If you are using Windows XP or Vista, you could create .bat files to automate the process of starting a rendering server; this way you don't need to use the command line. If your location of LuxRender is different from the default installation you have to adjust this to the appropriate location.
Creating a .bat file is quite a simple procedure: just open a new text document (for example in Notepad), place the code in it (see below), save and change the extention from .txt -> .bat
For the servers (also known as slaves):
cd C:\Program Files\Luxrender v0.5 START Luxconsole -s
If you have more then one core available on the server you can use this (the number 2 applies the the number of cores, increase it if you have more available):
cd C:\Program Files\Luxrender v0.5 START Luxconsole -s -t 2
Save this .bat file on your desktop and name it for example "StartLuxrenderServer.bat" (or StartLuxrenderSlave.bat). When you want to fire up the server just double click on the file and voila, you will see that the server account gets activated.
For the clients (also known as master):
cd C:\Program Files\Luxrender v0.5 START Luxconsole -u 192.168.0.xxx -u 192.168.0.xxx -u 192.168.0.xxx -u 192.168.0.xxx //192.168.0.xxx/lux/test.lxs
Replace the xxx with the correct IP of the servers, replace the number of servers to the ones you have available and set the correct path to the scene you want to render. Save this .bat file on your desktop and name it for example "StartLuxrenderClient.bat" (or StartLuxrenderMaster.bat). When you want to fire up the server just double click on the file and voila, you will see that the client account gets activated and connects to the servers automatically, sit back and relax ;) the rendering starts ...
If you want to even do even more automatisation you can look here or here.
Known Limitations
Luxrender v0.5 doesn't require to restart the server at each rendering but the error handling code is still quite weak and you may have to restart the server in case of an error or an unexpected termination of the client.
There is a memory leak in the server at the end of each image rendering. This means that after doing a number of renderings in a row, you will have to restart the server in order to avoid out of memory errors.
All texture maps have to be in the same directory as the scene and you have to use paths relative to the scene directory [Limitation removed in v0.6].
Luxrender v0.5 doesn't support named materials (or texture names) with spaces in their name (i.e. instead of "corrugated sheet", just use "corrugatedsheet" instead) [Limitation removed in v0.6].
Render farm
Including the support for all features (i.e. job queues, accounting, authentication, etc.) required by a render farm is out of the scope of Luxrender however you can easy integrate Luxrender in one of the existing Distributed Render Queue Managers. DrQueue looks like one of the best open source option available at the moment.
DrQueue
DrQueue is an open source (GPL) Distributed Render Queue Manager. A detailed description of the features is available here.
Using DrQueue with Luxrender
LuxRender is supported in DrQueue in the webinterface DrQueueOnRails (through Ruby bindings). It does not yet work with the GTK gui drqman. Please try out the 0.64.x SVN branch at https://ssl.drqueue.org/project/browser/branches/0.64.x .
You can find all needed additional information in their Trac wiki and community forums.