Author: Uri Blass
Date: 15:07:13 01/12/03
Go up one level in this thread
On January 12, 2003 at 17:42:03, Bas Hamstra wrote: >On January 12, 2003 at 17:18:17, Vincent Diepeveen wrote: >>On January 12, 2003 at 17:14:18, Bas Hamstra wrote: >>you need indepth processor knowledge if you try to get a concept to work fast >>which needs a lot of work to get fast. > >I have a book about x86 optimation. "Inner loops" I believe it is called. It >crushes some well accepted C-myths. It also states that with the later >processors it becomes more and more difficult to outsmart the compilers with >asm. > >>this whereas bitboards is all optimized very well for the concept itself. >>you work against assembly language stuff in bitboards. >>so you better figure out how a processor works before writing a move generator. >> >>the improtant problems to solve >> - limit the number of branches >> - arrays are allowed to use but try to minimize them >> - do not mix 8 bits with 32 bits. perhaps faster on k6 and even k7, but >> not always. and not at p4. > >>the square attacked with incremental bitboards is a simple AND. >>see gnuchess 4.0 how to do it (not later raped versions of it). > >But then you imply an incrementally updated attacktable. I doubt that is going >to break the nps record, which is what I intended to do :-) I wanted to start >with a very fast piece-square searcher, good move sorting, checks in qsearch and >extensive pawn strucure analysis (in pawnhash). Now I know you are going to say >this won't get me anywhere, I KNOW it, but I just want to try for fun :-) And >maybe I will release the source, which I intend to be max 2000 lines. Including >UCI (400 lines), not winboard (20000+ lines). I believe that with a short program you are not going to break the np record. speed improvements can come from doing the code longer(for example seperate code for white and for black). Uri
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.