Skip to content

Commit

Permalink
Raise Block Limits to 50M
Browse files Browse the repository at this point in the history
  • Loading branch information
apfitzge committed Dec 5, 2024
1 parent 957cdc2 commit e6d4205
Showing 1 changed file with 92 additions and 0 deletions.
92 changes: 92 additions & 0 deletions proposals/0207-raise-block-limits-to-50M.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,92 @@
---
simd: '0207'
title: Raise Block Limits to 50M CUs
authors:
- Andrew Fitzgerad (Anza)
category: Standard
type: Core
status: Review
created: 2024-12-05
feature:
supersedes:
superseded-by:
extends:
---

## Summary

Raise the block limit from 48M to 50M CUs.

## Motivation

Current block limits are set to 48M CUs.
Block limits's primary purpose is to make sure that the vast majority of
network participants are able to keep up with the network, by restricting the
amount of work a leader is allowed to pack into a block.
However, current main net beta traffic is largely not constrained by large
block execution times.
This proposal aims a modest increase in block limits to 50M CUs, in order to
give some additional capacity to the network, and client implementations ready
for future increases as the performance of the network improves.

## New Terminology

No new terms, but the following definitions are given for clarity:

- Max Block Units - The maximum number of CUs that can be included in a block.
- Max Writable Account Units - The maximum number of CUs that can be used to
write any given account in a block.
- Max Vote Units - The maximum number of CUs that can be used by simple votes
in a block.
- Max Block Accounts Data Size Delta - The maximum size of the accounts data
size delta in a block.

## Detailed Design

The following table shows the current block limits and the proposed block
limits:

| Type | Current Block Limit | Proposed Block Limit |
|------|----------------------|----------------------|
| Max Block Units | 48M | 50M |
| Max Writable Account Units | 12M | 12M |
| Max Vote Units | 36M | 36M |
| Max Block Accounts Data Size Delta | 100MB | 100MB |

This proposal only changes the `Max Block Units` limit.
The purpose is to increase capacity for non-vote transactions.
The `Max Writable Account Units` is left unchanged since there is no specific
push to increase the capacity for individual accounts at this time.
Keeping `Max Writeable Account Units` unchanged while raising the
`Max Block Units` , allows for additional parallel capacity.

## Alternatives Considered

- Leave the block limits as they are
- This leaves capacity on the table, we want to get ready for future
increases.
- Double limit to 96M CUs
- Viewed as too aggressive at this time, and may cause unforeseen issues
particularly in infrastructure supporting the network users.
- We instead plan to increase the limits incrementally as the network
performance improves.

## Impact

- More transactions can be included per block.

## Security Considerations

- Blocks may take longer to execute, slowing down network progress.

## Drawbacks

- Larger blocks may cause unforseen issues in infrastructure beyond the
validators.

## Backwards Compatibility

- All previously valid blocks are still valid, since limits are only
increasing.
- Blocks produced after the change may be rejected by previous versions that do
not support the new limits.

0 comments on commit e6d4205

Please sign in to comment.