I saw his exponential formula somewhere. But in any case,Vinvin wrote:I don't find the formula used in Rybka ... only this post by Vasik in 2008 :bob wrote:Rybka doesn't use 1 + .7*3. That is MY formula. And I agree, 4M with 1 cpu is stronger than 4m on 4 cpus, because of search overhead. Rybka used the n^.76 (or whatever the fraction was).Vinvin wrote:4 Mn/s on 4 CPU is probably weaker than 3.5 Mn/s on 1 CPU.bob wrote:Doesn't make any sense at all. More NPS is generally stronger. His formula doesn't seem to apply to any numbers I produce in Crafty. This sounds like more of his node nonsense to me... "In rybka I count nodes differently..."Vinvin wrote:Yes but Vasik wanted a formula where "more NPS" always mean "stronger" (taking account of the number of CPU), so the NPS are converted with the help of a formula close to "1 + (N-1)*0.7".bob wrote:That does not compute.CRoberson wrote:IIRC, the Rybka team knew of the equation NPS speedup = 1 + (N-1)*0.7, but they saw many customers getting confused when the TTP (Time To Ply) speed uo didn't equal the same value as the NPS speedup due to the workload gain. So, they adjusted the equation to be a TTP equation.
1 + (n-1)*.7 is time-to-depth speedup. Nothing to do with NPS. I have ALWAYS given speedup numbers as time-to-depth. NPS is irrelevant in that context.
What he REALLY meant was "In rybka, I obfuscate the node count to make it harder to figure out what I am doing."
That's why Rybka display converted number. 4 CPU -> 1+(0.7*3) = 3.1, so a ratio "/4*3.1" is applied to speed displayed.
(obfuscated numbers on 1 CPU is another story)
But in any case, when talking about SMP performance, NPS is not the right number to compare. time to depth is the reasonable measurement.
http://rybkaforum.net/cgi-bin/rybkaforu ... 0#pid86950Vasik wrote:When Rybka displays a 2x higher kn/s, she is effectively 2x faster and correspondingly stronger. It's no different than if you give her 2x more time.
Other engines don't make this adjustment, so it may look like they scale better. I don't really care about this - we're just going to do it the way I think is right.
s = 1 + (N-1) * 0.7
has been my linear approximation formula for 30 years. I personally believe time to depth is the ONLY valid measure of SMP performance. I think this "widening" stuff is just a lot of "stuff". If it was really worthwhile to be less selective in a parallel search, it would be JUST as worthwhile to do it in the sequential/serial search as well.