Page 1 of 1

Factorio runs better on Intel iGPU, than GTX 960m

Posted: Wed Mar 07, 2018 7:40 pm
by Ubertwink
I've got some weird issues that involve Factorio, i5-6300hq (with HD 530 graphics), GTX 960m (2gb dedicated VRAM) and Vsync.

This is what happens when I look at somewhat populated area:
Fig. 1
Key features:
a. Out of 33.3ms frame cycle, 27.5 is spent on flip[off];
b. Vsync is DISABLED both in Factorio and NVCP;
c. Firing up Task manager and GPU-Z shows us following:
Fig. 2
d. You can clearly see that the gpu has plently of performance overhead, basically idling at 1/3 load, however for some reason Task manager shows almost full GPU load when I am tabbed into the game;
e. Switching the renderer to a vastly inferior HD 530 in the NVCP makes the game run without any problem on the same settings, at about 3/4 iGPU load:
Fig. 3
I would appreciate any dev comments and willing to cooperate to investigate this problem further down the line.

Edit: running latest Nvidia drivers. Also, disabling Vsync required me to reboot my laptop for it to finally work, and gpu load in Task manager became similar to what's reported in GPU-Z.

Re: Factorio runs better on Intel iGPU, than GTX 960m

Posted: Wed Mar 07, 2018 7:58 pm
by posila
Hello again :)

First of all, post here logs from running both on HD 530 and on GTX 960m, please. My suspicion is that they weren't running on the same settings, but instead they were using default values for some of the settings, and the default values were different for the two cards. Even if they are the same, I don't know what they are.

FPS being exactly 30 while GPU Load and Memory Controller Load both being low makes me think v-sync is being forced somewhere.

Re: Factorio runs better on Intel iGPU, than GTX 960m

Posted: Wed Mar 07, 2018 8:34 pm
by Ubertwink
I restarted my laptop and that seemed to help to get rid of Vsync. However, it seems like I managed to lock it up again in "on" state by turning it on and off. Also, the 30 FPS lock on a 960m is gone for some reason.
Logs:
960m.log
(4.87 KiB) Downloaded 138 times
hd530.log
(4.75 KiB) Downloaded 138 times
Both GPUs offer not the most pleasant gameplay experience in the world, with plenty of stutters here and there (probably vsync-related). The log files show that indeed graphic settings do default to lower values when using HD 530, but seeing the same stutter on a 960m is weird because of very low GPU and VRAM usage.

Re: Factorio runs better on Intel iGPU, than GTX 960m

Posted: Wed Mar 07, 2018 10:44 pm
by Loewchen
See as well: 58204

Re: Factorio runs better on Intel iGPU, than GTX 960m

Posted: Thu Mar 08, 2018 11:51 pm
by Ubertwink
OK, this is not funny anymore.
In-game
GPU-Z
First part of factorio-current.log, GTX 960m
The laptop was rebooted and I havent't touched Vsync settings whatsoever. They are disabled everywhere.
This does NOT happen on an integrated HD530. Vsync is still there for some reason, because I see no tearing, but it doesn't drop to 30 FPS without any valid excuse to do so.

Re: Factorio runs better on Intel iGPU, than GTX 960m

Posted: Fri Mar 09, 2018 12:14 am
by impetus maximus
if you disable v-sync in game and use an aero theme in widows you will get v-sync.
that is how i run Factorio on my machine. make sure you select 'prefer maximum performance' in nvidia control panel.
also may want to see what drivers people are running. with nvidia, latest doesn't necessarily mean greatest. especially if your card is a generation+ old.

Re: Factorio runs better on Intel iGPU, than GTX 960m

Posted: Fri Mar 09, 2018 12:33 pm
by Ubertwink
impetus maximus wrote:if you disable v-sync in game and use an aero theme in widows you will get v-sync.
This is only true for Win7 and windowed / borderless applications. I run it on win10 in fullscreen.

Re: Factorio runs better on Intel iGPU, than GTX 960m

Posted: Fri Mar 09, 2018 12:43 pm
by posila
Thanks for the logs. The settings differ from each other, but it runs basically with default values when you run it on GTX 960M, and the card should be able to handle those settings easily (and I think it does handle it, as you can see from GPU-Z, and 30 FPS lock comes from something being broken or misconfigured between Intel and nVidia driver).

Factorio currently doesn't support exclusive fullscreen, only borderless fullscreen. Desktop Window Manager (which was called Aero in Win Vista and 7) can't be disabled in Win 8 and newer.
We will probably add exclusive fullscreens support before 1.0 is released, because of issues like this.

Also, are you running on buttery or is your laptop plugged in to charger when you do these tests?
See also: https://superuser.com/questions/807037/ ... tery-power
https://steamcommunity.com/app/252950/d ... 059248015/

Re: Factorio runs better on Intel iGPU, than GTX 960m

Posted: Sat Mar 10, 2018 6:19 pm
by ttapada
Also, are you running on buttery or is your laptop plugged in to charger when you do these tests?
See also: https://superuser.com/questions/807037/ ... tery-power
https://steamcommunity.com/app/252950/d ... 059248015/
You got it! I never noticed the pattern...
That was exactly what was happening to me, my settings were limiting FPS on battery but not when plugged in.

Thank you for your help!

Re: Factorio runs better on Intel iGPU, than GTX 960m

Posted: Mon Mar 12, 2018 4:44 pm
by Ubertwink
Thanks for the reply.

I tried this with charger both plugged in and not and it doesn't change the outcome, since it's not FPS limited, but has strange dips when something complicated is on the screen. I also made sure to test with maximum performance power plan, both in Windows settings and NVCP.

I might do additional testing with monitoring software like MSI Afterburner to see what the frame times look like.

Re: Factorio runs better on Intel iGPU, than GTX 960m

Posted: Tue Mar 13, 2018 2:17 pm
by Ubertwink
posila wrote:Also, are you running on buttery or is your laptop plugged in to charger when you do these tests?
See also: https://superuser.com/questions/807037/ ... tery-power
https://steamcommunity.com/app/252950/d ... 059248015/
Yesterday I was playing WoW and noticed that after unplugging my charger I went down to vsync + 30 frames, which is not what you want to experience in a mythic+13 dungeon.
I plugged the charger and went back to normal frames.
Did some research and found a setting in the GeForce Experience app, called "Battery boost", in Settings -> Games. Disabled it and I am finally able to properly play Factorio on 960M.
Case closed, I guess. :)

Special thanks to Nvidia for making me pull my hair and lose brain cells.