Aleks Peshkov wrote:Digging into CCC I found a very interesting bitboard layout: Efficient Bitboard Implementation on 32-bit Architecture
Of course 9 years later 32-bit microoptimization is not a hot theme, but it gives me a direction to think about improving currently known bitboard magic and nonmagic techniques. At least it is worse a short word in wiki's history pages.
Yes, bitboard history definitely needs some update and separate pages.
Of course rotated was a kind of bitboard revolution. Also Roberto Waldteufel's contributions are worth to mention as well as others, like Urban Koistinen with a lot of interesting posts in rgcc. The light - dark color bitboards are quite interesting - in fact one of them was used by Samuel in his checkers program. I think also Grant Osborne has some interesting 32-bit improvements on magic bitboards. Feel free to add a new page(s) with history issues. Wiki pagenames may contain spaces btw..
Aleks Peshkov wrote:Digging into CCC I found a very interesting bitboard layout: Efficient Bitboard Implementation on 32-bit Architecture
Of course 9 years later 32-bit microoptimization is not a hot theme, but it gives me a direction to think about improving currently known bitboard magic and nonmagic techniques. At least it is worse a short word in wiki's history pages.
Another idea: notice that out of the 8 rays involved in sliding attacks from a given square, only 3 of them can cross from one half of the board to the other. So you can use simpler 32-bit constructions for most of the rays when doing sliding attack stuff (though you now have to pay for one branch up front). There's probably some trick involving BSF/BSR that would make this fast on machines with fast BSF/BSR instructions.
Whether it would be fast enough to beat the modern magics, I have no idea. Some of the bitboard-based attack generators you guys have come up with in the past few years are very impressive.