From the graph it looks like stockfish is able to match the results of engines from ~2000 using ~1.5 orders of magnitude less compute.
Is that the right way to read this graph?
Do you have the numbers for SF8 evaluations so that I can use those directly rather than eyeballing from this graph? (I’m generally interested in whatever raw data you have.)
ELO = [3407,3375,3318,3290,3260,3225,3181,3125,3051,2955,2831,2671,2470,2219,1910]
Note that the range of values is larger than the plotted range in the Figure. The Figure cuts off at a 80486DX 33 MHz, 27 MIPS, introduced May 7, 1990.
To derive an analytical result, it is reasonable to interpolate with a spline and then subtract. Let me know if you have a specific question (e.g. for the year 2000).
How are those MIPS numbers produced? My impression was that the raw numbers were nodes/sec, and then some calibration was done to relate this to MIPS?
The MIPS are only a “lookup table” from the year, based on a CPU list. It’s for the reader’s convenience to show the year (linear), plus a rough measure of compute (exponential).
The nodes/s measure has the problem that it is engine-dependent.
The real math was done by scaling down one engine (SF8) by time-per-move, and then calibrating the time to the computers of that era (e.g., a Quad i7 from 2009 has 200x the nodes/s compared to a PII-300 from 1999)
Thanks for running these experiments!
I don’t see the figure here, do you have a link to it?
Pulled from the wayback machine
Replaced the image in the post with this image.
From the graph it looks like stockfish is able to match the results of engines from ~2000 using ~1.5 orders of magnitude less compute.
Is that the right way to read this graph?
Do you have the numbers for SF8 evaluations so that I can use those directly rather than eyeballing from this graph? (I’m generally interested in whatever raw data you have.)
Yes, that is a correct interpretation. The SF8 numbers are:
MIPS = [139814.4, 69907, 17476, 8738, 4369, 2184, 1092, 546.2, 273.1, 136.5, 68.3, 34.1, 17.1, 8.5, 4.3]
ELO = [3407,3375,3318,3290,3260,3225,3181,3125,3051,2955,2831,2671,2470,2219,1910]
Note that the range of values is larger than the plotted range in the Figure. The Figure cuts off at a 80486DX 33 MHz, 27 MIPS, introduced May 7, 1990.
To derive an analytical result, it is reasonable to interpolate with a spline and then subtract. Let me know if you have a specific question (e.g. for the year 2000).
How are those MIPS numbers produced? My impression was that the raw numbers were nodes/sec, and then some calibration was done to relate this to MIPS?
The MIPS are only a “lookup table” from the year, based on a CPU list. It’s for the reader’s convenience to show the year (linear), plus a rough measure of compute (exponential).
The nodes/s measure has the problem that it is engine-dependent.
The real math was done by scaling down one engine (SF8) by time-per-move, and then calibrating the time to the computers of that era (e.g., a Quad i7 from 2009 has 200x the nodes/s compared to a PII-300 from 1999)