Benchmark and Performance Testing
CPU Benchmark
sysbench (recommended)
apt install sysbench -y # Debian/Ubuntu
dnf install sysbench -y # AlmaLinux/CentOS
# Single-thread CPU test
sysbench cpu --threads=1 run
# Multi-thread test (uses all cores)
sysbench cpu --threads=$(nproc) run
Important output:
CPU speed:
events per second: 4521.23
General statistics:
total time: 10.0006s
total number of events: 45217
Higher events per second means better CPU.
stress-ng (prolonged stress test)
apt install stress-ng -y
# CPU stress test for 60 seconds
stress-ng --cpu $(nproc) --timeout 60s --metrics-brief
Disk Benchmark (I/O)
fio (more accurate)
apt install fio -y
# Sequential read test
fio --name=seq-read --rw=read --bs=1M --size=1G --numjobs=1 --runtime=30 --group_reporting
# Sequential write test
fio --name=seq-write --rw=write --bs=1M --size=1G --numjobs=1 --runtime=30 --group_reporting
# Random IOPS test (typical database)
fio --name=rand-rw --rw=randrw --bs=4k --size=512M --numjobs=4 --runtime=30 --group_reporting
dd (fast but approximate)
# Write test
dd if=/dev/zero of=/tmp/testfile bs=1G count=1 oflag=direct
# Read test
dd if=/tmp/testfile of=/dev/null bs=1G count=1
# Cleanup
rm /tmp/testfile
On NVMe SSD expected: 500–3500 MB/s. On SATA SSD: 300–600 MB/s. Much lower values indicate shared storage or high load.
Network Benchmark
speedtest-cli
pip install speedtest-cli --break-system-packages
speedtest --simple
Output:
Ping: 4.235 ms
Download: 946.84 Mbit/s
Upload: 947.12 Mbit/s
Alternative without Python:
curl -s https://packagecloud.io/ookla/speedtest-cli/gpgkey | apt-key add -
apt install speedtest -y
speedtest
iperf3 (between two servers)
Useful for testing bandwidth between two VPS.
On destination server:
apt install iperf3 -y
iperf3 -s
On source server:
apt install iperf3 -y
iperf3 -c DESTINATION_IP -t 30
Latency to common destinations
# Latency to Google, Cloudflare, Italian servers
ping -c 10 8.8.8.8
ping -c 10 1.1.1.1
ping -c 10 google.com
# MTR (mix ping + traceroute)
apt install mtr -y
mtr --report --report-cycles 20 8.8.8.8
All-in-one script: bench.sh
Widely used open source script in the hosting community:
# CAUTION: only run scripts from trusted sources
wget -qO- bench.sh | bash
This script automatically tests:
Before running scripts from the internet (curl ... | bash), always verify the content by visiting the URL directly.
- System info (CPU, RAM, OS)
- Disk speed
- Network speed to/from various worldwide locations
Monitor resources in real time
# htop (CPU, RAM, processes)
apt install htop -y && htop
# glances (complete overview)
apt install glances -y && glances
# iostat (disk I/O)
apt install sysstat -y
iostat -x 2 10 # every 2 seconds, 10 times
# vmstat (memory, swap, I/O)
vmstat 2 10
# iotop (processes with most I/O)
apt install iotop -y
iotop -o
Table of expected values for DeluxHost VPS
| Metric | Standard | SSD | NVMe |
|---|---|---|---|
| Disk read | 150-300 MB/s | 400-600 MB/s | 1-3.5 GB/s |
| Disk write | 100-200 MB/s | 300-500 MB/s | 800-2000 MB/s |
| Network | 1 Gbps | 1 Gbps | 1-10 Gbps |
| Ping EU | < 10 ms | < 10 ms | < 5 ms |
If your results are significantly lower, open a support ticket including the test output.
Gerelateerde artikelen
Server Reboot
How to properly restart your VPS or VDS, both via SSH and from the control panel
Resource Monitoring
How to check CPU, RAM, disk and network on your server in real time
Disk Management
How to check disk space, find large files and free up disk space
