In September, 2014, a collective experiment began in the bitcoin ecosystem. Available block space (1MB) began to sometimes fall short of the space required to mine all of the transactions that would otherwise have been included.
This chart, posted earlier, shows the onset of the some-blocks-at-maximum era. http://i.imgur.com/5Gfh9CW.png Although the average block is only about 400K, real blocks are bigger or smaller due to the random length of time between blocks (and other factors). I look at how often this is predicted to happen. Recently, transactions have been confirmed at a rate of about 100000/day*. The average transaction size for the past 6000 blocks has been 545 bytes. Using these values, txesPerMinute = 100000 / 24 / 60 = 69.4 txesInMaxBlock = 999977 / 545 = 1834 minutesToFillBlock = txesInMaxBlock/txesPerMinute = 26.4 Using the theoretical formula for the time before an inter-block interval of at least a given length ** blockChickenMinutes[x] := 10 (exp(x/10) - x/10 - 1) we obtain minutesBetweenFullBlocks = blockChickenMinutes[minutesToFillBlock] = 104 We currently expect a maximum-size block every 1 hour + 44 minutes, on average. If the transaction rate doubles, we should expect a maximum-size block every 14 minutes, on average. The non-linearity makes sense, because doubling the average without raising the maximum requires disproportionately more maximum-size blocks. This estimate is understated because transaction size and submission rate have their own distributions. Using the averages of 545 bytes and 100000/day ignores the fact that for some blocks, there are unusually big and/or numerous transactions, which increases the block size variance and causes blocks over the threshold to be encountered more frequently. These calculations are confirmed by empirical observation of the most recent 6000 blocks: http://i.imgur.com/0pQUsdl.png In many cases, the miner chose to create a 750KB block, which is unusually likely to be followed by another 750KB or 1MB block, because the next interval starts off with a 250KB backlog. Some backlog transactions may experience more than 1 block delay in these cases. * https://www.quandl.com/data/BCHAIN/NTRAN-Bitcoin-Number-of-Transactions ** This is a chicken-crossing-the-road problem. Wait time = (exp(λx) − λx - 1) / λ Some discussion at https://github.com/nanotube/supybot-bitcoin-marketmonitor/pull/68. ------------------------------------------------------------------------------ _______________________________________________ Bitcoin-development mailing list Bitcoin-development@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/bitcoin-development