• We have updated our Community Code of Conduct. Please read through the new rules for the forum that are an integral part of Paradox Interactive’s User Agreement.

Furleppe

Capitaneus Prussiae Generalis
102 Badges
Feb 26, 2011
494
1.534
  • Crusader Kings III
  • Tyranny: Archon Edition
  • Surviving Mars
  • Arsenal of Democracy
  • Tyranny - Bastards Wound
  • Surviving Mars: Digital Deluxe Edition
  • Stellaris: Lithoids
  • Hearts of Iron IV: La Resistance
  • Stellaris: Federations
  • Tyranny - Tales from the Tiers
  • Battle for Bosporus
  • Europa Universalis 4: Emperor
  • Stellaris: Necroids
  • Stellaris: Nemesis
  • Victoria 3 Sign Up
  • Hearts of Iron IV: By Blood Alone
  • Hearts of Iron IV: No Step Back
  • Hearts of Iron 4: Arms Against Tyranny
  • Europa Universalis IV
  • Europa Universalis IV: Call to arms event
  • Cities: Skylines - After Dark
  • Crusader Kings II: Jade Dragon
  • Europa Universalis IV: Mare Nostrum
  • Europa Universalis IV: Pre-order
  • Victoria 2: Heart of Darkness
  • Victoria 2: A House Divided
  • Europa Universalis IV: Res Publica
  • Hearts of Iron IV: Death or Dishonor
  • Europa Universalis IV: Mandate of Heaven
  • Cities: Skylines - Mass Transit
  • Age of Wonders III
  • Crusader Kings II: Monks and Mystics
  • Cities: Skylines - Green Cities
  • Hearts of Iron IV: Together for Victory
  • Europa Universalis IV: Cradle of Civilization
  • Cities: Skylines - Natural Disasters
  • Stellaris: Leviathans Story Pack
  • Stellaris: Digital Anniversary Edition
  • Europa Universalis IV: Rights of Man
  • Crusader Kings II: Reapers Due
  • Crusader Kings II: Holy Fury
  • Imperator: Rome - Magna Graecia
  • Stellaris: Ancient Relics
  • Cities: Skylines - Campus
  • Imperator: Rome Sign Up
  • Prison Architect
  • Imperator: Rome Deluxe Edition
  • Europa Universalis IV: Golden Century
  • Hearts of Iron IV: Expansion Pass
  • Cities: Skylines Industries
In the near future I'm probably buying a new Ryzen 5800X3D, and it got me wondering. Does extra cache (main feature of this CPU) affects performance in any meaningful way in PDX games? Or maybe it doesn't matter as much as single-threaded performance? I don't know much about this topic, and it would be interesting if someone who does, had an answer for this question.
 
  • 1Like
Reactions:
Solution
I can only speak in generic terms, of course, not having access to either CPU so I don't have first hand data.

A (CPU) cache only provides it's benefits if the code and/or data actually resides inside the cache. In other words, if the algorithms you run are small enough to fit inside the cache, either in whole or, at the very least, partial.

If you run a procedure (a piece of code) from start to finish that's so large it doesn't fit inside the cache, then rerunning that procedure for the second time will run as if it wasn't cached at all. Because, by the time you reach the end of the procedure, the code at the start will have been cleared from the cache to make room for the bit in the middle and the end. And running the bit at the...
my best guess is that should have a good impact on performance. There is a short benchmark run of a 5800x3d with factorio and there it really shines, +50% over 5800x and 10% over 12900k.
Techpower may be doing a benchmark soon with Stellaris (https://www.techpowerup.com/forums/...le-would-like-in-the-next-cpu-rebench.293862/)
But since today should be the lifting of reviews embargo, there should be coming out new reviews of it, hopefully also with games which may actually benefit of it.
 
  • 1
  • 1Like
Reactions:
If anyone gets 5800X3D and runs some benchmarks on Paradox games I definitely would be interested to hear about them, especially about Stellaris how fast days progress in the late game. I could upgrade my 3800X to it but the prices seem pretty expensive least here.
 
  • 2Like
Reactions:
Our hardware genius @jpd might have some useful input on this!
 
I can only speak in generic terms, of course, not having access to either CPU so I don't have first hand data.

A (CPU) cache only provides it's benefits if the code and/or data actually resides inside the cache. In other words, if the algorithms you run are small enough to fit inside the cache, either in whole or, at the very least, partial.

If you run a procedure (a piece of code) from start to finish that's so large it doesn't fit inside the cache, then rerunning that procedure for the second time will run as if it wasn't cached at all. Because, by the time you reach the end of the procedure, the code at the start will have been cleared from the cache to make room for the bit in the middle and the end. And running the bit at the start will then have pushed out the bit in the middle (because that, now, is the oldest), and running the bit in the middle will have pushed out the bit at the end (because that, again, is now the oldest). Effectively, running such a procedure for a second time continuously needs access to the next bit of code that just has been cleared from the cache to make room for the bit that's running now. It's chasing it's own tail, so to speak.

The same applies to data. If the code you run manipulates a pool of data that's too large to fit in the cache, and it does it repeatedly on that data in the same order, then the data manipulated first will have been pushed out of the cache by the time your second loop starts.

I'm not a coder for Paradox, so I don't know how exactly the game's algorithms run, or how (much) data is manipulated in tight loops (where the benefits of a cache really shine). So you probably have some benefits from a larger cache. But I can't say for certain, nor can I say by how much.
 
Solution
At minimum, Europa Universalis II benefits greatly from an L3 cache, running the game on a (Mac but windows is the same in this regard, just easier example) G4 at 733 MHz without an L3 cache is very choppy and stutters when many units or constructions are in play on the map, but a G4 at 733 with 2MB L3 is smooth and no stutter. Eu2 is 20 years old, and is almost exclusively reliant on CPU and RAM, but I do believe anything requiring cached calculations will be much better with more L3. Again, this is not the most relevant example given the age of the Europa engine, but it should be an indication that this style of game is affected by cache. Cache and RAM.
 
Thanks for the answers, in the end I did get the 5800X3D, CK3 and Stellaris do feel smoother, but that's purely anecdotal, and I have no knowledge on how to do proper testing.

But to those interested, I found this thread on Reddit, where user tested late-game Stellaris and the gains (compared to 2700X) seem to be significant:
5800X3D Stellaris benchmark

Update: And there, comparison with 5900X:
https://github.com/xxEzri/Vermeer/blob/main/Guide.md#stellaris
 
Last edited:
  • 1Like
  • 1
Reactions:
Interesting, that is quite noticeable so I think even if upgrading from 3000 series CPU the gains would be pretty big as 3700X compared to 2700X does not have that kind of performance difference in single-threaded applications.