The source for all engines I have looked at that have pawn hash update the pawn hash key incrementally during make/unmake, same as with the tt key. To me, this makes perfect sense in the opening and middlegame, when most moves do not affect the pawn structure (or whatever else you decide to put in the pawn key -- King position seems to be fairly common).
Anyway, as you near the endgame, particularly an endgame in which most of the pieces are pawns, it seems that this incremental update would actually be slower than simply calculating the pawn key from scratch at the leaves and then probing as normal in evaluation. I would think that the make/unmake option is worse in this case because the percentage of moves that require this update becomes higher AND you're searching deeper, so more makes/unmakes in the branch leading to the evaluation.
Does this make sense? Has anybody tried this?
Many thanks for your indulgences....
jm

