Author: Dann Corbit
Date: 11:37:45 01/29/01
Go up one level in this thread
On January 29, 2001 at 09:08:59, José Carlos wrote: > As I started to rewrite my book management code, I decide to rewrite the whole >engine in order to get more speed and being able to include new knowledge >without getting too slow. > With that idea, I tried changing my board[64] for a 0x88 move generator. Right >now, I've only written the move generator but, when I tested it to measure if >any improvement in speed, I got amazed. In this position: > >[D]rnbqkbnr/ppp2ppp/8/3pp3/3PP3/8/PPP2PPP/RNBQKBNR w KQkq d6 0 3 > > that, if I'm not wrong, is call "Vincent's test" (because Vincent Diepeveen >created it), where you have to generate all moves 2,000,000 times, I was getting >about 9,500,000 moves per second (8.5 seconds for the whole test) in my AMD >Athlon 550, with my old board[64]. > Now, with 0x88 I'm getting about 14,500,000 mps (5.5 seconds), which is a huge >improvement (I don't remember the exact numbers; it happend last night and I'm >at work right now). > My questions: > - is my new number (14,500,000 moves per second) really fast for my hardware >or I was really slow with my previous board[64]? > - does it make sense such improvement in speed for that change? > - could you please post your results in this test (and your hardware) for >your programs, so that I can compare. > > Tonight I'll continue with my make/unmake functions, which were my bottleneck >in Averno. I realized that the inCheck detection determined the speed of all the >program. Is there any "smart" trick for make fast in check detection with 0x88? For something more interesting, try both Vincent's position and also this one: 8/8/p1r5/6k1/KP6/8/8/5R2 b - - with both board formats.
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.