Is a Linux Cluster possible with Blender?


I’m trying to build a Cluster with 2 PC’s(an i7 & i5 Core) so that Blender is showing me 12 Cores for rendering.

I have done a working LTSP Thin Client Project with Ubuntu Linux and i was surprised how fast the client machine was.
Thin Clients run over PXE boot and they use the CPU Power of the Server Machine over the LAN. (Yes, CPU speed over your LAN!)

After the Thin Client Project i thought it would be nice if i could make a Cluster for Blender. I’ve tried so many hours to get the Cluster working with Blender but i was not able to do so.
I know there is a Netrender Plugin for Blender and some other tools like Lokirender.

I’ve tried Openlava 3.2.0 with Ubuntu which gives me an Error with x11 forwarding on the Command Line when i try to start Blender.

And then i tried Ubuntu with MOSIX 4.4.0 which also gives me an exception Error with Blender.

On both (MOSIX & Openlava) i can run some Command Line applications and with MOSIX i could launch XTERM, a x11 GUI Terminal. (but what should i do with a 12 Core GUI Terminal? :slight_smile: )

There is also a Programm VCL which makes a GPU Cluster. Works with OCLHashcat, a GPU cracking utility also used with the Command Line. I could not try VCL because i have only 1 GPU.

And then there is RocksClusters which i will try soon.

Is it somehow possible to make a working Cluster and run Blender with all Cores on it? And if so how does Blender behave?
I would make a Tutorial if i get the Cluster working.

I don’t know about clustering or Thin_client, but did you try start Blender without any UI-stuff:
./blender --background

It should not need windowing to work.

Yes, Openlava Cluster works with ./blender -b but i really want to use all Cores in the Blender GUI because i want to have a faster Preview render of my work. Typing each time ./blender -b and which frame i want to render and then opening the rendered Image takes too long.

I found LuxRender which seems to Render 1 image at a time with all Cores (Client+Server) enabled. There is also LuxMerger which merges images rendered on different Computers. I have to setup my 2 PC’s and test LuxRender whether it is a time saver.

Cycles also has this client/server feature but is unfinished.

I have been playing with it a little and what is implemented works pretty well. I could start blender on a dual core laptop and use 12 threads of my desktop both for rendering and 3D view. The biggest limitation is that, as stated in the comments in device_network.cpp, it only works with one server. If that issue could be fixed, network rendering would be possible.