After some further test, in advanced state of development, i've found that in effect the C++ speed was not so good as expected. Compared to assembly version, i get more than 2 plyes less!!! Satana C++ needs more time to finish 6 plyes alfabeta search than Freccia assembly with a 8 plyes alfagemma search. That's not good, for me. I plan to rewrite the moves generator, maybe using bit boards or magic bitoboard or some other mixed approach.stegemma wrote:...
That may means that Freccia 32 bit assembly on XP Virtual Box have the same speed that Satana C++ on 64 bit Mac console. This is a great and unexptected result, for me.
New chess software announce: Satana
Moderator: Ras
-
stegemma
- Posts: 859
- Joined: Mon Aug 10, 2009 10:05 pm
- Location: Italy
- Full name: Stefano Gemma
Re: New chess software announce: Satana
-
stegemma
- Posts: 859
- Joined: Mon Aug 10, 2009 10:05 pm
- Location: Italy
- Full name: Stefano Gemma
Re: New chess software announce: Satana
I've finished the new move generator. I still use C++ but in a more C-like way. Now i've tried the bitboard approach instead of my old kind of move generation. I don't know if mine is truly bitboard... i think is something similar but still very simpler than standard bitboard. No magics, no rotated and so on... in fact, i really don't know anything about bit boards, just start coded what i think they should be 
Here are the timings of the move generators from initial position. I've generated 10 millions times the first white move. Not so interesting, as a test, but this is only the beginning:
new Engine time=1.229853 s
old Engine time=18.538550 s
So the C-like bitboard move generator seems to be about 15 times faster than the C++ move generation without bitboards.
Next step is to port alfabeta to new move generation...
PS: bitboard generator takes me only one day to write it, very good, i thing it could be worst
Here are the timings of the move generators from initial position. I've generated 10 millions times the first white move. Not so interesting, as a test, but this is only the beginning:
new Engine time=1.229853 s
old Engine time=18.538550 s
So the C-like bitboard move generator seems to be about 15 times faster than the C++ move generation without bitboards.
Next step is to port alfabeta to new move generation...
PS: bitboard generator takes me only one day to write it, very good, i thing it could be worst