We’re upgrading each server’s CPU to a Ryzen 5950X. Normally it would be overkill, but our stake pools are large, and they’re constantly minting blocks. And because of our guarantee we’d lose around $800 for a single missed block (we compensate you for any missed blocks).
Currently each server has a Xeon E5-2690 v2 CPU. This is still faster than most servers. But the new processor is almost twice as fast (single core rating).
Why does the CPU matter? Well a node’s CPU usage is quite low for 99% of the time. But for some tasks, 100% of the CPU is used. And if your CPU is slow, your server could be unresponsive for an hour or more. It’s especially slow after something like an unexpected reboot, because the whole blockchain is checked for errors. During this time, a server admin can only sit, wait, and hope the server finishes its tasks in time for the next block. With a faster CPU, even with an unexpected reboot, the downtime is neglible.
Here’s another example where CPU is critical: If you run a stake pool on a VPS (shared server with other users), the CPU usage may momentarily spike (from other users on the server), and the server will be unresponsive for a few seconds. In this time a block can be missed. A few seconds doesn’t seem much, but it can happen 100 times in a day with VPS hosting. That’s why we’ve never used VPS hosting for our block producers. We’ve only ever used dedicated servers.
Basically if the stake pool you’re delegating to misses a block, your rewards are reduced. And having a server “connected to the Internet” 24/7 doesn’t guarantee blocks won’t be missed, because there are more variables than just connectivity. Most stake pool operators believe only RAM is important. But the CPU absolutely matters.
There are many other important features every pool’s server should have, like DDOS protection. This is when a hacker “hammers” your server with requests to overwhelm it. The result is it appears to be down, although it’s just flooded. Every server is vulnerable to DDOS. All a server admin can do is hide the server IPs for the block producers (the main servers, not the relays), use robust DDOS protection, apply strict firewalls, and monitor uptime closely. We do all these. Luckily the block producers are easier to protect than most servers because they’re only connected to the relays. So any DDOS attack would only affect the datacenter, instead of the individual server.