At what point in the mining cycle do new mempool transactions typically get added to the Merkle tree of a candidate block and what variables govern this?
Is a mempool snapshot taken once and then mined until a winner arrives or is found?
Or do miners continually add new transactions to the existing block opportunistically? If so is there any impact on the hashing speed due to the re-computation of the header? Maybe there isn't since the CPU can do that, while the ASIC does the mining? I suppose that would be an opportunity to reset the nonce too.
I'm sure algo's vary from miner to miner, I'm most interested in BitcoinCore's implementation and other popular systems including es cgminer and bfgminer.
Thanks for any insights, I am not a miner, but interested in the effect on the mempool and chances of a new TX getting into the next block.