1
So, Bitcoin block consists of some static (magic number, version, previous hash...) and dynamic (timestamp, Merkle Root, transaction count and transactions) elements. What I don't understand is if we update active parts, wouldn't we start guessing nonce from the beginning every time and also calculating the new merkle root would be time-consuming for each transaction? I understand that since PoW is memoryless it doesn't effect much if it is updated every seconds or with every transaction but it may be slower to compute new hashes and root. I'm sorry if I'm wrong but, if miners freeze the block at certain time would they have an advantage. I searched a lot, but couldn't find an article or video of what really happens during mining in slo-mo.
It needn't be a fixed time interval. In principle, a miner could measure how much it costs them (in terms of lost mining time) to restart with a new block header, and then restart only if the new block's fees exceed the old block's by at least that amount. This amount could of course be different for different miners, depending on their hardware. – Nate Eldredge – 2019-10-20T20:06:50.720