-
-
owned this note
-
Published
Linked with GitHub
THIS DOCUMENT IS NOW REDUNDANT. EXPECT AN UPDATED VERSION ON ETHRESEARCH FROM KEV.
# Minimal staking machine definition
## Rationale
As the discussions about blob/gas increases continue, we seem to come down to a lack of consensus on what a minimum supported node is. Having a single node as a minimal node runs into the issue of canonicalizing architectures, CPU optimisations, bugs and more. Hence the approach we opted to take is to choose a wider array of nodes and call the entire class "minimum node set", the idea being that these nodes would represent an entire generation or class of nodes we want to continue to support.
The minimum node set should take into account availability of the machines across world markets, average selling price and setup effort required. The requirements discussed here are for a minimal node that is able to sync and validate on the network. The recommended requirements will always be higher, to facilitate for participation in an unhealthy network, edge cases and future growth overhead, etc.
There will be some parameters that will continue to evade us, latency and bandwidth for example. A 25mbps connection in Frankfurt with great peering to DE-CIX will perform vastly different from a 25mbps connection in rural Australia. Other parameters such as router type would also continue to skew the result. Hence we'd avoid focusing much on the bandwidth aspect of the minimal node definition.
Since the Ethereum beaconchain launched in 2020, it would make sense to choose reasonable hardware that was launched at this point in time (with the exception of ARM). However, We do also want to point out that while this is a good starting point for understanding minimum requirements, we do not want to preclude the option to update these requirements based on technical advancements or needs of the network.
## Proposal
| Architecture | CPU | Device | RAM | Disk | Notes |
| ------------ | ---------------------- | ------------------------- | -------------------------------- | ------------------------ | ----- |
| amd64 | i5-10210U (4c/8t) | Intel NUC10i5FNH 10th Gen | 16GB Dual Channel DDR4 - 2666Mhz | 2TB Samsung 970 Evo Plus | |
| amd64 | Ryzen 5 4500U (6c/12t) | Asus Mini PC PN50 | 16GB Dual Channel DDR4 - 2666Mhz | 2TB Crucial P2 | |
| ARM | Quad-core A76 | Radxa Rock 5B | 16GB | 2TB WD Blue SN550 | |
| ARM | Quad-core A76 | NanoPC T6 | 16GB | 2TB Samsung 970 Evo Plus | |
## Usage
Various teams could physically purchase multiples of these machines for benchmarks, performance comparisons and decisions around upgrades.