Hi Bob,
I noticed in MakeMove you do:
tree->save_hash_key[ply] = HashKey;
tree->save_pawn_hash_key[ply] = PawnHashKey;
wouldn't we save some time if instead we do it at the top of the search when entering a new node?
If you save that in that place you woudn't need to do it at every MakeMove.
The other suggestion is if you could gradually make crafty more friendly to the Microsoft Visual Studio 2008 compiler. I know you don't like windows, I don't like it either. But windows have a very large install base and when I pass my programs to some friends of mine they must be for windows because all the have is windows.
You are a friend of Eugene Nalimov, wich is a msvc guru, maybe he could contribute.
Best regards,
Alvaro
two crafty suggestions
Moderators: hgm, Rebel, chrisw
-
- Posts: 362
- Joined: Thu Mar 16, 2006 7:39 pm
- Location: Portugal
- Full name: Alvaro Cardoso
-
- Posts: 362
- Joined: Thu Mar 16, 2006 7:39 pm
- Location: Portugal
- Full name: Alvaro Cardoso
A few more things
Have you tried to also use killer moves from [ply-2]?
And what about a mate killer? A killer with a mate score should probably go after the hash move. This idea is from Ed Schroeder.
It is these little things I would like to test if I could compile crafty with msvc
best regards,
Alvaro
And what about a mate killer? A killer with a mate score should probably go after the hash move. This idea is from Ed Schroeder.
It is these little things I would like to test if I could compile crafty with msvc
best regards,
Alvaro
-
- Posts: 20943
- Joined: Mon Feb 27, 2006 7:30 pm
- Location: Birmingham, AL
Re: A few more things
I don't think the "mate killer" is worthwhile myself. Mates are very rare in a chess game, until the game has probably already been decided by previous play. I doubt it would offer any speedup at all except in mate-in-N type positions. The commercial guys used to (probably still do) care about solution times on chess problems, where I really don't...Cardoso wrote:Have you tried to also use killer moves from [ply-2]?
And what about a mate killer? A killer with a mate score should probably go after the hash move. This idea is from Ed Schroeder.
It is these little things I would like to test if I could compile crafty with msvc
best regards,
Alvaro
The killers from ply-2 and such have already been tried. We did this in Cray Blitz and it was effective, but for whatever reason (aggressive null-move, reductions, extensions, etc) it did not work when I tried it. It didn't hurt, but it is a performance hit that slowed things down and didn't reduce the tree size to compensate for this.