GPU Usage?
Posted: Mon May 14, 2018 2:38 am
I am curious to know how much Factorio utilizes the GPU during gameplay?
The game is already ridiculously well optimized - see FFF 176. GPUs are not well suited to things that are largely single-threaded - I'm not an expert on the topic, but I have looked into GPUs some, and one type of problem they are especially good at is literally called "embarrassingly parallel". Many entities in Factorio are dependant on other entities around them (i.e. belts and inserters and assembly machines, steam engines and pipes and heat exchangers and boilers and inserters and belts and inserters and chests and inserters and trains and signals and inserters and belts and miners.) Also note that your GPU isn't entirely unutilized - it still has a game to run, and what about things such as integrated graphics or very old graphics cards? Do you let the GPU be a bottleneck on UPS? Do you add a system to dynamically allocate tasks between the GPU and CPU? Even if you do make use of the graphics card, you'll still probably be bottlenecked by memory bandwidth and/or latency. Also note that adding this would be complex, making future changes more difficult and likely adding bugs.Maddhawk wrote:Not sure why you moved this thread. I made it to collect information on how the game is processed so I can brainstorm ideas to give to the devs to help them better optimize belt performance so the question of system performance can be ignored in the bots vs belts debate.
Since you say the GPU is being vastly underutilized, then I wonder if it can't be arranged to use the GPU's spare overhead processing power to handle many of the calculations the game has to perform to update the status of each square on the grid in game. Also why only single thread? I don't think single core CPUs even exist anymore unless a rig is like 20+ years old. That means I essentially have 11 threads unused and a GPU that is more or less just idling.