Unreal Distributed on multiple computers (Compile the engine, projects, and shaders) (Linux)

Hello!
I’ve made a small software that allows to run other programs distributed in several computers.

And lately i’ve managed to use it to compile the engine, Unreal projects, and shaders on multiple computers.
This software works on linux/windows/mac, but i just integrated that with UE on Linux only since that’s what i use.
I also haven’t had the time to integrate it with android/ios crosscompile. though i used this project to compile android under another toolchain before. so it’s doable.

Why?

  1. It’s fun and i love distributed computing.
  2. UE goes ultra fast. Super useful if you need to make builds or full builds every once in a while.
  3. You might have an old pc. Which you can repurpose to speed you up, even if it’s an older cpu. Or you can get a beefy pc to be used as compile farm to share among your team; and reduce the cost, amortize the investment, and maximize utilization (and heat the room in winter (and summer)).

It’s also free and open source. Making sure you're not a bot!

Big thanks to the team at Epic which made the toolchain for Linux so awesome and easy to work with! (and very posix). <3

Here’s a video for compiling projects and ue:

And here’s one on compiling shaders:

And here’s another one more generic that shows how to use this technique with other software (povray).

1 Like

i’ve updated the link. i’ve moved to codeberg.

nowadays you can also use on 5.5+ horde Horde Unreal Build Accelerator and Remote Compilation Tutorial for Unreal Engine | Unreal Engine 5.6 Documentation | Epic Developer Community

though my program would allow you to share resources from regular machines into a pool.
for example each user can share a specified % of their resources. such that they don’t notice when it’s being used, but in combination it would help other users.
i’m unsure if you can do this with horde or not, i think you could.

and the other benefit is that you can run random programs with random parameters as well.

just a note: this works on linux and mac only (i haven’t tested mac). (horde works on windows i think, i’m not sure it works on linux, maybe only from 5.6 onwards)

i’m not actively working on this project at the moment, but feel free to use it and share issues.