Overview

Hardware issues can sometimes (rarely) occur, where something is not working right and our monitoring systems may not have picked up on it. This could potentially be non-satisfactory CPU performance, disk performance, or other such issues with the server hardware itself. There are various ways you can diagnose this and provide information to our support team. As always, please open a ticket if you run into any problems.

CPU Performance

If you are experiencing unsatisfactory CPU performance on a virtual server, there are a few things you can check. You can try running the top command in your operating system and checking the value called st. This indicates CPU steal, which is the percentage of CPU time your VPS is waiting for from the hypervisor. We generally aim to keep CPU steal at 0 percent across our hypervisors. However, in some cases where CPU contention is higher, you may see values between 5 to 10 percent. This is not unusual in shared environments where multiple virtual servers are competing for CPU resources. Even if the hypervisor still has CPU headroom, some steal can still occur if the host is above 50 percent usage and starting to rely on hyperthreading, or due to other low-level factors. If your CPU steal value regularly exceeds 10 percent, it may be worth opening a support ticket. You can use tools like HetrixTools or Netdata to monitor CPU steal over time without having to constantly check top. These tools can generate graphs that are helpful for our team to diagnose patterns or specific times when performance issues occur. If you’re not seeing any CPU steal but performance is still poor, please reach out and we can investigate further. Keep in mind that some benchmarks like Geekbench may report lower scores when the VPS is utilizing hyperthreaded vCPU cores. In rare cases, abnormal CPU steal can also be caused by hardware issues. We’ve seen situations where faulty memory led to spikes in CPU steal despite otherwise normal conditions. We greatly appreciate any reports regarding CPU steal or unsatisfactory performance, because it allows us to see if there is an underlying issue. Note that CPU steal is only applicable to virtual servers. On dedicated servers or bare metal machines, CPU steal does not exist. If you’re seeing performance issues on dedicated hardware, try installing lm-sensors and check the CPU temperatures as a first step.

Disk Performance

Generally we use enterprise Gen3 or Gen4 NVMe SSD’s across almost all of our VPS hypervisors, so disk performance issues are extraordinarily rare. We would recommend running curl -sL yabs.sh | bash -s -- -i -g -n and checking the fio results it outputs (Note: yabs.sh is a third-party tool, use at your own risk). As long as the 1m result is above 1 GB/s and 4k results are above 100 MB/s, it should be okay. Keep in mind that the disk speeds are usually shared, and sometimes Linux caches the disk into memory which causes fio results to be high for 4k/1m. Our virtual servers typically greatly exceed the 100 MB/s 4k and 1 GB/s 1m.
fio Disk Speed Tests (Mixed R/W 50/50):
---------------------------------
Block Size | 4k            (IOPS) | 64k           (IOPS)
  ------   | ---            ----  | ----           ----
Read       | 219.67 MB/s  (54.9k) | 1.64 GB/s    (25.7k)
Write      | 220.25 MB/s  (55.0k) | 1.65 GB/s    (25.8k)
Total      | 439.93 MB/s (109.9k) | 3.30 GB/s    (51.5k)
           |                      |
Block Size | 512k          (IOPS) | 1m            (IOPS)
  ------   | ---            ----  | ----           ----
Read       | 4.30 GB/s     (8.4k) | 4.91 GB/s     (4.7k)
Write      | 4.53 GB/s     (8.8k) | 5.24 GB/s     (5.1k)
Total      | 8.84 GB/s    (17.2k) | 10.15 GB/s    (9.9k)
If you are seeing low disk performance (i.e. under 1 GB/s on 1m or 100 MB/s on 4k), please open a ticket so that we can investigate.