Looking at the output, it is obvious that whilst depth is the most important outcome, depth from a single search is not a very good indicator, due to the shape of the curve: it takes longer and longer to add a bit of depth, so discrimination diminishes.
Instead I have made up a couple of batch files (bash for macos and linux, and a windows cmd script file) that run the in-built Stockfish /or Cfish benchmarks with a user nominated number of threads to a predetermined depth, loop, and count the number of loops that can be achieved. I have chosen depth 27 as it takes 1-2 minutes per loop or so on a powerful system, and exercises the engines a bit better than shorter defaults. The output is also stored in a file. Benchmark output to the console is suppressed as Windows in particular does not cope with the speed very well.
Here is the Linux / MacOS version: store it as e.g. battery.sh and run using "bash battery.sh" in the directory containing the engine.
Code: Select all
#!/bin/bash echo Please input number of threads to use: read threads loops=0 echo Test starting ... using $threads threads >battery-output.txt echo Terminate test using Control-c while [ true ] ; do echo $loops loops completed at `date` echo $loops `date` >>battery-output.txt ./stockfish bench 64 $threads 27 >/dev/null 2>&1 let loops+=1 done
Code: Select all
@echo off SET /P threads=Please input number of threads to use: SET /A loops=0 ECHO Test starting ... using %threads% threads. > battery-output.txt ECHO Terminate test using Control-c :loop-mark IF %loops% leq 10000000 ( ECHO %loops% %DATE% %TIME% >> battery-output.txt ECHO %loops% completed at %DATE% %TIME% .\stockfish bench 64 %threads% 27 >null 2>&1 SET /A loops+=1 GOTO :loop-mark )
You are welcome on Intel or AMD to try hyperthreading on or off to see which is better. You can also try using fewer threads than your maximum e.g. 1 but whilst your battery will last longer, the background constant-rate battery drain will mean that you are likely to see overall worse performance.