Skip to main content

OVHcloud D2-4

London

Benchmark complete
Finished Oct 15, 2026
Geekbench 7 single-core
709
Faster than 14% of 2 vCPU plans
Geekbench 7 multi-core
1,283
Faster than 15% of 2 vCPU plans
Disk 4K IOPS
20,034
fio random read and write, 50/50
Monthly price at test time
$13.50
95 multi-core points per dollar
Same price today

Server

  • Provider
    OVHcloud
  • Plan
    D2-4
  • Location
    London
  • vCPU
    2
  • RAM
    4 GB
  • Storage
    50 GB NVMe
  • Network
    250 Mbps
  • OS image
    Ubuntu 24.04
  • Trigger
    Scheduled
  • Queued at
    Oct 15, 2026, 17:08:00 UTC

CPU

Version Single-core Multi-core Result link
Geekbench 7 709 1,283 Geekbench Browser

Scores from different Geekbench versions aren't comparable with each other. Charts only use Geekbench 7.

Geekbench 7 workloads

Workload Single-core Multi-core
File Compression
742
169th of 191
1,128
119th of 135
Navigation
864
170th of 191
Single-core only
HTML5 Browser
662
166th of 191
Single-core only
PDF Viewer
757
167th of 191
Single-core only
Photo Library
574
171st of 191
1,157
118th of 135
Clang
652
170th of 191
1,251
124th of 135
Text Processing
695
162nd of 191
1,281
113th of 135
Asset Compression
754
161st of 191
1,446
116th of 135
HDR
660
167th of 191
1,114
120th of 135
Photo Editor
647
164th of 191
1,425
110th of 135
Ray Tracer
807
159th of 191
1,532
116th of 135
Structure from Motion
865
155th of 191
Single-core only
Game Physics
672
166th of 191
Single-core only
Video Encoder
654
165th of 191
Single-core only
Audio Encoder
750
169th of 191
Single-core only
Video Player
660
163rd of 191
Single-core only

Rank among the 191 runs with Geekbench 7 workload scores. Bars are relative to the best run. Geekbench doesn't run every workload multi-core, so some rows only have a single-core score.

Memory, TLS and scheduler

Memory bandwidth (STREAM)

Test Result Runs Spread
Copy higher is better 34.8 GB/s 3 0.494%
Scale higher is better 20.1 GB/s 3 1.52%
Add higher is better 21.5 GB/s 3 1.74%
Triad higher is better 21.4 GB/s 3 1.76%

Average of 3 runs. Spread is the standard deviation as a share of the average.

TLS and crypto (OpenSSL)

Test Result Runs Spread
RSA 4096 signs higher is better 193/s 3 2.05%
RSA 4096 verifies higher is better 12,230/s 3 6.39%
SHA-256 higher is better 326 MB/s 3 7.03%
AES-256-GCM higher is better 3.24 GB/s 3 3.12%
ChaCha20-Poly1305 higher is better 2.41 GB/s 3 2.53%

Average of 3 runs. Spread is the standard deviation as a share of the average.

Scheduler latency (schbench)

Test Result Runs Spread
Request latency, median lower is better 5.72 ms 3 0.74%
Requests per second, 90th percentile higher is better 344/s 3 0.581%
Request latency, 99.9th percentile lower is better 12.7 ms 3 8.45%
Requests per second, average higher is better 331/s 3 1.08%

Average of 3 runs. Spread is the standard deviation as a share of the average.

Disk

Block size Read Write Total
4K 39.1 MB/s (10,005 IOPS) 39.2 MB/s (10,029 IOPS) 78.3 MB/s (20,034 IOPS)
64K 632.6 MB/s (10,121 IOPS) 635.9 MB/s (10,174 IOPS) 1.24 GB/s (20,295 IOPS)
512K 615.7 MB/s (1,231 IOPS) 648.5 MB/s (1,296 IOPS) 1.23 GB/s (2,527 IOPS)
1M 608.2 MB/s (608 IOPS) 648.7 MB/s (648 IOPS) 1.23 GB/s (1,256 IOPS)

fio random read and write, 50/50, run by YABS against the boot disk.

Network

IPv4 transfer speed

Loading...
Target Protocol Send Receive
Clouvider, London, UK (10G) IPv4 244 Mbps 245 Mbps
Eranium, Amsterdam, NL (100G) IPv4 244 Mbps 244 Mbps
Leaseweb, Singapore, SG (10G) IPv4 222 Mbps 201 Mbps
Clouvider, Los Angeles, CA, US (10G) IPv4 168 Mbps 230 Mbps
Leaseweb, NYC, NY, US (10G) IPv4 237 Mbps 239 Mbps

Public iperf3 servers vary in capacity and availability. Compare a target only with itself over time.

Datastores

PostgreSQL

fsync speed (pg_test_fsync)

Method Operations per second Time per operation
One 8 kB write
open_datasync 5,162 0.194 ms
fdatasync 5,155 0.194 ms
fsync 2,892 0.346 ms
fsync_writethrough Not supported here n/a
open_sync 3,647 0.274 ms
Two 8 kB writes
open_datasync 2,652 0.377 ms
fdatasync 4,980 0.201 ms
fsync 2,371 0.422 ms
fsync_writethrough Not supported here n/a
open_sync 1,612 0.62 ms
open_sync at different write sizes
1 * 16kB open_sync write 2,325 0.43 ms
2 * 8kB open_sync writes 1,585 0.631 ms
4 * 4kB open_sync writes 851 1.18 ms
8 * 2kB open_sync writes 550 1.82 ms
16 * 1kB open_sync writes 280 3.58 ms
fsync on a non-write descriptor
write, fsync, close 2,859 0.35 ms
write, close, fsync 2,885 0.347 ms
Non-synced 8 kB writes
write 626,680 0.002 ms

pg_test_fsync against the Docker volume Postgres keeps its data on. fdatasync is Linux's default wal_sync_method.

pgbench at scale 10

Workload Clients Transactions/s Median p95 p99 p99.9 Failed
Read/write (TPC-B like) 1 1,253 0.761 ms 1.04 ms 1.33 ms 2.88 ms 0
Read/write (TPC-B like) 8 2,719 2.75 ms 4.69 ms 6.4 ms 12.5 ms 0
Read/write (TPC-B like) 32 2,706 9.7 ms 26.1 ms 42.9 ms 71.2 ms 0
Read only 1 14,202 0.064 ms 0.106 ms 0.13 ms 0.261 ms 0
Read only 8 25,349 0.287 ms 0.492 ms 0.618 ms 1.37 ms 0
Read only 32 27,958 0.994 ms 1.79 ms 2.45 ms 4 ms 0

Scale 10 (1,000,000 accounts), loaded in 1.95 s. 60 s per run, prepared statements. Latency comes from sampled transaction logs, and p99.9 is left out when fewer than 1,000 were sampled.

pgbench at scale 100

Workload Clients Transactions/s Median p95 p99 p99.9 Failed
Read/write (TPC-B like) 1 1,014 0.891 ms 1.33 ms 2.77 ms 11.2 ms 0
Read/write (TPC-B like) 8 2,235 3.14 ms 7.16 ms 11.2 ms 24.8 ms 0
Read/write (TPC-B like) 32 2,467 11.9 ms 21.5 ms 31 ms 51.1 ms 0
Read only 1 8,189 0.102 ms 0.208 ms 0.473 ms 1.07 ms 0
Read only 8 19,553 0.377 ms 0.643 ms 0.888 ms 2.19 ms 0
Read only 32 21,057 1.37 ms 2.45 ms 3.24 ms 5.47 ms 0

Scale 100 (10,000,000 accounts), loaded in 21 s. 60 s per run, prepared statements. Latency comes from sampled transaction logs, and p99.9 is left out when fewer than 1,000 were sampled.

MySQL

sysbench OLTP

Workload Threads Transactions/s Queries/s Median p95 p99 Errors
Read/write 1 218 4,351 4.33 ms 6.32 ms 9.22 ms 0
Read/write 8 472 9,437 16.7 ms 26.2 ms 32.5 ms 0
Read/write 32 492 9,849 63.3 ms 111 ms 140 ms 0
Read only 1 488 7,811 1.93 ms 2.76 ms 3.3 ms 0
Read only 8 881 14,100 8.9 ms 12.3 ms 15 ms 0
Read only 32 798 12,768 39.7 ms 52.9 ms 63.3 ms 0

10 tables of 100,000 rows, loaded in 11.9 s. 60 s per run, one connection per thread.

Redis

memtier

Mix Operations/s Hits/s Median p99 p99.9
1:10 set:get 47,312 43,010 1.22 ms 3.31 ms 5.54 ms
1:1 set:get 43,048 21,524 1.34 ms 3.81 ms 7.26 ms

1,000,000 keys of 32 bytes. 64 connections over 2 threads, 60 s per ratio.

Web frameworks

Framework Fortunes req/s Single query req/s JSON req/s Fortunes p99 at 256 connections
Next.js nextjs 326 1,122 1,448 1.13 s
Express express-postgresjs 4,858 6,378 14,154 290 ms
Fastify fastify-postgres 5,007 6,977 15,427 248 ms
NestJS nestjs 2,383 2,693 8,659 185 ms
Nuxt nuxt 4,091 5,629 10,729 163 ms
FastAPI fastapi 1,960 2,358 8,813 756 ms
Django django-postgresql 835 932 1,934 623 ms
Rails rails 1,216 1,651 5,950 261 ms
Laravel laravel 440 460 879 686 ms
Symfony symfony 573 627 1,542 557 ms

Peak requests per second across the 64 and 256 connection levels, measured with wrk. Each test has to pass the TechEmpower response checks first, or it's marked invalid.

Web apps

WooCommerce

Page mix

Step Requests/s Median p95 p99 Error rate
8 virtual users
Home page 1.25 1.27 s 1.45 s 1.54 s 0%
Shop page 1.25 1.7 s 2.07 s 2.14 s 0%
Category page 1.25 1.05 s 1.64 s 2.02 s 0%
Product page 1.25 1.15 s 1.41 s 1.54 s 0%
Product search 1.25 1.01 s 1.2 s 1.31 s 0%
32 virtual users
Home page 1.35 4.41 s 5.13 s 5.61 s 0%
Shop page 1.35 6.32 s 7.04 s 7.31 s 0%
Category page 1.35 5.17 s 6.45 s 6.91 s 0%
Product page 1.32 4.41 s 4.76 s 4.89 s 0%
Product search 0.915 4.03 s 4.22 s 4.25 s 0%

Cart and checkout

Step Requests/s Median p95 p99 Error rate
8 virtual users
Add to cart 2.4 1.35 s 1.54 s 1.59 s 0%
Cart 2.4 1.06 s 1.24 s 1.36 s 0%
Checkout 2.4 814 ms 969 ms 1.06 s 0%
32 virtual users
Add to cart 2.54 4.09 s 5.19 s 5.33 s 0%
Cart 2.54 4.48 s 4.96 s 5.15 s 0%
Checkout 2.54 3.54 s 3.98 s 4.15 s 0%

k6 with a fixed number of virtual users, 64 to 71 s per level. The error rate counts responses that weren't a 200.

Discourse

Signed in

Step Requests/s Median p95 p99 Error rate
1 virtual user
Topic page 1.22 356 ms 437 ms 679 ms 0%
Topic JSON 0.624 186 ms 212 ms 217 ms 0%
Home page 0.624 324 ms 490 ms 716 ms 0%
Categories page 0.312 365 ms 441 ms 585 ms 0%
User activity page 0.296 219 ms 260 ms 268 ms 0%
4 virtual users
Topic page 2.01 858 ms 1.21 s 1.55 s 0%
Topic JSON 1.03 453 ms 688 ms 832 ms 0%
Home page 1.01 736 ms 1.1 s 1.45 s 0%
Categories page 0.523 900 ms 1.43 s 1.62 s 0%
User activity page 0.507 500 ms 769 ms 1.01 s 0%
16 virtual users
Topic page 2.1 2 s 2.59 s 3.04 s 0%
Topic JSON 1.06 1.67 s 2.12 s 2.18 s 0%
Home page 1.08 1.84 s 2.37 s 2.72 s 0%
Categories page 0.498 1.96 s 2.33 s 2.48 s 0%
User activity page 0.53 1.78 s 2.14 s 2.39 s 0%

Anonymous

Step Requests/s Median p95 p99 Error rate
16 virtual users
Topic page 44.9 102 ms 233 ms 304 ms 0%
Topic JSON 22.5 97.6 ms 222 ms 264 ms 0.0736%
Home page 22.5 98.8 ms 225 ms 265 ms 0.147%
Categories page 11.2 105 ms 236 ms 379 ms 0.147%
User activity page 11.3 306 ms 475 ms 668 ms 0%

k6 with a fixed number of virtual users, 60 to 62 s per level, after a 22 s warmup. The error rate counts responses that weren't a 200. Discourse ran with 4 app workers and 1024 MB of Postgres shared buffers, what its installer picks for a 4 GB box. It added a 2 GB swapfile first, the way its installer does, and didn't need it. The container peaked at 2,054 MB.

Ghost

Readers

Step Requests/s Median p95 p99 Error rate
1 virtual user
Home page 4.3 65.1 ms 86.4 ms 119 ms 0%
Post page 10.7 34.4 ms 46.6 ms 59.5 ms 0%
Tag page 2.15 44 ms 58 ms 73.4 ms 0%
Author page 2.15 43.9 ms 57.6 ms 61.9 ms 0%
RSS feed 2.15 54.7 ms 73.1 ms 88.5 ms 0%
4 virtual users
Home page 5.28 204 ms 263 ms 277 ms 0%
Post page 13.2 137 ms 195 ms 254 ms 0%
Tag page 2.64 132 ms 177 ms 209 ms 0%
Author page 2.64 125 ms 175 ms 277 ms 0%
RSS feed 2.64 144 ms 200 ms 233 ms 0%
16 virtual users
Home page 5.13 790 ms 965 ms 1.09 s 0%
Post page 12.8 650 ms 803 ms 881 ms 0%
Tag page 2.55 429 ms 556 ms 645 ms 0%
Author page 2.6 430 ms 558 ms 612 ms 0%
RSS feed 2.58 429 ms 545 ms 586 ms 0%

Staff in Ghost Admin

Step Requests/s Median p95 p99 Error rate
1 virtual user
Post list 2.42 62.6 ms 83.2 ms 94.7 ms 0%
Post editor 7.26 23.3 ms 32.1 ms 47 ms 0%
Saving a draft 7.25 56.7 ms 78.1 ms 105 ms 0%
Member list 2.42 80.5 ms 114 ms 134 ms 0%
4 virtual users
Post list 2.98 78.3 ms 99.1 ms 109 ms 0%
Post editor 9.02 43.8 ms 61.8 ms 91.7 ms 0%
Saving a draft 9.03 321 ms 415 ms 470 ms 0%
Member list 3 103 ms 127 ms 161 ms 0%

k6 with a fixed number of virtual users, 60 s per level, after a 20 s warmup. The error rate counts responses that weren't a 200. Ghost ran the way its ghost-docker setup runs it: one Node process, and MySQL with its stock 128 MB buffer pool. Memory peaked with Ghost at 370 MB and MySQL at 616 MB.

Wagtail

Visitors

Step Requests/s Median p95 p99 Error rate
1 virtual user
Home page 0.98 138 ms 166 ms 198 ms 0%
Blog index 0.964 462 ms 561 ms 603 ms 0%
Blog post 2.89 42.9 ms 68.3 ms 73.9 ms 0%
Bread page 2.91 47.5 ms 60.1 ms 67.8 ms 0%
Location page 0.964 44.8 ms 54.1 ms 61.3 ms 0%
Site search 0.964 71.7 ms 124 ms 139 ms 0%
4 virtual users
Home page 1.61 354 ms 485 ms 523 ms 0%
Blog index 1.63 1.22 s 1.55 s 1.66 s 0%
Blog post 4.85 99.1 ms 166 ms 231 ms 0%
Bread page 4.88 111 ms 163 ms 204 ms 0%
Location page 1.64 108 ms 156 ms 161 ms 0%
Site search 1.63 161 ms 288 ms 346 ms 0%
16 virtual users
Home page 1.54 1.17 s 1.52 s 1.65 s 0%
Blog index 1.56 3.13 s 3.69 s 3.83 s 0%
Blog post 4.58 665 ms 1.02 s 1.16 s 0%
Bread page 4.63 692 ms 1.09 s 1.39 s 0%
Location page 1.54 686 ms 1.08 s 1.38 s 0%
Site search 1.53 839 ms 1.25 s 1.49 s 0%

Editors in the Wagtail admin

Step Requests/s Median p95 p99 Error rate
1 virtual user
Admin dashboard 0.357 147 ms 190 ms 197 ms 0%
Page explorer 0.731 635 ms 726 ms 926 ms 0%
Page editor 1.07 298 ms 390 ms 477 ms 0%
Image library 0.357 112 ms 139 ms 1.22 s 0%
Admin page search 0.357 63.7 ms 158 ms 159 ms 0%
4 virtual users
Admin dashboard 0.605 544 ms 811 ms 885 ms 0%
Page explorer 1.21 1.45 s 2.63 s 2.93 s 0%
Page editor 1.78 786 ms 1.22 s 1.31 s 0%
Image library 0.605 359 ms 664 ms 787 ms 0%
Admin page search 0.605 163 ms 544 ms 570 ms 0%

k6 with a fixed number of virtual users, 60 to 63 s per level, after a 21 s warmup. The error rate counts responses that weren't a 200. Wagtail ran the way bakerydemo ships it: uWSGI with 2 workers of 4 threads each, whatever the box, and Postgres and Redis on stock settings. Memory peaked with Wagtail at 294 MB, Postgres at 155 MB, and Redis at 26 MB.

Advertised vs. measured

Spec Advertised Measured
vCPU 2 2
CPU Shared vCPU 0.2% of busy CPU time stolen
RAM 4 GB 3.7 GiB
Storage 50 GB NVMe 48.4 GiB
Architecture x86_64 x86_64
Virtualization KVM KVM

Guests usually report slightly less RAM and disk than advertised because of kernel reservations and filesystem overhead.

Detected hardware

CPU model
Intel Core Processor (Haswell, no TSX)
CPU cores
2
CPU frequency
2394 MHz
AES-NI
Yes
VM-x/AMD-V
Yes
RAM reported
3.7 GiB
Swap reported
0 MiB
Disk reported
48.4 GiB
Virtualization reported
KVM
CPU steal
0.2% of busy CPU time stolen
Distro
Ubuntu 24.04.4 LTS
Kernel
6.8.0-136-generic
Architecture
x86_64
IPv4 reachable
Yes
IPv6 reachable
Yes

Advertised at test time

Plan
D2-4
Product line
Discovery D2
Location
London
vCPU
2 shared vCPU
Architecture
x86_64
RAM
4 GB
Storage
50 GB NVMe
Virtualization
KVM
Network
250 Mbps
Transfer
Unmetered
Port 25
Unknown
Monthly price at test time
$13.50
Hourly price at test time
$0.024
YABS version
v2026-09-20
Ran at
Oct 15, 2026, 17:10:54 UTC
Parser version
5

Run timeline

Queued
Oct 15, 2026, 17:08:00 UTC
First update from the server
Oct 15, 2026, 17:09:36 UTC
Completed
Oct 15, 2026, 18:59:00 UTC
Server deleted
Oct 15, 2026, 18:59:00 UTC
Cost of this run
$0.045
Watch party 0 watching

This party closed at . It's read only now.

Watch party

Loading the party