I’ve managed to get swarm up and running. I have three systems in the network for this setup. I’m running the swarm coordinator in my primary system which has the unreal project open (I will be using this system to initiate the light building). I have two more systems, one with unreal engine installed and one without. As soon as I build lighting, the coordinator starts the jobs on all the three systems. Shown here.
And as you can see, the tasks are not equally distributed. My primary system where I have the coordinator running is doing most of the job. And the other two finish very quickly.
I have even gone through the log tab in the swarm agent and found that the remote connections were closed by the coordinator. But what I cannot figure out is, WHY?? Here is pic of the log
I need to get this working!! I have a pretty big scene and it takes too long to build in one system. I have also attached a text file with the full log. Someone please help!!
[link text][3]
6 machines running.
After around 6 minutes 5 of them are done.
The last machine (not the coordinator) takes 40 minutes to finish.
I have noticed that after the initial 6-7 minutes Swarm Agent is at a Distributed Progress of 99,80% or 99,90%. The last 0,10 to 0,20% takes ages to finish.
You’re further along than me, I can’t get Swarm distributing jobs at all to my 3 render pc’s. Documentation on swarm is awful, and lots of people seem to be having problems with it. Considering building and rendering is a timely aspect of production, you’d think this would be a feature that is implemented correctly.
Since over 1 year passed we could gain huge experience with Swarm Agent and Coordinator. You have to consider some things when building lighting.
Swarm Coordinator
First of all let Swarm Coordinator run on startup on 1 machine and run Swarm Agent on any machine you want to connect (preferably also on startup).
Swarm Agent
The first time you do this with each Swarm Agent instance, you need to set it up properly (see attached image). Thus, make sure your CacheFolder is a valid path (no ÄÖÜ etc.). The red marked settings (except the last one) have to be the same on all machines. In my case “CHRIS” is the name of the machine on which the Swarm Coordinator is running, so change it to yours. Make sure all your machines are in the same network, of course.
Proper Meshes
The point, why one machine will sometimes do the most part of the work on its own is due to the fact, that there are one or few huge lightmaps to be calculated. One Swarm Agent can only calculate one lightmap after another, maybe one per CPU, but nevertheless networked Swarm Agents love simple small meshes and hate doing work on larger ones.
Imagine a house with a living room with lots of props like couches, table, chairs, picture frames and so on. Those assets will be calculated so fast since the mostly will have lightmaps of 16 to 256 pixels and few bounce lights. But when it comes to the house you may have all your walls, floor and ceiling in one huge mesh. To get proper shadows you even cranked up the lightmap to 2.048 pixels. The one Swarm Agent that wants to calculate the room will take a long time. And even longer how many light bounces and meshes you have in the room.
My Advice
Split up meshes into reasonable smaller parts, so more CPUs can calculate those parts simultaneously and to maybe get smaller lighmaps overall with better shadow quality. And read through the UE4 performance guides about modelling and lightbuilding, which could help on that way.