Performance optimization - post your saves

Post all other topics which do not belong to any other category.
Sjitty
Burner Inserter
Burner Inserter
Posts: 7
Joined: Wed May 31, 2017 1:43 pm
Contact:

Re: Performance optimization - post your saves

Post by Sjitty »

Are you still looking for savegames with those same specifications as in the first post?

I have a megabase with 1RPM and 1KSPM which uses belts only (mostly underground) and every production setup uses beacons to the max. At one time during building the UPS started to drop, but then i switched to underground belts, which fixed that. But now that everything is almost finished, the UPS drops when both the 1RPM and 1KSPM lines are running, i.e. everything is active.

But before I post it, I wanted to ask what kind of savegames (k's of beacons, k's of robots, etc.) you are still interested in for optimization (it's been while since your first post), and which not (i.e. the ones that are just overkill and hopeless), so I don't post a megabase that is of no use for you, or isn't as big as what you're looking for.

No mods and v0.15.37 btw.

Thanks

Regards
mrvn
Smart Inserter
Smart Inserter
Posts: 5925
Joined: Mon Sep 05, 2016 9:10 am
Contact:

Re: Performance optimization - post your saves

Post by mrvn »

Does that make sense before 0.16 with all the new optimizations that are pending?
Rseding91
Factorio Staff
Factorio Staff
Posts: 14381
Joined: Wed Jun 11, 2014 5:23 am
Contact:

Re: Performance optimization - post your saves

Post by Rseding91 »

Unless there's something unique about the save I've seen plenty of "mega base" saves that are just the same things: lots of belts or robots, lots of trains, and lots of inserters/assembling machines/furnaces. Nothing new/special about them :)
If you want to get ahold of me I'm almost always on Discord.
The Eriksonn
Fast Inserter
Fast Inserter
Posts: 230
Joined: Wed Jun 08, 2016 6:16 pm
Contact:

Re: Performance optimization - post your saves

Post by The Eriksonn »

Rseding91 wrote:...limited by the speed of light...
Im sure the factorio devs will find a optimize for the speed to be faster :lol:
Jap2.0
Smart Inserter
Smart Inserter
Posts: 2383
Joined: Tue Jun 20, 2017 12:02 am
Contact:

Re: Performance optimization - post your saves

Post by Jap2.0 »

The Eriksonn wrote:
Rseding91 wrote:...limited by the speed of light...
Im sure the factorio devs will find a optimize for the speed to be faster :lol:
It might be ppossible...
Now I'm expecting the announcement the Rseding will be created the Factorio: FTL Edition for 0.18?
There are 10 types of people: those who get this joke and those who don't.
mrvn
Smart Inserter
Smart Inserter
Posts: 5925
Joined: Mon Sep 05, 2016 9:10 am
Contact:

Re: Performance optimization - post your saves

Post by mrvn »

Jap2.0 wrote:
The Eriksonn wrote:
Rseding91 wrote:...limited by the speed of light...
Im sure the factorio devs will find a optimize for the speed to be faster :lol:
It might be ppossible...
Now I'm expecting the announcement the Rseding will be created the Factorio: FTL Edition for 0.18?
Isn't the signal network instantaneous?
Jap2.0
Smart Inserter
Smart Inserter
Posts: 2383
Joined: Tue Jun 20, 2017 12:02 am
Contact:

Re: Performance optimization - post your saves

Post by Jap2.0 »

mrvn wrote:
Jap2.0 wrote:
The Eriksonn wrote:
Rseding91 wrote:...limited by the speed of light...
Im sure the factorio devs will find a optimize for the speed to be faster :lol:
It might be ppossible...
Now I'm expecting the announcement the Rseding will be created the Factorio: FTL Edition for 0.18?
Isn't the signal network instantaneous?
It might be. I know I was reading something on here (too lazy to find the link, you might've seen it) about the fact that if you have a train waiting at one station waiting for the next station to be enabled, enabling that station basically sends 1 bit of information instantaneously.
There are 10 types of people: those who get this joke and those who don't.
The Eriksonn
Fast Inserter
Fast Inserter
Posts: 230
Joined: Wed Jun 08, 2016 6:16 pm
Contact:

Re: Performance optimization - post your saves

Post by The Eriksonn »

the Circuit network is instant compared to the game itself(it takes 1 tick to send over any distance) but the tick itself is not instant at all
terror_gnom
Fast Inserter
Fast Inserter
Posts: 121
Joined: Wed Apr 06, 2016 4:01 am
Contact:

Re: Performance optimization - post your saves

Post by terror_gnom »

Jesus8000 wrote: but my cpu is at 30% so he could handle more from ram>>> so the game isnt perfect optimized. right?
or in your words: i have 100 workers but only 30 emails to work on:P and the emails comming all time in the same days after request / latency :P
it would be faster if 3,33 worker , work on 1 email

Its more like each email only needs 1h to proceed, so there is no use to get multiple employees to work on a single mail (since even 1 employee will have plenty of downtime before the next mail will arive).

Its a constant Ping-Pong between your CPU and Ram. The way to optimise that is called prefetching (which just pushes the limit, doesnt remove it), and the devs are working on it ;)
mrvn
Smart Inserter
Smart Inserter
Posts: 5925
Joined: Mon Sep 05, 2016 9:10 am
Contact:

Re: Performance optimization - post your saves

Post by mrvn »

Jap2.0 wrote:
mrvn wrote:
Jap2.0 wrote:
The Eriksonn wrote:
Rseding91 wrote:...limited by the speed of light...
Im sure the factorio devs will find a optimize for the speed to be faster :lol:
It might be ppossible...
Now I'm expecting the announcement the Rseding will be created the Factorio: FTL Edition for 0.18?
Isn't the signal network instantaneous?
It might be. I know I was reading something on here (too lazy to find the link, you might've seen it) about the fact that if you have a train waiting at one station waiting for the next station to be enabled, enabling that station basically sends 1 bit of information instantaneously.
Yeah. I've been considering using that for wireless data transmission. But sending any kind of multi bit message the sender and receiver stations get kind of HUGE.
Jap2.0
Smart Inserter
Smart Inserter
Posts: 2383
Joined: Tue Jun 20, 2017 12:02 am
Contact:

Re: Performance optimization - post your saves

Post by Jap2.0 »

mrvn wrote:
Jap2.0 wrote:
mrvn wrote: Isn't the signal network instantaneous?
It might be. I know I was reading something on here (too lazy to find the link, you might've seen it) about the fact that if you have a train waiting at one station waiting for the next station to be enabled, enabling that station basically sends 1 bit of information instantaneously.
Yeah. I've been considering using that for wireless data transmission. But sending any kind of multi bit message the sender and receiver stations get kind of HUGE.
Yeah. Could you work out something where the train gets stuck in a loop and never has to go to the station and back with enabling/disabling signals, in other words having the train go via one path, enable and disable the station (sending 1 bit), then send the train on a loop to a different path to the station sending the signal by turning a signal red or enabling a station in the path (do disabled stations add the pathing bonus? If so, you'd have to use signals) so that it changes path and never leaves a loop to go to the station. Sorry if it sounds confusing, I'm not sure how well it would work, but I can give it a try this weekend if you want me to see if it works and make a blueprint (because blueprints can explain things a lot better than words sometimes).
There are 10 types of people: those who get this joke and those who don't.
mrvn
Smart Inserter
Smart Inserter
Posts: 5925
Joined: Mon Sep 05, 2016 9:10 am
Contact:

Re: Performance optimization - post your saves

Post by mrvn »

Jap2.0 wrote:
mrvn wrote:
Jap2.0 wrote:
mrvn wrote: Isn't the signal network instantaneous?
It might be. I know I was reading something on here (too lazy to find the link, you might've seen it) about the fact that if you have a train waiting at one station waiting for the next station to be enabled, enabling that station basically sends 1 bit of information instantaneously.
Yeah. I've been considering using that for wireless data transmission. But sending any kind of multi bit message the sender and receiver stations get kind of HUGE.
Yeah. Could you work out something where the train gets stuck in a loop and never has to go to the station and back with enabling/disabling signals, in other words having the train go via one path, enable and disable the station (sending 1 bit), then send the train on a loop to a different path to the station sending the signal by turning a signal red or enabling a station in the path (do disabled stations add the pathing bonus? If so, you'd have to use signals) so that it changes path and never leaves a loop to go to the station. Sorry if it sounds confusing, I'm not sure how well it would work, but I can give it a try this weekend if you want me to see if it works and make a blueprint (because blueprints can explain things a lot better than words sometimes).
You have a rest stop that is always enabled. And then a 0 and a 1 station, that you enable when the train isn't at the rest stop. The train is set to go to re4st, 0, 1. Then at the sending side you also have a 0 and 1 station, disabled normally. By enabling one of the stations the train changes to "no path" and "leaves" the rest station. At least back then the train ID did disappear. That enables the 0 and 1 stations locally and the train goes to the one that was enabled remotely. A few ticks later you can disable the remote station and wait for the train to arrive back at the rest stop before sending the next bit.

You can't use signals. The point was to have no wires between the sender and receiver.
Jap2.0
Smart Inserter
Smart Inserter
Posts: 2383
Joined: Tue Jun 20, 2017 12:02 am
Contact:

Re: Performance optimization - post your saves

Post by Jap2.0 »

mrvn wrote:
Jap2.0 wrote:
mrvn wrote:
Jap2.0 wrote:
mrvn wrote: Isn't the signal network instantaneous?
It might be. I know I was reading something on here (too lazy to find the link, you might've seen it) about the fact that if you have a train waiting at one station waiting for the next station to be enabled, enabling that station basically sends 1 bit of information instantaneously.
Yeah. I've been considering using that for wireless data transmission. But sending any kind of multi bit message the sender and receiver stations get kind of HUGE.
Yeah. Could you work out something where the train gets stuck in a loop and never has to go to the station and back with enabling/disabling signals, in other words having the train go via one path, enable and disable the station (sending 1 bit), then send the train on a loop to a different path to the station sending the signal by turning a signal red or enabling a station in the path (do disabled stations add the pathing bonus? If so, you'd have to use signals) so that it changes path and never leaves a loop to go to the station. Sorry if it sounds confusing, I'm not sure how well it would work, but I can give it a try this weekend if you want me to see if it works and make a blueprint (because blueprints can explain things a lot better than words sometimes).
You have a rest stop that is always enabled. And then a 0 and a 1 station, that you enable when the train isn't at the rest stop. The train is set to go to re4st, 0, 1. Then at the sending side you also have a 0 and 1 station, disabled normally. By enabling one of the stations the train changes to "no path" and "leaves" the rest station. At least back then the train ID did disappear. That enables the 0 and 1 stations locally and the train goes to the one that was enabled remotely. A few ticks later you can disable the remote station and wait for the train to arrive back at the rest stop before sending the next bit.

You can't use signals. The point was to have no wires between the sender and receiver.
Sorr, I was a little unclear there, but that wasn't quite what I was talking about. Unfortunately it's somewhat difficult to explain - I'll try to build something to show as an exmple, but I won't be able to access a device that can play Factorio for another three weeks or so :(.
There are 10 types of people: those who get this joke and those who don't.
player8472
Inserter
Inserter
Posts: 21
Joined: Tue Sep 19, 2017 1:34 pm
Contact:

Re: Performance optimization - post your saves

Post by player8472 »

Do you have use for following scenario:

- Heavy Modded save (Bobs+Angels+SpaceX+RSO+Some Convenience Mods)
- Multiple Drone Networks (1 Large connecting the Rails - Many Small ones for Cityblocks)
- Running relatively smooth in SP
- Running below 20FPS in MP at gamespeed 1
- Running Stable at Gamespeed 0.75 in MP

- Heavy UPS drops whenever the Large Drone-Network gets extended (by dropping a new Roboport for example) - This lasts usually ~40-50 ticks
- Server runs at ~85% on one Core and ~5% on the other when this happens
- Client runs on nearly 100% on one core when this happens (other cores are negligble)
- Only a single Desync in >200h gametime
- UPS drop whenever someone views a portion of the map with many bots flying around (~5900 Bots flying in the big network)

Specs of Hw / Utilization:
Server:
Ubuntu 16.04 LTS (Headless)
Intel(R) Core(TM) i5-3450 CPU @ 3.10GHz
16 GB DDR3 1600 MHz (2* CML16GX3M2A1600C10 )
Game running in Docker-Container (All Volumes on an SSD benchmarked at 490 MB/s )
OS running on a different SSD with simmilar benchmark-results
No Dedicated Graphics Card

One of the Clients (can't access this from work, so i can't be as specific as with the server):
Ryzen 1600X
16 GB DDR4 2400
GTX 1070
One SSD for Game+OS (Same Model than the server uses for OS - Never Benchmarked it)

And yes, i tested it with only this one Client online^^

---

I guess the performance issues are caused by one of the mods (Bottleneck or LTN seem reasonable).
That's why i didn't open a ticket.

What strikes me as odd though is, that the server should be the one clocking out due to
a) less single-core performance
b) way slower Memory
c) Being used 24/7 since i bought it ~4 years ago)
d) Having a defect cooling unit ( It is a unit with broken feet held on pressure by 6 old HDD's i put on top of it - I am really lazy in that regard - and NO, I won't post a picture :) )

Yet it seems to be the client.
Which points to something only Clients do (and my GPU should be able to handle anything this Game throws at it...)
mrvn
Smart Inserter
Smart Inserter
Posts: 5925
Joined: Mon Sep 05, 2016 9:10 am
Contact:

Re: Performance optimization - post your saves

Post by mrvn »

I noticed that too when being server for a game instead of a dedicated headless server. Even though my system was way faster than the headless server the game had horrible lag for other players. Something in the head part of the game slows down the UPS considerable.

Now I wonder if it would improve when running the head parallel to the GUI so they use different cores.
Mimos
Long Handed Inserter
Long Handed Inserter
Posts: 73
Joined: Mon Nov 07, 2016 5:15 pm
Contact:

Re: Performance optimization - post your saves

Post by Mimos »

Factorio 15.37
I encountered significant slowdowns when using large blueprints. Both just mouseovering the blueprint item and also moving the ghost over the map. It causes a lot less slowdown if it is built and in operation.
Single player, empty map:
  • Mouseover zoomed in: fps drop (60 to 50), ups ok.
    • Render preparation/Gui render preparation going up to 13 from 0.5/0.1
      Render/Gui render going up to 6/5 from 0.5/0.1
    Mouseover zoomed out: fps drop (60 to 40), ups ok.
    • Render preparation/Gui render preparation going up to 14 from 1.5/0.1
      Render/Gui render going up to 9/5 from 3.8/0.1
    Placing it zoomed in: fps drop (60 to 40), ups ok.
    • Render preparation/Game render preparation going up to 21 from 0.5/0.3
      Render/Game render going up to 3.7/3.5 from 0.8/0.7
    Placing it zoomend out: fps drop (60 to 30), ups ok.
    • Render preparation/Game render preparation going up to 24 from 1.6/1.4
      Render/Game render going up to 6.8/6.7 from 3.7/3.6
Multiplayer, big, slow factory, me being the server:
  • for me: fps and ups drop from about 40 to 20.
    other players (having faster pcs): unplayable, hardly reacting to inputs.
large blueprint.txt
(49.5 KiB) Downloaded 155 times
Maybe you can somehow speed up blueprints to have about the same speed as real buildings.
Rseding91
Factorio Staff
Factorio Staff
Posts: 14381
Joined: Wed Jun 11, 2014 5:23 am
Contact:

Re: Performance optimization - post your saves

Post by Rseding91 »

Mimos wrote:Maybe you can somehow speed up blueprints to have about the same speed as real buildings.
It's not that simple. Holding a blueprint in the cursor has to check every entity in the blueprint against the world to see if it's buildable at that location and then render if it is or isn't + what's colliding. All of that each tick because the world is dynamic and changing plus you can move the mouse location, change the blueprint through script, be riding in a car and so on.

Once you build it in the world all you do is render the entity - no collision checks - which ends up being much faster.
If you want to get ahold of me I'm almost always on Discord.
Mimos
Long Handed Inserter
Long Handed Inserter
Posts: 73
Joined: Mon Nov 07, 2016 5:15 pm
Contact:

Re: Performance optimization - post your saves

Post by Mimos »

But at least just hovering the mouse over the blueprint should be possible without collision checking overhead.

Also the overhead seems to be in the rendering part (if I read it correctly)
Rseding91
Factorio Staff
Factorio Staff
Posts: 14381
Joined: Wed Jun 11, 2014 5:23 am
Contact:

Re: Performance optimization - post your saves

Post by Rseding91 »

Mimos wrote:But at least just hovering the mouse over the blueprint should be possible without collision checking overhead.
There where some performance improvements to rendering in 0.16 so it may help slightly. For me in 0.16 the preview takes half the time compared to 0.15.
If you want to get ahold of me I'm almost always on Discord.
sillyfly
Smart Inserter
Smart Inserter
Posts: 1101
Joined: Sun May 04, 2014 11:29 am
Contact:

Re: Performance optimization - post your saves

Post by sillyfly »

Rseding91 wrote: ... it may help slightly ... takes half the time ...
Wube's optimization philosophy - saving 50% is only a slight improvement :D :D
Keep up the excellent work guys.
Post Reply

Return to “General discussion”