Server CPU cores, threads and ECC RAM decide how many requests a server can handle at once and how reliably it runs. Hosting plans list vCPUs and gigabytes, but those numbers mean different things on a VPS and a dedicated server. This guide explains the terms and shows how to check what you have.
Before you start
For the commands below you need SSH access to a Linux VPS or dedicated server.
Cores, threads and vCPUs
- Core – an independent processing unit on the CPU. Eight cores can run eight tasks truly in parallel.
- Thread – with Simultaneous Multithreading (Intel Hyper-Threading, AMD SMT) each core runs two threads. This adds throughput, typically well under double, because both threads share the core.
- vCPU – a virtual CPU on a VPS. It usually maps to one thread on the host, and threads may be shared with other VPSs unless the plan says dedicated cores.
- Clock speed – GHz per core. Higher single-core speed helps PHP, WordPress admin and game servers, which do much of their work on one thread per request.
More cores or faster cores?
| Workload | Prefers |
|---|---|
| WordPress, PHP sites | Fast cores; more cores for more concurrent visitors |
| Game servers (e.g. Minecraft) | High single-core speed |
| Many websites on one server | Many cores |
| Databases | Balance of cores, RAM and fast storage |
| Virtualisation hosts | Many cores and lots of RAM |
What ECC RAM is and why servers use it
ECC (Error-Correcting Code) memory stores extra check bits so it can detect and correct single-bit errors, which happen occasionally due to electrical noise or cosmic rays. On a desktop a flipped bit might crash an app; on a server running for years it can silently corrupt a database or file. Server platforms such as Intel Xeon and AMD EPYC use registered ECC memory for this reason.
How much RAM does a server need?
- Each PHP worker for WordPress commonly uses tens of megabytes or more, so concurrent PHP processes add up quickly.
- MySQL/MariaDB performs best when the active data fits in its buffer pool (
innodb_buffer_pool_size). - Leave headroom for the OS file cache, which speeds up disk reads.
- A control panel like cPanel needs its own memory on top of your sites.
Measure real usage rather than guessing: a server that regularly uses swap needs more RAM or tuning.
Check CPU and RAM on Linux
- CPU model, cores and threads:
lscpuLook at
CPU(s),Thread(s) per coreandModel name. - Memory and swap in human-readable units:
free -h - Whether RAM is ECC (on dedicated hardware, as root):
dmidecode -t memory | grep -i 'error correction' - Live load per process:
htop.
Troubleshooting
- High
stealtime in top on a VPS: the host is busy and your vCPUs are waiting. Contact your provider or move to dedicated cores. - Out-of-memory kills in logs: check
journalctl -k | grep -i oomand reduce PHP workers or add RAM.
FAQ: CPU cores, threads and ECC RAM
Is a vCPU the same as a physical core?
Usually not. A vCPU is normally one hardware thread, and it may be shared with other virtual machines.
Do I need ECC RAM for a VPS?
You cannot choose it on a VPS; it depends on the host's hardware. On a dedicated server for production data, choose ECC.
What does load average mean?
It is the average number of processes running or waiting. A load consistently above your thread count means the CPU is saturated.
