Page 4 of 5

Re: Is Rybka engine is lying about node per second ?

Posted: Wed Dec 09, 2009 7:55 pm
by Dr.Wael Deeb
El Gringo wrote:
slobo wrote:
brennus wrote:Hello,

When i observe Rybka playing and i see the few (nps) sometime i'm asking that the engine output is lying about this, sometime it is up to 20 less nps than "fast" engine.

When i see the uge size of the EXE i think that may be it is not a ly because the eval function is fullfill of chess strategy and it is long to run it.
Of course, but if Rybka always lies, it does not mean that its author does the same. Rybka does it on its own will.
Indeed Slobo, it's rybka's will, there is nothing that vas can do against it....
or maybe he's trying to fool us all... but the rajlich clan is everywhere so i keep my mouth shut. :wink:
Rajlich clan my a$$....it's only Rolf out there freezing to death from the enormous amount of nonsense he speaks :lol:

Re: Is Rybka engine is lying about node per second ?

Posted: Thu Dec 10, 2009 12:40 pm
by Mike S.
While I was aware of Rybka reporting nodes and plies of depth differently than other engines usually do, I am not sure about the figures to calculate the "conservative", or true internal, values from them. Is there a consensus about them, for

1. Rybka 2.x (or 2.3.2a), and

2. Rybka 3?

I have read that depth is x+2 for Rybka 1 and -2, and x+3 for Rybka 3, but I'm not sure. Also, are nodes y/14 for Rybka 3, and what for Rybka 2? Thanks for any info.

I don't think that these are very important numbers for the user though, and the moves themselves and the evals are the main things. Nevertheless it would be interesting to know, for comparisons which include nodes and/or depths.

Re: Is Rybka engine is lying about node per second ?

Posted: Thu Dec 10, 2009 1:06 pm
by ernest
Mike S. wrote:Also, are nodes y/14 for Rybka 3,
This y/14 thing was found in a reverse engineered Rybka 1 source, and did not mean that it was the unique node obfuscation in Rybka 1.
For Rybka 2 and 3, the nodecount of the Strelka and Robbo engines show that the obfuscation ratio is far from constant.

Re: Is Rybka engine is lying about node per second ?

Posted: Thu Dec 10, 2009 6:00 pm
by Osipov Jury
ernest wrote:
Mike S. wrote:Also, are nodes y/14 for Rybka 3,
This y/14 thing was found in a reverse engineered Rybka 1 source, and did not mean that it was the unique node obfuscation in Rybka 1.
For Rybka 2 and 3, the nodecount of the Strelka and Robbo engines show that the obfuscation ratio is far from constant.
Ernest, you are all mixed up.

Re: Is Rybka engine is lying about node per second ?

Posted: Thu Dec 10, 2009 6:32 pm
by ernest
Am I?
I am only trying to help, so feel free to correct me! 8-)

Re: Is Rybka engine is lying about node per second ?

Posted: Thu Dec 10, 2009 6:54 pm
by Osipov Jury
y/14 is approximately true for Rybka 3, but only if the number of black and white moves in the search tree the same. It is not always the case.
In previous versions of Rybka completely different way of counting the number of nodes. In them there is no correlation with the actual number.

Re: Is Rybka engine is lying about node per second ?

Posted: Fri Dec 11, 2009 12:58 am
by bob
Dann Corbit wrote:
slobo wrote:
michiguel wrote:
bob wrote:
Dann Corbit wrote:
bnemias wrote:
Milos wrote:And why it is not showing real numbers, that you should ask Vas. Like why its exe is so large, or why it takes 64 more MB of memory and other peculiar things.
I think these issues provide more incentive to decompile than anything else.
What is the value of NPS? It's an irrelevant number, except for scale anyway.

While depth is more interesting, different programs consider depth differently. For instance, Junior does not count single reply moves to depth the way that other programs do.

Finally, if a man fails to trim his hedge, should this be a reason to burgle his house?
I think the issue is similar to a tachometer in a car. Should a manufacturer include a tach that reports bogus RPM? Won't affect speed or economy, correct? So the question is, why report something bogus? Many cars don't have a tach, which is better than having one that reports random numbers.
Actually, American cars give bogus numbers. For instance, my car speedometer keeps giving me the number 65, when it is actually 105 km/h.

Miguel
What was your point here?
That Vas was working in a car factory before he became a professional chess programer?
I believe his point was that the ratios are proportional.

IOW, Suppose that Rybka on 2 GHz machine gives 400 NPS. On 4 GHz we will expect 800 NPS.

Goliath on the same 2 GHz machine may report 4000 NPS. On the 4 GHz machine it would report 8000 NPS.

So what have we learned? Faster machines (or more cores) give higher NPS figures, but each and every chess engine gives different NPS figures anyway.

Here is something interesting:
You look at your computer output and it tells you that you are processing at 8792K NPS. What does this tell you about the quality if the chess answer that it will deliver?

Diep is famous for very low NPS. Will you be devastated if Diep reports 190K NPS but gives the right chess move for an answer?
The issue is "Why report a number if it is bogus?" What's the benefit? There is only one. To attempt to divert attention away from something that might be just a bit revealing about what goes on inside the program. This way, one would assume that the program is slow and has a lot of complex code guiding it along. People would be less likely to study and try to discover what is going on inside the search. But if you knew it was as fast as most other programs, then you would know the eval is no more complex, which leads to a discovery about where to look for more clarification.

Re: Is Rybka engine is lying about node per second ?

Posted: Fri Dec 11, 2009 3:10 am
by michiguel
bob wrote:
Dann Corbit wrote:
slobo wrote:
michiguel wrote:
bob wrote:
Dann Corbit wrote:
bnemias wrote:
Milos wrote:And why it is not showing real numbers, that you should ask Vas. Like why its exe is so large, or why it takes 64 more MB of memory and other peculiar things.
I think these issues provide more incentive to decompile than anything else.
What is the value of NPS? It's an irrelevant number, except for scale anyway.

While depth is more interesting, different programs consider depth differently. For instance, Junior does not count single reply moves to depth the way that other programs do.

Finally, if a man fails to trim his hedge, should this be a reason to burgle his house?
I think the issue is similar to a tachometer in a car. Should a manufacturer include a tach that reports bogus RPM? Won't affect speed or economy, correct? So the question is, why report something bogus? Many cars don't have a tach, which is better than having one that reports random numbers.
Actually, American cars give bogus numbers. For instance, my car speedometer keeps giving me the number 65, when it is actually 105 km/h.

Miguel
What was your point here?
That Vas was working in a car factory before he became a professional chess programer?
I believe his point was that the ratios are proportional.

IOW, Suppose that Rybka on 2 GHz machine gives 400 NPS. On 4 GHz we will expect 800 NPS.

Goliath on the same 2 GHz machine may report 4000 NPS. On the 4 GHz machine it would report 8000 NPS.

So what have we learned? Faster machines (or more cores) give higher NPS figures, but each and every chess engine gives different NPS figures anyway.

Here is something interesting:
You look at your computer output and it tells you that you are processing at 8792K NPS. What does this tell you about the quality if the chess answer that it will deliver?

Diep is famous for very low NPS. Will you be devastated if Diep reports 190K NPS but gives the right chess move for an answer?
The issue is "Why report a number if it is bogus?" What's the benefit? There is only one. To attempt to divert attention away from something that might be just a bit revealing about what goes on inside the program. This way, one would assume that the program is slow and has a lot of complex code guiding it along. People would be less likely to study and try to discover what is going on inside the search. But if you knew it was as fast as most other programs, then you would know the eval is no more complex, which leads to a discovery about where to look for more clarification.
Which is an extremely good and legitimate reason to provide the speed of a program in Ampere/Coulomb, which is what I would do if I had a commercial engine, so if someone get their noses where they should not put them, they at least would be scared to be electrocuted. ;-)

Miguel

Re: Is Rybka engine is lying about node per second ?

Posted: Fri Dec 11, 2009 3:56 am
by Milos
michiguel wrote:Which is an extremely good and legitimate reason to provide the speed of a program in Ampere/Coulomb, which is what I would do if I had a commercial engine, so if someone get their noses where they should not put them, they at least would be scared to be electrocuted. ;-)
It is quite possible your _humor_ would sound really funny in some other language. Somehow, in English it doesn't sound funny at all. It looks more like Muppet Gonzo's humor.

Re: Is Rybka engine is lying about node per second ?

Posted: Fri Dec 11, 2009 4:21 am
by Graham Banks
Milos wrote:
michiguel wrote:Which is an extremely good and legitimate reason to provide the speed of a program in Ampere/Coulomb, which is what I would do if I had a commercial engine, so if someone get their noses where they should not put them, they at least would be scared to be electrocuted. ;-)
It is quite possible your _humor_ would sound really funny in some other language. Somehow, in English it doesn't sound funny at all. It looks more like Muppet Gonzo's humor.
Sounds fine to me.