My FPS dropped from a stable 60 to 20 when I added a second monitor to my Windows 10 machine. But when I don't focus the Factorio windows the FPS instaltly jumps to 60.
Sometimes when I reboot or restart or remove the second screen it gets fixed. My PC isn't the slow part. I can run at 100 FPS/500 UPS with a big factory when it does not limit while focused.
[0.15.3] 20 FPS lock: G-sync not supported.
-
- Burner Inserter
- Posts: 9
- Joined: Thu Jul 02, 2015 3:34 pm
- Contact:
[0.15.3] 20 FPS lock: G-sync not supported.
Last edited by M60Beowulf on Sun Apr 30, 2017 12:27 pm, edited 1 time in total.
Re: [0.15.3] 20 FPS lock when ingame.
Thanks for the report,M60Beowulf wrote:My FPS dropped from a stable 60 to 20 when I added a second monitor to my Windows 10 machine. But when I don't focus the Factorio windows the FPS instaltly jumps to 60.
Sometimes when I reboot or restart or remove the second screen it gets fixed. My PC isn't the slow part. I can run at 100 FPS/500 UPS with a big factory when it does not limit while focused.
Do you have Vsync turns on or off?
Could you provide some information on your GFX card, driver and other system specifications
Re: [0.15.3] 20 FPS lock when ingame.
That sometimes happens with g-sync displays. See viewtopic.php?f=173&t=45236
-
- Burner Inserter
- Posts: 9
- Joined: Thu Jul 02, 2015 3:34 pm
- Contact:
Re: [0.15.3] 20 FPS lock when ingame (G-sync)
Disabling G-sync made it possible to play Factorio at 60 FPS. But of course now I need to either look at a stuttering with V-sync screen because of the discrepancy of 60 FPS game vs 100 Hz monitor, or I need to look at tearing. I also can't simply increase the game speed to 100 UPS because then both game play gets weird and achievements can't be unlocked. I don't think any of these solution are at all what I'm looking for. I think I'll simply unplug my other monitor, reboot and play Factorio until you find an actually solution. Is this because of Nvidia driver problems, or because this is the only game I ever played that is locked in this way where the fps and engine are linked. Why don't you just add support for G-sync like every piece of software I use. I mean, my calculator app, browser and every other steam game I have work with it.
Re: [0.15.3] 20 FPS lock: G-sync not supported.
Unfortunately, I don't know how to add support for G-sync. As far as I could find out, G-sync is something completely invisible to applications, and graphics driver does it. Application just waits for v-sync as usual, and driver does g-sync instead and signals application as if v-sync happened.
On your screenshot in timing info logs, "Flip" is how many milliseconds it took Direct3DDevice::Present() to run. And Direct3DDevice::Present() just finishes rendering of queued draw calls on GPU (which shouldn't be problem since your are able to run 100 FPS without problems), waits for v-sync (if enabled) and switches back buffer with front buffer. So with G-sync I would expect it to be < 1 ms, not 46 ms on average.
On your screenshot in timing info logs, "Flip" is how many milliseconds it took Direct3DDevice::Present() to run. And Direct3DDevice::Present() just finishes rendering of queued draw calls on GPU (which shouldn't be problem since your are able to run 100 FPS without problems), waits for v-sync (if enabled) and switches back buffer with front buffer. So with G-sync I would expect it to be < 1 ms, not 46 ms on average.
-
- Burner Inserter
- Posts: 9
- Joined: Thu Jul 02, 2015 3:34 pm
- Contact:
Re: [0.15.3] 20 FPS lock: G-sync not supported.
Exactly, and why did it change by adding another monitor. Is it just because that other monitor isn't 100 Hz, but 60 Hz? It worked perfect with one monitor. It refreshed exactly when the frame was rendered. I think there is something fishy going on. Cheating and going to a high game speed (I went up to 500 UPS), the frame rate went up and up until it hit 100 FPS and stayed there. But why does the Flip take so much less time by not highlighting the window? That doesn't make any sense. I would assume windows process switching giving higher priority to those processes with user-interaction. But for now I can luckily still play with one monitor attached to my machine.