Phuncz schreef op woensdag 12 september 2018 @ 14:14:
Zelf ben ik aan een nieuw projectje begonnen, maar nog niet veel verder geraakt door tijdsbeperking. Ik wil namelijk extreem schalen dmv. Bob's, maar ik zal met mijn Ryzen 7 1800X processor toch vroeg of laat tegen een bottleneck oplopen, aangezien Factorio hoge CPU single-core clocks verkiest, evenals lage memory latency. Op zich kan ik een Ryzen 2700X tegen het probleem aangooien om het deels op te heffen, maar het feit blijft dat de CPU uit zijn neus staat te vreten met 6 à 7 cores idle in Factorio.
Dus hoe lossen we dat op ? Wel, Clusterio (
link) laat toe om meerdere Factorio "werelden" (instances) te draaien op aparte servers om zo te schalen voorbij de grenzen van één systeem. Maar het laat ook toe "lokaal" te draaien (onder Windows of Linux) en mijn idee is dat ik verschillende producties gewoon ga off-loaden naar aparte instances die dan correct worden geschaald.
Recent heb ik dit getest door de map die ik al had op 2 instances te draaien, het CPU gebruik steeg maar het bleef bij de single-digits voorlopig met mijn UPS-optimized base van bescheiden omvang. Echter lijkt het me hierdoor wel mogelijk 6 of 12 (met SMT) instances te draaien, zodat deze allemaal hun eigen core kunnen hebben, evenals een core voor het "master" stukje van Clusterio en allerhande taken.
Dit zal me bezig houden tot 0.17 er is hoop ik

Had ik zelf ook al eens lopen overwegen

VZIW Gaat dit niet werken. Of iig niet veel helpen.
Factorio is niet cpu limited maar ram limited.
Die ene core is voornamelijk bezig met accessen en wachten op geheugen. De limiterende factor is dus hoesnel je data uit het geheugen naar die processor krijgt, en als je dus ene 2e sessie start ga je dus die snelheid per sessie halveren.
Wube heeft ook al intern multithreaded versies gehad van factorio, maar die uiteindelijk niet doorgevoerd omdat de snelheidswinst minimaal was.
Maar als je het aan de gang hebt : i love to be proven wrong

Je kunt het ook zelf een beetje maken met
spawn en void belt
Zeg dat je bijvoorbeeld al je raket onderdelen zelf maakt in 1 save. die deponeer je die allemaal in een void chest. Kijk dan hoeveel er na 10 minuten gemiddeld gemaakt worden.
Bouw vervolgens in je andere save net zoveel spawbelts met raket onderdelen, als er in de andere verwijderd worden
Overigens heeft bob's achter in de research tree juist veel Overpowered inserters en modules. Waardoor je juist heel erg kan schalen in productie, zonder dat dat veel UPS kost. (IPV 10 fabrieken met inserters, heb je er 1 die 10 keer zoveel kan verwerken)
[
Voor 16% gewijzigd door
heuveltje op 12-09-2018 16:04
]
Heuveltjes CPU geschiedenis door de jaren heen : AMD 486dx4 100, Cyrix PR166+, Intel P233MMX, Intel Celeron 366Mhz, AMD K6-450, AMD duron 600, AMD Thunderbird 1200mhz, AMD Athlon 64 x2 5600, AMD Phenom X3 720, Intel i5 4460, AMD Ryzen 5 3600 5800x3d