mersenneforum.org

mersenneforum.org (https://www.mersenneforum.org/index.php)
-   Software (https://www.mersenneforum.org/forumdisplay.php?f=10)
-   -   Prime95 — is it possible to control "automatic benchmarks"? (https://www.mersenneforum.org/showthread.php?t=25828)

intelfx 2020-08-11 03:07

Prime95 — is it possible to control "automatic benchmarks"?
 
Prime95 periodically performs some kind of "automatic benchmark" the results of which are written to gwnum.txt and used to fine-tune future tests:



[CODE]
Aug 11 05:06:06 stratofortress.nexus.i.intelfx.name mprime[284580]: [Main thread Aug 11 05:06] Benchmarking multiple workers to tune FFT selection.
Aug 11 05:06:06 stratofortress.nexus.i.intelfx.name mprime[284580]: [Work thread Aug 11 05:06] Stopping primality test of M109983959 at iteration 56490336 [51.36%]
Aug 11 05:06:06 stratofortress.nexus.i.intelfx.name mprime[284580]: [Work thread Aug 11 05:06] Worker stopped while running needed benchmarks.
Aug 11 05:06:22 stratofortress.nexus.i.intelfx.name mprime[284580]: [Main thread] Average times: 89.60 ms. Total throughput: 11.16 iter/sec.
Aug 11 05:06:35 stratofortress.nexus.i.intelfx.name mprime[284580]: [Main thread] Average times: 90.25 ms. Total throughput: 11.08 iter/sec.
Aug 11 05:06:49 stratofortress.nexus.i.intelfx.name mprime[284580]: [Main thread] Average times: 87.62 ms. Total throughput: 11.41 iter/sec.
Aug 11 05:07:02 stratofortress.nexus.i.intelfx.name mprime[284580]: [Main thread] Average times: 91.67 ms. Total throughput: 10.91 iter/sec.
Aug 11 05:07:16 stratofortress.nexus.i.intelfx.name mprime[284580]: [Main thread] Average times: 92.32 ms. Total throughput: 10.83 iter/sec.
Aug 11 05:07:29 stratofortress.nexus.i.intelfx.name mprime[284580]: [Main thread] Average times: 88.24 ms. Total throughput: 11.33 iter/sec.
Aug 11 05:07:43 stratofortress.nexus.i.intelfx.name mprime[284580]: [Main thread] Average times: 92.33 ms. Total throughput: 10.83 iter/sec.
Aug 11 05:07:56 stratofortress.nexus.i.intelfx.name mprime[284580]: [Main thread] Average times: 89.58 ms. Total throughput: 11.16 iter/sec.
Aug 11 05:08:09 stratofortress.nexus.i.intelfx.name mprime[284580]: [Main thread] Average times: 95.28 ms. Total throughput: 10.50 iter/sec.
Aug 11 05:08:22 stratofortress.nexus.i.intelfx.name mprime[284580]: [Main thread] Average times: 89.56 ms. Total throughput: 11.17 iter/sec.
Aug 11 05:08:36 stratofortress.nexus.i.intelfx.name mprime[284580]: [Main thread] Average times: 83.36 ms. Total throughput: 12.00 iter/sec.
Aug 11 05:08:49 stratofortress.nexus.i.intelfx.name mprime[284580]: [Main thread] Average times: 85.77 ms. Total throughput: 11.66 iter/sec.
Aug 11 05:09:02 stratofortress.nexus.i.intelfx.name mprime[284580]: [Main thread] Average times: 90.91 ms. Total throughput: 11.00 iter/sec.
Aug 11 05:09:15 stratofortress.nexus.i.intelfx.name mprime[284580]: [Main thread] Average times: 82.21 ms. Total throughput: 12.16 iter/sec.
Aug 11 05:09:28 stratofortress.nexus.i.intelfx.name mprime[284580]: [Main thread] Average times: 84.53 ms. Total throughput: 11.83 iter/sec.
Aug 11 05:09:41 stratofortress.nexus.i.intelfx.name mprime[284580]: [Main thread] Average times: 95.25 ms. Total throughput: 10.50 iter/sec.
Aug 11 05:09:55 stratofortress.nexus.i.intelfx.name mprime[284580]: [Main thread] Average times: 88.29 ms. Total throughput: 11.33 iter/sec.
Aug 11 05:10:08 stratofortress.nexus.i.intelfx.name mprime[284580]: [Main thread] Average times: 85.82 ms. Total throughput: 11.65 iter/sec.
Aug 11 05:10:08 stratofortress.nexus.i.intelfx.name mprime[284580]: [Main thread Aug 11 05:10]
Aug 11 05:10:08 stratofortress.nexus.i.intelfx.name mprime[284580]: [Main thread Aug 11 05:10] Throughput benchmark complete.
Aug 11 05:10:08 stratofortress.nexus.i.intelfx.name mprime[284580]: [Work thread Aug 11 05:10] Benchmarks complete, restarting worker.
[/CODE]
Unfortunately, I see no way to control how and when it happens. It has just occurred that mprime decided to run its benchmark when the server was fully occupied with greater priority work, thus completely invalidating the benchmark results (see above). I had to restore gwnum.txt from a backup, which is not really optimal user experience.

Is it possile to control those automatic benchmarks in any way? Or even disable the automatic benchmark behavior altogether to run them by hand in a controlled environment on an otherwise idle system?

ixfd64 2020-08-11 03:23

You can disable this feature by setting [C]AutoBench=0[/C] in your [C]prime.txt[/C] file.

intelfx 2020-08-11 04:29

[QUOTE=ixfd64;553204]You can disable this feature by setting [C]AutoBench=0[/C] in your [C]prime.txt[/C] file.[/QUOTE]
Ah. I see. I should read undoc.txt more often.

How do I then run an equivalent benchmark manually?

chalsall 2020-08-11 05:07

[QUOTE=intelfx;553206]Ah. I see. I should read undoc.txt more often.[/QUOTE]

Some useful stuff can be found there. :smile:

[QUOTE=intelfx;553206]How do I then run an equivalent benchmark manually?[/QUOTE]

Read the source code to be sure (that didn't go down so well in a meeting yesterday morning)...

retina 2020-08-11 10:33

Since the question has been answered and the subject is raised ...

I've wondered whether these auto-benchmarks are a net loss.

The machines periodically spend a few minutes doing no useful work in an attempt to find a faster FFT strategy. But any gains it can find are not enough to justify shutting things down for so many minutes.

If I can liken it to a car race: Would you spend time stopped at the side of the road, in the middle of a race, to get out and tweak the timing belt (or whatever adjustment) in the hope of going 1 km/h faster on the straights?

axn 2020-08-11 11:54

[QUOTE=retina;553260]The machines periodically spend a few minutes doing no useful work in an attempt to find a faster FFT strategy. But any gains it can find are not enough to justify shutting things down for so many minutes.[/QUOTE]

The autobenchmark doesn't run everyday. Once it has gathered sufficient number (10?) of benchmarks for a given FFT size, the benchmarks will stop (until test requiring a new FFT size is received).

There can be a significant difference (10%?) between fastest FFT implementation and default FFT implementation. Of course, with high probability, the very first autobenchmark will find the best implementation.

Subsequent ones are just an insurance that the conditions during the first one wasn't representative (like what OP experienced, ironically).


All times are UTC. The time now is 04:17.

Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2021, Jelsoft Enterprises Ltd.