pull down to refresh
I would be curious to understand empirically how a grug "keep the highest paying transactions in" would compare to cluster mempool in terms of profitable block template generation. Again, with a significant amount of ram available.
Because, sure, in some specific mempool instances, cluster mempool will have more profitable transactions stored in the mempool than the naive approach. But how frequently does that happen in real life?
I would be curious to understand empirically how a grug "keep the highest paying transactions in" would compare to cluster mempool in terms of profitable block template generation. Again, with a significant amount of ram available.
Me too.
Greedy algorithms usually do extremely well. Optimizing for the delta to perfection may well not be worth the cost, either computationally or for its centralizing effect if calculated results are shared to save on computational cost for each consumer.
Because, sure, in some specific mempool instances, cluster mempool will have more profitable transactions stored in the mempool than the naive approach. But how frequently does that happen in real life?
Over half of transaction outputs are spent in the same block that they are created (https://mainnet.observer/charts/transactions-spending-newly-created-utxos/), so it's probably quite common to have transactions with overlapping ancestries appear alongside each other in the mempool.
The main purpose of cluster mempool is to make more profitable block templates. Smarter eviction is just a beneficial side effect from applying the new method to both the top and bottom of your node's mempool.