Author: Robert Hyatt
Date: 20:24:13 04/23/00
Go up one level in this thread
On April 23, 2000 at 22:28:07, Tom Kerrigan wrote: >On April 23, 2000 at 22:07:33, Robert Hyatt wrote: > >>On April 23, 2000 at 21:37:45, Tom Kerrigan wrote: >> >>>On April 23, 2000 at 21:12:59, Brian Richardson wrote: >>> >>>>This includes MVV/LVA (actually modified TSCP gen_push() which is quite a bit >>>>slower than the *move++= pointer method), one 64 bit hash key, plus white and >>>>black pawn counts and material values. Non-rotated bitmap move generation. >>> >>>What sort of non-rotated bitmaps do you keep? I think the speed is pretty >>>impressive. >>> >>>-Tom >> >> >>Here is the number for the right position (Crafty). Somehow my script before >>didn't execute the command to set a FEN position. On my PII/400 notebook, I get >>159.43 seconds. > >How is it that Crafty is 15x slower than Stobor when the test is done from the >initial position, but 10% faster when it's done from Peter's position? > >-Tom When I ran the test, I had -DDEBUG turned on for something else. That does a _huge_ amount of positional validation after each MakeMove() and UnMakeMove(). I didn't notice until I ran the right position and after 10 minutes it was still stuck. I remembered that I was testing something and had left that on... BTW, on the xeon 550, the time is 114.20. That is a 550mhz cpu, 512K L2 cache, 100mhz FSB. BTW, this could probably run faster if I wanted. I never intended the perft stuff to be used as a performance test, only as a 'validate that the move generator is not screwing up' test... A better test here is to pick a position and generate or generate/make/unmake moves over and over, without doing the recursive calls and so forth... or the legality checks, etc... Here is output for Peter's position, generating the moves from the same position N times, then generating/making/unmaking the moves M times: White(1): perf generated 48000000 moves, time=7.57 seconds generated 6340818 moves per second generated/made/unmade 48000000 moves, time=38.66 seconds generated/made/unmade 1241593 moves per second In this case, M/N are one million. so it does each thing 1000000 times... no searching, no validity checking, just generating 1M times to time just the move generator efficiency, then generate the legal moves, make/unmake each one, 1M times to test generate/make/unmake efficiency...
This page took 0 seconds to execute
Last modified: Thu, 15 Apr 21 08:11:13 -0700
Current Computer Chess Club Forums at Talkchess. This site by Sean Mintz.