website

The source code for https://bpaul.xyz
Log | Files | Refs

2-bitboards.md (594B)


      1 #Bitboards
      2 
      3 Nowadays, chess programs represent the board using bitboards.
      4 
      5 Blah blah what are bitboards
      6 
      7 I want to optimize the usage of bitboards for SIMD stuff.
      8 
      9 The functions that are called the most are:
     10 Move make
     11 Move unmake
     12 Move generate
     13 
     14 vectorize these somehow.
     15 
     16 Move make function:
     17 move a piece from a square to another square
     18 
     19 
     20 
     21 
     22 NOTE: LZCNT is one clock cycle usually whereas TZCNT is TWO clock cycles usually on Zen 1,2,3 cpus!!!!!!!!!! strange right?
     23 NOTE2: wow i forgot the fact that LZCNT counts how many 0s are at the end, not the position of the MSB, so TZCNT is still faster!