|
| 1 | +--- |
| 2 | +simd: '0286' |
| 3 | +title: Increase Block Limits to 100M CUs |
| 4 | +authors: |
| 5 | + - Lucas Bruder (Jito Labs) |
| 6 | +category: Standard |
| 7 | +type: Core |
| 8 | +status: Review |
| 9 | +created: 2025-05-20 |
| 10 | +feature: TBD |
| 11 | +development: |
| 12 | + - Anza - TBD |
| 13 | + - Firedancer - TBD |
| 14 | + - Jito Labs - TBD |
| 15 | +--- |
| 16 | + |
| 17 | +## Summary |
| 18 | + |
| 19 | +Increase the block limit to 100M CUs. |
| 20 | + |
| 21 | +## Motivation |
| 22 | + |
| 23 | +Current block limits are set to 50M CUs. SIMD-0256 will increase them to 60M. |
| 24 | +Block limits' primary purpose is to ensure the vast majority of network |
| 25 | +participants are able to keep up with the network, by restricting the amount of |
| 26 | +work a leader is allowed to pack into a block. However, current mainnet traffic |
| 27 | +is largely not constrained by large block execution times. This proposal aims a |
| 28 | +substantial increase in block limits to 100M CUs, in order to provide additional |
| 29 | +capacity to the network. |
| 30 | + |
| 31 | +## New Terminology |
| 32 | + |
| 33 | +No new terms, but the following definitions are given for clarity: |
| 34 | + |
| 35 | +- Max Block Units - The maximum number of CUs that can be included in a block. |
| 36 | +- Max Writable Account Units - The maximum number of CUs that can be used to |
| 37 | + write any given account in a block. |
| 38 | +- Max Vote Units - The maximum number of CUs that can be used by simple votes |
| 39 | + in a block. |
| 40 | +- Max Block Accounts Data Size Delta - The maximum size of the accounts data |
| 41 | + size delta in a block. |
| 42 | + |
| 43 | +## Detailed Design |
| 44 | + |
| 45 | +The following table shows the current block limits and the proposed block |
| 46 | +limits: |
| 47 | + |
| 48 | +| Type | Current Block Limit | SIMD-0256 Limit | Proposed Block Limit | |
| 49 | +|------|-----|-----------------|---------------------| |
| 50 | +| Max Block Units | 50M | 60M | 100M | |
| 51 | +| Max Writable Account Units | 12M | 12M | 12M | |
| 52 | +| Max Vote Units | 36M | 36M | 36M | |
| 53 | +| Max Block Accounts Data Size Delta | 100MB | 100MB | 100MB | |
| 54 | + |
| 55 | +This proposal only changes the `Max Block Units` limit. |
| 56 | +The purpose is to increase capacity for non-vote transactions. |
| 57 | +The `Max Writable Account Units` is left unchanged since there is no specific |
| 58 | +push to increase the capacity for individual accounts at this time. |
| 59 | +Keeping `Max Writeable Account Units` unchanged while raising the |
| 60 | +`Max Block Units` , allows for additional parallel capacity. |
| 61 | + |
| 62 | +The intention is for this to follow SIMD-0256 (as opposed to replacing). |
| 63 | +SIMD-0256 is a much more modest increase in block space. This proposal |
| 64 | +aims to increase block space more aggressively. |
| 65 | + |
| 66 | +## Alternatives Considered |
| 67 | + |
| 68 | +- Smaller increase of limit to 80M CUs |
| 69 | + - Not IBRL'ing fast enough |
| 70 | + |
| 71 | +## Impact |
| 72 | + |
| 73 | +- More transactions can be included per block. |
| 74 | + |
| 75 | +## Security Considerations |
| 76 | + |
| 77 | +- Blocks may take longer to execute, slowing down network progress and catchup times. |
| 78 | + |
| 79 | +## Drawbacks |
| 80 | + |
| 81 | +- Larger blocks may cause unforseen issues in infrastructure beyond the |
| 82 | + validators. |
| 83 | + |
| 84 | +## Backwards Compatibility |
| 85 | + |
| 86 | +- All previously valid blocks are still valid, since limits are only |
| 87 | + increasing. |
| 88 | +- Blocks produced after the change may be rejected by previous versions that do |
| 89 | + not support the new limits. |
0 commit comments