Is Rybka engine is lying about node per second ?

Discussion of anything and everything relating to chess playing software and machines.

Moderators: hgm, Rebel, chrisw

User avatar
Dr.Wael Deeb
Posts: 9773
Joined: Wed Mar 08, 2006 8:44 pm
Location: Amman,Jordan

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

Post 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:
_No one can hit as hard as life.But it ain’t about how hard you can hit.It’s about how hard you can get hit and keep moving forward.How much you can take and keep moving forward….
User avatar
Mike S.
Posts: 1480
Joined: Thu Mar 09, 2006 5:33 am

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

Post 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.
Regards, Mike
ernest
Posts: 2041
Joined: Wed Mar 08, 2006 8:30 pm

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

Post 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.
Osipov Jury
Posts: 186
Joined: Mon Jan 21, 2008 2:07 pm
Location: Russia

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

Post 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.
ernest
Posts: 2041
Joined: Wed Mar 08, 2006 8:30 pm

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

Post by ernest »

Am I?
I am only trying to help, so feel free to correct me! 8-)
Osipov Jury
Posts: 186
Joined: Mon Jan 21, 2008 2:07 pm
Location: Russia

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

Post 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.
bob
Posts: 20943
Joined: Mon Feb 27, 2006 7:30 pm
Location: Birmingham, AL

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

Post 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.
User avatar
michiguel
Posts: 6401
Joined: Thu Mar 09, 2006 8:30 pm
Location: Chicago, Illinois, USA

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

Post 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
Milos
Posts: 4190
Joined: Wed Nov 25, 2009 1:47 am

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

Post 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.
User avatar
Graham Banks
Posts: 41419
Joined: Sun Feb 26, 2006 10:52 am
Location: Auckland, NZ

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

Post 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.
gbanksnz at gmail.com