Skip to content

Commit 9a3b042

Browse files
authored
SIMD-0286: Increase block limits to 100M (#286)
* Add SIMD-0286 to increaes block limits to 100M * lint * pr feedback
1 parent c7632f3 commit 9a3b042

File tree

1 file changed

+89
-0
lines changed

1 file changed

+89
-0
lines changed
Lines changed: 89 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,89 @@
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

Comments
 (0)