I am trying to understand exactly what is meant when a chess engine is reporting a number of explored nodes per second. For example, on a single thread, Stockfish is reporting about 1.5 million nodes explored per second (1.5 kN/s). My main question is whether:

  1. the positions explored during the typical quiescence phase are also taken into account
  2. positions already stored/analyzed in the transposition table are also taken into account

1 Answer 1


Nodes are just positions encountered or seen or visited during a search. Positions can be generated when an engine makes a move internally.

Starting from start position the engine may explore e4 e5, that is 3 nodes.
startpos = 1 (fen: rnbqkbnr/pppppppp/8/8/8/8/PPPPPPPP/RNBQKBNR w KQkq - 0 1)
pos after e4 = 1 (fen: rnbqkbnr/pppppppp/8/8/4P3/8/PPPP1PPP/RNBQKBNR b KQkq - 0 1)
pos after e5 = 1 (fen: rnbqkbnr/pppp1ppp/8/4p3/4P3/8/PPPP1PPP/RNBQKBNR w KQkq - 0 2)
total = 3 nodes or positions.

  1. Positions in qsearch() has to be counted as well as they are positions.
  2. Positions in the transposition table would not be counted as they are already counted assuming that it was counted when it was visited.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.