🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: gnu.chess
Article #5187

RE: PL69 Slower?

#5187
From: Mike McGann
Date: Tue, 12 Apr 1994 13:54
86 lines
3161 bytes
PL68 vs PL69 - Is it slower?

You cannot directly compare the speed of PL68 and PL69. There are major differences
between them that make the comparison difficult.

PL68 generates legal moves and PL69 generates psuedo-legal moves. In raw speed as you can see
from the test position PL69 generates about 120k moves/sec and PL68 about 71k. PL68 was the first
version to use legal-moves all previous versions had used psuedo-legal moves. The general 
impression of most people was that the slower move generation was not offset by the gain from less 
moves to process. In individual positions this, of course could go either way. So in PL69 it was
back to psuedo-legal moves. Note also that evaluation is faster in PL69.

******* PL69

White 0:00  Black 0:00

 R - - - - R K -
 P B Q P B - P P
 - - N - P - - -
 - - P N p P - -
 - - n - - - - -
 - - p b - n - -
 p p - - q p p p
 r - b r - - k -

Your move is? test
Testing MoveList Speed
Nodes= 820000 Nodes/sec= 192488
moves = 41
Testing CaptureList Speed
Nodes= 30000 Nodes/sec= 12096
moves = 1
Testing Eval Speed
Nodes= 15000 Nodes/sec= 2946

*******PL 68 

White 0:00  Black 0:00

 R - - - - R K -
 P B Q P B - P P
 - - N - P - - -
 - - P N p P - -
 - - n - - - - -
 - - p b - n - -
 p p - - q p p p
 r - b r - - k -


Your move is? test
Testing MoveList Speed
Nodes= 820000 Nodes/sec= 71057
moves=41
Testing CaptureList Speed
Nodes= 30000 Nodes/sec= 8695
moves=1
Testing Eval Speed
Nodes= 15000 Nodes/sec= 1827


**** SAVEHT

SAVEHT was a variable that is used to prevent caching of moves that used partial search in their evaluation.
Its use changed between PL68 and PL69. SAVEHT was introduced in PL68 to prevent the caching of moves whose
score contained values generated by capture only search as these were not true scores. In PL68 it is a binary
indicator. As soon as capture only search was invoked all caching stopped in that leg of the tree. In PL69
I attempted to gain back some of the information by changing it to say that the score from the capture only
would be used but the depth of the score would be the last full width depth. So up until capture only
search moves were cached with depth ply and below that depth SAVEHT. SAVEHT is also affected by QBLOCK.

To revert to the PL68 SAVEHT the correct patch is:

gnuchess.h

	#define QBLOCK false

search.c 

	if (flag.hash  && !SAVEHT /*&& ply <= Sdepth*/ && *rpt == 0 && best == alpha)	



I am continuing to look at the positions that were posted.

mike
mwm@ascom.ch
Technical Details
Message-ID: <1994Apr12.135458.12211@hasler.ascom.ch>
Path: arc1-ca.pugleaf.net!gmd.de!nntp.gmd.de!newsserver.jvnc.net!netnews.upenn.edu!dsinc!ub!news.kei.com!MathWorks.Com!europa.eng.gtefsd.com!howland.reston.ans.net!EU.net!chsun!hslrswi!mwm

Show Full Headers
Complete Article Headers
X-Google-Language: ENGLISH,ASCII-7-bit
X-Google-Thread: 10d71d,f089d9939cb26a5b,start
X-Google-Attributes: gid10d71d,public
X-Google-ArrivalTime: 1994-04-12 06:54:58 PST
Newsgroups: gnu.chess
Path: arc1-ca.pugleaf.net!gmd.de!nntp.gmd.de!newsserver.jvnc.net!netnews.upenn.edu!dsinc!ub!news.kei.com!MathWorks.Com!europa.eng.gtefsd.com!howland.reston.ans.net!EU.net!chsun!hslrswi!mwm
From: mwm@hasler.ascom.ch (Mike McGann)
Subject: RE: PL69 Slower?
Message-ID: <1994Apr12.135458.12211@hasler.ascom.ch>
Organization: Ascom Hasler AG, Berne, Switzerland
Date: Tue, 12 Apr 1994 13:54:58 GMT
Lines: 86