Performance statistics question

Post all other topics which do not belong to any other category.
Post Reply
orzelek
Smart Inserter
Smart Inserter
Posts: 3911
Joined: Fri Apr 03, 2015 10:20 am
Contact:

Performance statistics question

Post by orzelek »

I'm a bit curious - question about time used percent statistics block.

What is the Flip line responsible for?
It seems to take a lot more time then anything else there.

User avatar
pyrolytic_tungsten
Fast Inserter
Fast Inserter
Posts: 115
Joined: Fri Aug 01, 2014 4:29 am
Contact:

Re: Performance statistics question

Post by pyrolytic_tungsten »

My understanding is that flip refers to the rendered graphics in the buffer being swapped to what is being displayed. See https://forums.factorio.com/forum/vie ... =49&t=7972 or http://en.wikipedia.org/wiki/Multiple_b ... e_flipping. It shouldn't take long more than a few msec per frame unless you have a weak graphics card. With my Geforce 750 Ti my flip time stays below .4 msec.

What graphics card do you have?

kovarex
Factorio Staff
Factorio Staff
Posts: 8078
Joined: Wed Feb 06, 2013 12:00 am
Contact:

Re: Performance statistics question

Post by kovarex »

The vsync is done in the flip, so it can take long only because the game is waiting for another 60 fps mark.

User avatar
SHiRKiT
Filter Inserter
Filter Inserter
Posts: 706
Joined: Mon Jul 14, 2014 11:52 pm
Contact:

Re: Performance statistics question

Post by SHiRKiT »

Also, can we somehow track down what entities takes the most time to be computed? I have a huge factory with lots of inserters, bots and belts and trains. My game is starting to slow down to 50-55 UPS, and that annoys me. I removed a few mods already since they are not optimzed as game entities, but I'd like to know which parts of my factory (assemblers, inserters, bots, belts, trains) are responsible for for my dropdown. Can we get those numbers in the Debug menu somehow? Cause if I know what's wrong, I can try to replace things to optmize them a bit (but fewer assemblers 2 and replace them with level 3 or higher with modules, for instance).

kovarex
Factorio Staff
Factorio Staff
Posts: 8078
Joined: Wed Feb 06, 2013 12:00 am
Contact:

Re: Performance statistics question

Post by kovarex »

SHiRKiT wrote:Also, can we somehow track down what entities takes the most time to be computed? I have a huge factory with lots of inserters, bots and belts and trains. My game is starting to slow down to 50-55 UPS, and that annoys me. I removed a few mods already since they are not optimzed as game entities, but I'd like to know which parts of my factory (assemblers, inserters, bots, belts, trains) are responsible for for my dropdown. Can we get those numbers in the Debug menu somehow? Cause if I know what's wrong, I can try to replace things to optmize them a bit (but fewer assemblers 2 and replace them with level 3 or higher with modules, for instance).
The problem is, that more precise measuring, like measuring the time of the update time of all the belts and inserters would affect the performance itself.
In common games, usually all the common things take a little, like transport belts, inserters etc.

From time to time, I do the C++ profiling on big saves to see what needs to be optimised, so I can take a look at your save as well if you upload it.
Actually I'm currently working on the update time optimisations, I did 2 big changes and now the update time is 28% down compared to the 0.11 for my test factories. I'm planning to do more stuff, and big factories are great for the testing.

User avatar
GewaltSam
Filter Inserter
Filter Inserter
Posts: 344
Joined: Thu May 08, 2014 5:42 pm
Contact:

Re: Performance statistics question

Post by GewaltSam »

kovarex wrote:Actually I'm currently working on the update time optimisations, I did 2 big changes and now the update time is 28% down compared to the 0.11 for my test factories. I'm planning to do more stuff, and big factories are great for the testing.
Is it better for your needs if they are built in vanilla factorio, or is it fine if some of the more common mods are used?

kovarex
Factorio Staff
Factorio Staff
Posts: 8078
Joined: Wed Feb 06, 2013 12:00 am
Contact:

Re: Performance statistics question

Post by kovarex »

GewaltSam wrote:
kovarex wrote:Actually I'm currently working on the update time optimisations, I did 2 big changes and now the update time is 28% down compared to the 0.11 for my test factories. I'm planning to do more stuff, and big factories are great for the testing.
Is it better for your needs if they are built in vanilla factorio, or is it fine if some of the more common mods are used?
Well, vanilla is better, but if the mods are not performance heavy and are also provided, than it might be good as well.

User avatar
SHiRKiT
Filter Inserter
Filter Inserter
Posts: 706
Joined: Mon Jul 14, 2014 11:52 pm
Contact:

Re: Performance statistics question

Post by SHiRKiT »

kovarex wrote:
SHiRKiT wrote:Also, can we somehow track down what entities takes the most time to be computed? I have a huge factory with lots of inserters, bots and belts and trains. My game is starting to slow down to 50-55 UPS, and that annoys me. I removed a few mods already since they are not optimzed as game entities, but I'd like to know which parts of my factory (assemblers, inserters, bots, belts, trains) are responsible for for my dropdown. Can we get those numbers in the Debug menu somehow? Cause if I know what's wrong, I can try to replace things to optmize them a bit (but fewer assemblers 2 and replace them with level 3 or higher with modules, for instance).
The problem is, that more precise measuring, like measuring the time of the update time of all the belts and inserters would affect the performance itself.
In common games, usually all the common things take a little, like transport belts, inserters etc.

From time to time, I do the C++ profiling on big saves to see what needs to be optimised, so I can take a look at your save as well if you upload it.
Actually I'm currently working on the update time optimisations, I did 2 big changes and now the update time is 28% down compared to the 0.11 for my test factories. I'm planning to do more stuff, and big factories are great for the testing.
I have removed quite a bit of unused stuff and started a whole factory rebuilding plan to reduce the lag (I don't tolerate playing at lower than 58-59 UPS). I'll rebuild my base (for the second time :D ) and I'll share the save later on. I'd love to know how to see who will drain performance, so I'll certainly do that.

Other solution is to allow something that can be attached to the Factorio client to allow this to be seen. Or even maybe doing some region stuff and distribute a profiling executable, that will run at a lower UPS, but would log the activity of a factory.

Anyways, thanks for sharing the info on the weekly FF. It impress me every time to see you guys always reading and listening to us.

Post Reply

Return to “General discussion”