It seems Stellaris has some problem with handling *lots* of resource icons on planets.
Having a bunch of late game planets visible, 200+ icons, makes the game crawl at 14 FPS. And it's consistent 14 FPS, when paused.
This is resolution independent, other than just seeing more or fewer icons at the same time, as is the detail level.
AMD GPUs here (both 560 and Vega 64) with new 19.1.2 drivers (older were same performance, at least after 17.x), one is Sandy Bridge E3 1275 the other is AMD Threadripper 1950x.
CPU and GPU is not getting pegged to max.
Radeon measurement overlay says near 40% GPU on 560 which even gets downclocked due to no load and near 20% of each CPU on that E3 1275.
Just zooming out enough to hide them -> instant 60+ FPS. Planet view, which has tops 20 icons -> 45+ FPS. Early game, similar, there are few icons.
When planet resources aren't visible (e.g. enemy empire), it's also fast.
It's definitely not related to fill rate because it's so few polygons and the textures are supposed to be very fast and constant.
Maybe the textures are being reuploaded each frame, which could bottleneck on GPU memory or bus bandwidth - that's only a guess. Or perhaps the icons are being created and destroyed each frame, hitting some driver lock and killing performance without loading CPU by waiting on some lock in code.
And finally, it is possible that planetary resources are protected each with a lock and some of them sleep when even mildly concurrent instead of spinning just a tiny bit longer and getting CPU fast.
(Yes, I'm a programmer, I did realtime applications.)
This thing is present since version 1.0, though that one showed fewer icons, so it was less severe than in new 2.2.x.
Anyone else seen this and/or debugged it? Any mod to hide them completely for testing and actual gameplay purposes?
Having a bunch of late game planets visible, 200+ icons, makes the game crawl at 14 FPS. And it's consistent 14 FPS, when paused.
This is resolution independent, other than just seeing more or fewer icons at the same time, as is the detail level.
AMD GPUs here (both 560 and Vega 64) with new 19.1.2 drivers (older were same performance, at least after 17.x), one is Sandy Bridge E3 1275 the other is AMD Threadripper 1950x.
CPU and GPU is not getting pegged to max.
Radeon measurement overlay says near 40% GPU on 560 which even gets downclocked due to no load and near 20% of each CPU on that E3 1275.
Just zooming out enough to hide them -> instant 60+ FPS. Planet view, which has tops 20 icons -> 45+ FPS. Early game, similar, there are few icons.
When planet resources aren't visible (e.g. enemy empire), it's also fast.
It's definitely not related to fill rate because it's so few polygons and the textures are supposed to be very fast and constant.
Maybe the textures are being reuploaded each frame, which could bottleneck on GPU memory or bus bandwidth - that's only a guess. Or perhaps the icons are being created and destroyed each frame, hitting some driver lock and killing performance without loading CPU by waiting on some lock in code.
And finally, it is possible that planetary resources are protected each with a lock and some of them sleep when even mildly concurrent instead of spinning just a tiny bit longer and getting CPU fast.
(Yes, I'm a programmer, I did realtime applications.)
This thing is present since version 1.0, though that one showed fewer icons, so it was less severe than in new 2.2.x.
Anyone else seen this and/or debugged it? Any mod to hide them completely for testing and actual gameplay purposes?
Last edited: