sp00n / corecycler

Script to test single core stability, e.g. for PBO & Curve Optimizer on AMD Ryzen or overclocking/undervolting on Intel processors
Other
663 stars 30 forks source link

set "runtimePerCore=auto" with "numberOfThreads=2", script-corecycler.ps1 won't change core after all FFTs passed. #31

Closed Lincutt closed 1 year ago

Lincutt commented 1 year ago

when I set "runtimePerCore=auto" and "numberOfThreads=2" in config.ini script-corecycler.ps1 can't change to next core after all selected FFTs passed.

the small FFTs (4k-240k) passed results in P95 log will have "(thread * of 2)" in it. script-corecycler.ps1 can't parse them correctly.

Lincutt commented 1 year ago

LINE 4602 add $currentResultLineEntry.Line = $currentResultLineEntry.Line -replace ' \(thread . of .\)','' can avoid this bug

sp00n commented 1 year ago

Your fix is actually more elegant than mine, I'm uploading a new version soon.

Lincutt commented 1 year ago

0.9.1.0 still has this bug with set "FFTSize=All" in config.ini because 4k-240k has 2 lines in prime95's log file, but 256k-51200k has only 1.

replace LINE 4626 if ($settings.General.numberOfThreads -eq 1) { to if ($foundFFTSizeLines.Length -eq 1) {

and LINE 4631 elseif ($settings.General.numberOfThreads -gt 1) { to else {

can fix it.

sp00n commented 1 year ago

because 4k-240k has 2 lines in prime95's log file, but 256k-51200k has only 1

Wat. I have to test this. O.o

sp00n commented 1 year ago

Oh boy, for up to 240k it's explicitly using 2 threads, and for anything above it seems to use two "internal" threads, which don't show up in the log file. I managed to pinpoint this to the new TortureHyperthreading setting in prime.txt that was introduced in Prime95 30.7.

If I disable it, I can restore the old behavior of two worker threads and thus two log entry messages per FFT size, without the "thread 1 of x" addition. Going to add this in the next release.