Docs: Update validator hardware recommendations

This commit is contained in:
Trent Nelson 2021-03-02 22:32:57 -07:00 committed by mergify[bot]
parent 658951e680
commit 5cd6a0c2f1
1 changed files with 30 additions and 33 deletions

View File

@ -2,35 +2,32 @@
title: Validator Requirements
---
## Hardware
## Hardware Recommendations
- CPU Recommendations
- We recommend a CPU with the highest number of cores as possible. AMD Threadripper or Intel Server \(Xeon\) CPUs are fine.
- We recommend AMD Threadripper as you get a larger number of cores for parallelization compared to Intel.
- Threadripper also has a cost-per-core advantage and a greater number of PCIe lanes compared to the equivalent Intel part. PoH \(Proof of History\) is based on sha256 and Threadripper also supports sha256 hardware instructions.
- SSD size and I/O style \(SATA vs NVMe/M.2\) for a validator
- Minimum example - Samsung 860 Evo 2TB
- Mid-range example - Samsung 860 Evo 4TB
- High-end example - Samsung 860 Evo 4TB
- CPU
- 12 cores / 24 threads, or more
- 2.8GHz, or faster
- AVX2 instruction support (to use official release binaries, self-compile
otherwise)
- Support for AVX512f and/or SHA-NI instructions is helpful
- The AMD Threadripper Zen3 series is popular with the validator community
- RAM
- 128GB, or more
- Motherboard with 256GB capacity suggested
- Disk
- PCIe Gen3 x4 NVME SSD, or better
- Accounts: 500GB, or larger. High TBW (Total Bytes Written)
- Ledger: 1TB or larger. High TBW suggested
- OS: (Optional) 500GB, or larger. SATA OK
- The OS may be installed on the ledger disk, though testing has shown better
performance with the ledger on its own disk
- Accounts and ledger _can_ be stored on the same disk, however due to high
IOPS, this is not recommended
- The Samsung 970 and 980 Pro series SSDs are popular with the validator community
- GPUs
- While a CPU-only node may be able to keep up with the initial idling network, once transaction throughput increases, GPUs will be necessary
- What kind of GPU?
- We recommend Nvidia Turing and volta family GPUs 1660ti to 2080ti series consumer GPU or Tesla series server GPUs.
- We do not currently support OpenCL and therefore do not support AMD GPUs. We have a bounty out for someone to port us to OpenCL. Interested? [Check out our GitHub.](https://github.com/solana-labs/solana)
- Power Consumption
- Approximate power consumption for a validator node running an AMD Threadripper 3950x and 2x 2080Ti GPUs is 800-1000W.
### Preconfigured Setups
Here are our recommendations for low, medium, and high end machine specifications:
| | Low end | Medium end | High end | Notes |
| :------------------ | :---------------------------------------------------- | :--------------------- | :--------------------- | :------------------------------------------------------------------------------------- |
| CPU | AMD Ryzen 3950x | AMD Threadripper 3960x | AMD Threadripper 3990x | Consider a 10Gb-capable motherboard with as many PCIe lanes and m.2 slots as possible. |
| RAM | 32GB | 64GB | 128GB | |
| Ledger Drive | Samsung 860 Evo 2TB | Samsung 860 Evo 4TB | Samsung 860 Evo 4TB | Or equivalent SSD |
| Accounts Drive\(s\) | None | Samsung 970 Pro 1TB | 2x Samsung 970 Pro 1TB | |
| GPU | Nvidia 1660ti | Nvidia 2080 Ti | 2x Nvidia 2080 Ti | Any number of cuda-capable GPUs are supported on Linux platforms. |
- Not strictly necessary at this time
- Motherboard and power supply speced to add one or more high-end gaming GPUs
in the future suggested
## Virtual machines on Cloud Platforms
@ -41,9 +38,9 @@ However, it may be convenient to run non-voting api nodes on VM instances for
your own internal usage. This use case includes exchanges and services built on
Solana.
In fact, the offical mainnet-beta API nodes are currently (Oct. 2020) run on GCE
`n1-standard-32` (32 vCPUs, 120 GB memory) instances with 2048 GB SSD for
operational convenience.
In fact, the mainnet-beta validators operated by the team are currently
(Mar. 2021) run on GCE `n2-standard-32` (32 vCPUs, 128 GB memory) instances with
2048 GB SSD for operational convenience.
For other cloud platforms, select instance types with similar specs.
@ -61,7 +58,7 @@ We use docker only for development purpose.
## Software
- We build and run on Ubuntu 18.04. Some users have had trouble when running on Ubuntu 16.04
- We build and run on Ubuntu 20.04. Some users have had trouble when running on Ubuntu 16.04
- See [Installing Solana](../cli/install-solana-cli-tools.md) for the current Solana software release.
Be sure to ensure that the machine used is not behind a residential NAT to avoid
@ -69,11 +66,11 @@ NAT traversal issues. A cloud-hosted machine works best. **Ensure that IP ports
For more information on port forwarding with regards to residential networks,
see [this document](http://www.mcs.sdsmt.edu/lpyeatt/courses/314/PortForwardingSetup.pdf).
Prebuilt binaries are available for Linux x86_64 \(Ubuntu 18.04 recommended\).
Prebuilt binaries are available for Linux x86_64 on CPUs supporting AVX2 \(Ubuntu 20.04 recommended\).
MacOS or WSL users may build from source.
## GPU Requirements
CUDA is required to make use of the GPU on your system. The provided Solana
release binaries are built on Ubuntu 18.04 with [CUDA Toolkit 10.1 update 1](https://developer.nvidia.com/cuda-toolkit-archive). If your machine is using
release binaries are built on Ubuntu 20.04 with [CUDA Toolkit 10.1 update 1](https://developer.nvidia.com/cuda-toolkit-archive). If your machine is using
a different CUDA version then you will need to rebuild from source.