SIMD-0223: removes accounts delta hash
simd: '0223' title: Removes Accounts Delta Hash authors: - Brooks Prumo category: Standard type: Core status: Accepted created: 2025-01-13 feature: LTdLt9Ycbyoipz5fLysCi1NnDnASsZfmJLJXts5ZxZz
Summary
With the introduction of the Accounts Lattice Hash (SIMD-215), the merkle-based Accounts Delta Hash is redundant and can be removed.
Motivation
This SIMD follows on from SIMD-215, and shares its motivation:
> The main goal is to scale Solana to billions accounts
When a block is done being processed, it is frozen. The bank hash is calculated during the freezing process, and includes calculating the Accounts Delta Hash. The Accounts Delta Hash is the merkle-based hash of the accounts modified in this block. As established in SIMD-215, merkle-based hashing of accounts hinders scaling. And since SIMD-215 added the Accounts Lattice Hash, which is a hash of the total account state, the merkle-based hash of only the accounts modified per block is redundant. Therefore the Accounts Delta Hash can be removed from the bank hash entirely.
New Terminology
None.
Detailed Design
Remove the Accounts Delta Hash from the Bank Hash.
Alternatives Considered
None.
Impact
Only validators will be impacted, and their performance will improve since the merkle-based hashing of modified accounts per block will no longer be performed.
Security Considerations
None.
Backwards Compatibility
Incompatible. This changes the bank hash, thus changing consensus.