Hello my friends,
I changed the powershell script, so u can test your own/different maps with it and get the real UPS.
Save the new changed Code as
benchmark.ps1
Code: Select all
function Coalesce($a, $b) { if ($a -ne $null) { $a } else { $b } }
function run() {
$FACTORIO_BIN = Coalesce $FACTORIO_BIN ".\bin\x64\factorio.exe"
$FB_HOST = Coalesce $FB_HOST "https://factoriobox.1au.us"
$BENCH_TICKS = Coalesce $BENCH_TICKS 1000
$BENCH_RUNS = Coalesce $BENCH_RUNS 10
$FACTORIO_VERSION = &$FACTORIO_BIN --version | Select -First 1
$FACTORIO_VERSION_SHORT = ($FACTORIO_VERSION -split "\s+")[1]
$TMP = $null
#New lines added by DustFireSky (Factorio Forum) 13.01.2020
$FACTORIO_SAVGEGAMEFOLDER = ($env:APPDATA + "\Factorio\saves\")
#Only activate the own map testing, if u want to test a different map!
#Remove the # sign in front of the $MAP = $FACTORIO_SAVGEGAMEFOLDER + "HuntingValley_17.67_Save1.zip" row.
#Change the name of the map => "HuntingValley_17.67_Save1.zip"
#$MAP = $FACTORIO_SAVGEGAMEFOLDER + "HuntingValley_17.67_Save1.zip"
#End of new lines
if (!$MAP) {
$URL = Coalesce $URL "$FB_HOST/map-version/$FACTORIO_VERSION_SHORT"
$TMP = New-TemporaryFile
echo "Downloading map..."
Invoke-WebRequest -Uri $URL -OutFile $TMP
$MAP = $TMP
#Edited!
} else {
echo "Testing Map: $MAP"
}
$MAP_HASH = Get-FileHash $MAP -Algorithm md5 | Select-Object -ExpandProperty Hash
$TMP_MODS = New-TemporaryFile
echo "Running benchmark..."
&$FACTORIO_BIN --mod-directory "$TMP_MODS" --benchmark "$MAP" --benchmark-ticks $BENCH_TICKS --benchmark-runs $BENCH_RUNS --benchmark-verbose all 2>&1 | Out-String -Stream | Tee-Object -Variable FACTORIO_LOG | Select-String -Pattern 'Performed \d+ updates in \d+\.\d+ ms' | foreach {$_.Matches.Value}
Remove-Item $TMP_MODS
$STATUS = (($FACTORIO_LOG | Select-String Performed | foreach{ $_.Line.Trim()} ) -split "\s+")
if (!$STATUS) {
echo "Benchmark failed"
echo $FACTORIO_LOG
Return
}
$UPS = [math]::Round(1000 * $BENCH_TICKS / $STATUS[4])
echo "Map benchmarked at $UPS UPS"
if ($TMP) {
Remove-Item $MAP
#Edited!
#Only share the result, if you run the original benchmark, not at own maps.
$RESULT_ID = (Invoke-WebRequest -UseBasicParsing $FB_HOST/result -Method POST -Body "v2 windows
$MAP_HASH
$FACTORIO_VERSION
$BENCH_TICKS
$BENCH_RUNS
$(Get-WmiObject win32_processor | Select addresswidth,currentclockspeed,currentvoltage,datawidth,extclock,l2cachesize,l2cachespeed,l3cachesize,l3cachespeed,maxclockspeed,name,numberofcores,numberofenabledcore,numberoflogicalprocessors,threadcount | ConvertTo-Json -Compress)
$(Get-WmiObject win32_physicalmemory | Select capacity,configuredclockspeed,configuredvoltage,datawidth,devicelocator,manufacturer,maxvoltage,model,partnumber,speed | ConvertTo-Json -Compress)
$($FACTORIO_LOG | Select-String -Pattern 'Performed \d+ updates in \d+\.\d+ ms' | foreach {$_.Matches.Value} | Out-String)
$($FACTORIO_LOG | Select-String '^[^ ]' | Out-String)").Content
echo "Share your benchmark at: $FB_HOST/result/$RESULT_ID"
}
}
run
Pause
To run a benchmark, cd to the root of your Factorio install and run the corresponding command:
Code: Select all
powershell -command ". { [Net.ServicePointManager]::SecurityProtocol = 'tls12, tls11, tls'; iwr -useb E:\tmp\benchmark.ps1 } | iex"
Change the path to the benchmark.ps1 in the command line!
Ryzen 9 3900X Benchmark:
Stock Settings! DDR4 3200MHZ CL 16-18-18-36
Did the test again and I forgot to activate the PBO before. From 71 UPS to 76 UPS with PBO on!
New result:

- Factorio_PBO-on_VCore-Auto-Original-Map.PNG (24.85 KiB) Viewed 3771 times
The User Bilka get 81UPS with Stock settings. That is interesting. Is the impact of CL14 RAM so huge? If yes, I should buy a new RAM Kit...
viewtopic.php?p=461095#p461095
Ryzen 9 3900X Benchmark Own Map:
New result:

- Factorio_PBO-on_VCore-Auto-Own-Map.PNG (23.23 KiB) Viewed 3771 times
From 42 UPS to 45 UPS with PBO on!
HuntingValley_17.67_Save1.zip