Upgrade machines for UE4

Were all out on holiday currently and I was looking to retrofit the office machines whilst everyone is out, at the moment the office machine specs are I7 3770K’s, 16GB DDR 3 1600 RAM, GTX 780 some have Corsair SSD’s some don’t which is the first thing to change.

I’m just wondering if upgrading to a 5830K, 32 GB of DDR 4 2133 is going to make a big difference when baking and compiling shaders? Because we are building quite a large game it takes up quite a bit of time when prototyping.

The CPU certainly makes a difference. But for the system you have in mind you would also need to renew all the motherboards too in order to install the new CPUs and DDR4 RAMs. I don’t think having 32GB of DDR4 RAMs would make any noticeable difference compared to the 16GB DDR3 RAMs you already have. I’d say just getting 4790K CPUs would do the best. (Performance per $$$ wise).

Good luck.

The memory would be a bit faster but mostly that will affect the ability to build lighting for large maps since everything has to be loaded into memory for that. Your system is actually very good, so I don’t know that you’re going to get as much of an improvement as you want. For improving shader compiling you would want to get a faster CPU in case you still want to do that.

I have a 5960x with 16gb DDR4, while compile times drastically dropped (compared to the i5 2500k 16gb ddr3). Compiling was getting very annoying, and that why i mainly upgraded (plus would last another 5-6 years). The extra cores/threads helped compiling drastically, all of thread/cores are maxed during compiling (never timed it but anecdotally, full engine compile went from ~45 min -> 10-15 min). Compiling shaders got much better. The in-editor, in-game fps & overall performance only marginally got better (like really, 6-7 fps max and that was from 2500k->5960x! and DDR3 -> DDR4).

We can’t really compare ddr3 to ddr4 directly. Personally its probably not worth it unless you are compiling the engine and the game/shaders a bunch.

higher clock rates of 4790k may be better than more cores/threads at lower clock rates for gaming/in-editor parts. Just my two cents with processor.

Another thing to consider for things like shader times is to set up a shared DDC. The Derived Data Cache is a hierarchical write-thru cache, so you can set up a folder on a shared network drive in addition to the one on each individual machine. This way, only the person making the new material or new texture pays the shader compilation cost/compression cost, and anyone else syncing that asset will grab the derived data from the shared DDC and write-thru to their local DDC.

Cheers,
Michael Noland

Interesting stuff, really appreciate everyone’s feedback… We have a file server, so I’ll give that a try too Michael…

I need to set up the swarm agent again, it’s been on the “list to do” for a while as we have 23 machines and only 17 in use. So that should help as well with the lightmass duties.

So in the end I went for a mix of I7-5820K’s / 4790K’s (I saw the price of the 5960x and could feel my eyes dry up), turns out some of the machines were on 3770S not K. Now each machine has 16GB of DDR4 2133 or DDR3 1800 and it turns out only four of the machines had SSD’s and they were quite old. So they have all been replaced with crucial M550’s 512GB’s and a 1TB WD raptor for backup storage… There were two machines still on our old HD 7990’s but I had some 780’s spare. (I still use my 780m laptop from time to time, but I’m slowly giving up on that for anything but testing)…

I’m not back in the office until Tuesday next week, so not had really any chance to properly test them out with UE4 yet. I might / might not need a hand with performantly offloading lightmass to the servers. But again, thanks for everyone’s feedback…

I read somewhere that 32gb of ram is required for a full game compile, can a developer confirm this?

And if so, can this be spread across multiple machines using a the swarm or does the 32gb need to be on one local machine?

What do you mean by compile? Compiling from the source doesn’t need lots of memory like that. If you’re building your game where it renders the lighting then the amount of memory limits how much content it can render lighting for since it has to load all geometry, textures, and lightmaps. Cooking and building the game after it’s been made doesn’t take that much power either.
Swarm is for network rendering for lightmass, it speeds up rendering by using machines on the network, but each machine needs to have enough memory to load the all of the assets just like normal.

I got the 32gb ram ballpark figure and compile information from the highest rated reply on this thread.

Thank you for clarifying and going into detail as to what the extra ram achieves, much appreciated.

One last question, is it true what Stephen Ellis says about diminishing returns beyond 32gb of ram?

16GB is already a ton of RAM and most things would only use up around half to 2/3rds as much, so between 8-12GB RAM. Unless you are compiling massive amounts of data I don’t think you’ll see much of a benefit, if at all, from investing in 32GB RAM. 16GB RAM is already more than enough for basically everything and that’s enough to hold a ton of data in memory.

The only thing you’d really benefit from if you already have 16GB RAM is a faster CPU/GPU/SSD. I don’t think you’d benefit much at all past DDR3-2133mhz as 1600mhz is fast enough for most things. DDR4 may have a fairly significant performance improvement but that is offset at least for now as although the DIMMs have the capability to reach in excess of 3000mhz the downside is increased CAS latency which should get better as DDR4 reaches maturity.

RAM controls the amount of things that can be loaded, ultimately it comes down to if you want to run a program or render something and it needs a lot of RAM and you don’t have enough. If you have enough then getting more won’t improve anything. At a very low level getting more memory can improve performance since the system isn’t trying to juggle content, but beyond like 4GB-8GB it won’t matter. The only thing at that point to improve performance with memory is to get faster memory which would improve how fast it can read and write to memory.

I have a 4790K with 32Gb RAM and a Geforce 760 4Gb and the editor lags for me. It feels very sluggish. Therefor my opinion tells me hardware doesn’t do much in terms of a fluid experience.

^that’s odd, on my work machine I don’t get lag, i7 3820 16GB RAM and GTX 660
I only get weird hanging for a minute after it’s just finished building lighting, but it goes smoothly after that.

Yeah, I guessed my case was an isolated case, or not very common atleast. I’ll do a complete computer wipe when Win10 comes out, I’ll see then if that fixes it.

Was doing some map compiling tests last night and on a medium sized map (16 players max), the ram usage was exceeding 8gb, i can only assume that a map twice size would take 16gb to compile?

Having 3D modelling programs open along side Unreal 4 compiling, for big maps, it’s looking like 24gb would be the ideal amount of ram.

Not necessarily, the thing with large maps is the stuff like foliage which you usually have a high density, in game it only displays a small amount, but building lighting loads all of it.