Skip to main content

OVHcloud D2-4

Beauharnois

Benchmark complete
Finished Oct 12, 2026
Geekbench 7 single-core
528
Faster than 3% of 2 vCPU plans
Median here: 659 over 2 runs in 90 days
Geekbench 7 multi-core
967
Faster than 4% of 2 vCPU plans
Median here: 1,226 over 2 runs in 90 days
Disk 4K IOPS
20,041
fio random read and write, 50/50
Median here: 20,036 over 2 runs in 90 days
Monthly price at test time
$13.50
72 multi-core points per dollar
Same price today

Server

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

CPU

Version Single-core Multi-core Result link
Geekbench 7 528 967 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
575
129th of 129
904
102nd of 103
Navigation
656
127th of 129
Single-core only
HTML5 Browser
447
129th of 129
Single-core only
PDF Viewer
511
129th of 129
Single-core only
Photo Library
461
124th of 129
893
96th of 103
Clang
485
129th of 129
1,059
98th of 103
Text Processing
398
127th of 129
828
103rd of 103
Asset Compression
489
129th of 129
965
103rd of 103
HDR
573
124th of 129
1,017
97th of 103
Photo Editor
568
120th of 129
1,128
91st of 103
Ray Tracer
561
126th of 129
979
102nd of 103
Structure from Motion
669
123rd of 129
Single-core only
Game Physics
465
128th of 129
Single-core only
Video Encoder
556
123rd of 129
Single-core only
Audio Encoder
607
125th of 129
Single-core only
Video Player
504
125th of 129
Single-core only

Rank among the 129 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 19.9 GB/s 3 8.95%
Scale higher is better 16.9 GB/s 3 7.18%
Add higher is better 18.1 GB/s 3 5.29%
Triad higher is better 18.1 GB/s 3 6.22%

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 161/s 3 0.107%
RSA 4096 verifies higher is better 10,441/s 3 5.38%
SHA-256 higher is better 255 MB/s 3 3.51%
AES-256-GCM higher is better 3.99 GB/s 3 0.692%
ChaCha20-Poly1305 higher is better 1.83 GB/s 3 13.7%

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 7.71 ms 3 12.5%
Requests per second, 90th percentile higher is better 276/s 3 6.37%
Request latency, 99.9th percentile lower is better 24.4 ms 3 42.3%
Requests per second, average higher is better 248/s 3 8.57%

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,008 IOPS) 39.2 MB/s (10,033 IOPS) 78.3 MB/s (20,041 IOPS)
64K 640.9 MB/s (10,254 IOPS) 644.3 MB/s (10,308 IOPS) 1.26 GB/s (20,562 IOPS)
512K 800.9 MB/s (1,601 IOPS) 843.4 MB/s (1,686 IOPS) 1.61 GB/s (3,287 IOPS)
1M 782.2 MB/s (782 IOPS) 834.3 MB/s (834 IOPS) 1.58 GB/s (1,616 IOPS)

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

Network

iperf3 didn't report network results for this run.

Datastores

PostgreSQL

fsync speed (pg_test_fsync)

Method Operations per second Time per operation
One 8 kB write
open_datasync 4,890 0.205 ms
fdatasync 2,506 0.399 ms
fsync 2,320 0.431 ms
fsync_writethrough Not supported here n/a
open_sync 3,061 0.327 ms
Two 8 kB writes
open_datasync 2,744 0.364 ms
fdatasync 4,782 0.209 ms
fsync 2,094 0.477 ms
fsync_writethrough Not supported here n/a
open_sync 1,442 0.694 ms
open_sync at different write sizes
1 * 16kB open_sync write 3,018 0.331 ms
2 * 8kB open_sync writes 1,041 0.96 ms
4 * 4kB open_sync writes 732 1.37 ms
8 * 2kB open_sync writes 448 2.23 ms
16 * 1kB open_sync writes 202 4.95 ms
fsync on a non-write descriptor
write, fsync, close 2,767 0.361 ms
write, close, fsync 2,146 0.466 ms
Non-synced 8 kB writes
write 446,580 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 991 0.893 ms 1.66 ms 3.71 ms 10.7 ms 0
Read/write (TPC-B like) 8 2,131 3.37 ms 6.47 ms 10.4 ms 23.2 ms 0
Read/write (TPC-B like) 32 1,742 13.7 ms 39.8 ms 66.5 ms 120 ms 0
Read only 1 13,740 0.067 ms 0.109 ms 0.149 ms 0.585 ms 0
Read only 8 23,397 0.313 ms 0.542 ms 0.69 ms 2.23 ms 0
Read only 32 20,443 1.37 ms 2.61 ms 3.69 ms 6.83 ms 0

Scale 10 (1,000,000 accounts), loaded in 3.01 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 831 1.03 ms 2.06 ms 4.44 ms 10.7 ms 0
Read/write (TPC-B like) 8 1,651 4.02 ms 9.3 ms 15.2 ms 117 ms 0
Read/write (TPC-B like) 32 1,671 17.9 ms 31.5 ms 42.3 ms 64.7 ms 0
Read only 1 7,687 0.102 ms 0.275 ms 0.617 ms 1.81 ms 0
Read only 8 16,988 0.431 ms 0.76 ms 1.2 ms 3.05 ms 0
Read only 32 14,529 1.97 ms 3.62 ms 5.23 ms 12 ms 0

Scale 100 (10,000,000 accounts), loaded in 29.9 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 141 2,810 6.1 ms 11 ms 19 ms 0
Read/write 8 270 5,402 24.8 ms 45 ms 62.2 ms 0
Read/write 32 303 6,065 95.8 ms 174 ms 236 ms 0
Read only 1 302 4,827 2.76 ms 6.1 ms 11.4 ms 0
Read only 8 721 11,541 11 ms 15.3 ms 19 ms 0
Read only 32 604 9,658 51.9 ms 69.3 ms 81.5 ms 0

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

Redis

memtier

Mix Operations/s Hits/s Median p99 p99.9
1:10 set:get 28,350 25,773 2.1 ms 7.97 ms 17.5 ms
1:1 set:get 27,540 13,770 2.18 ms 8.45 ms 18.3 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 246 742 1,110 2.16 s
Express express-postgresjs 4,300 5,025 13,763 365 ms
Fastify fastify-postgres 3,768 5,819 14,295 939 ms
NestJS nestjs 1,842 2,032 7,933 265 ms
Nuxt nuxt 3,211 4,685 12,018 834 ms
FastAPI fastapi 1,461 1,859 7,092 640 ms
Django django-postgresql 455 580 1,367 683 ms
Rails rails 711 1,066 4,098 544 ms
Laravel laravel 290 294 536 958 ms
Symfony symfony 366 407 1,083 799 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.

WooCommerce

Page mix

Step Requests/s Median p95 p99 Error rate
8 virtual users
Home page 0.828 1.87 s 2.14 s 2.25 s 0%
Shop page 0.828 2.56 s 2.8 s 2.87 s 0%
Category page 0.828 1.6 s 2.74 s 2.94 s 0%
Product page 0.828 1.69 s 2 s 2.08 s 0%
Product search 0.828 1.51 s 1.77 s 1.86 s 0%
32 virtual users
Home page 0.893 6.77 s 7.88 s 8.07 s 0%
Shop page 0.893 9.05 s 10.3 s 10.4 s 0%
Category page 0.893 7.48 s 9.07 s 9.49 s 0%
Product page 0.893 6.59 s 7.13 s 7.22 s 0%
Product search 0.572 6.48 s 6.88 s 6.99 s 0%

Cart and checkout

Step Requests/s Median p95 p99 Error rate
8 virtual users
Add to cart 1.59 1.97 s 2.16 s 2.21 s 0%
Cart 1.59 1.59 s 1.76 s 1.87 s 0%
Checkout 1.59 1.21 s 1.39 s 1.45 s 0%
32 virtual users
Add to cart 1.79 6.44 s 8.2 s 8.37 s 0%
Cart 1.52 7.23 s 7.94 s 8.07 s 0%
Checkout 1.34 5.49 s 6.65 s 6.76 s 0%

k6 with a fixed number of virtual users, 65 to 72 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 0.797 559 ms 876 ms 1.15 s 0%
Topic JSON 0.407 272 ms 356 ms 376 ms 0%
Home page 0.407 502 ms 565 ms 579 ms 0%
Categories page 0.195 548 ms 659 ms 666 ms 0%
User activity page 0.195 332 ms 428 ms 489 ms 0%
4 virtual users
Topic page 1.17 1.41 s 1.77 s 2.23 s 0%
Topic JSON 0.611 747 ms 880 ms 949 ms 0%
Home page 0.595 1.3 s 2.1 s 2.59 s 0%
Categories page 0.322 1.47 s 1.68 s 1.76 s 0%
User activity page 0.289 859 ms 1.54 s 1.94 s 0%
16 virtual users
Topic page 1.17 2.41 s 3.03 s 4.1 s 0%
Topic JSON 0.633 1.78 s 2.38 s 2.53 s 0%
Home page 0.633 2.34 s 2.97 s 3.63 s 0%
Categories page 0.317 2.44 s 2.82 s 3.03 s 0%
User activity page 0.317 1.96 s 2.32 s 2.66 s 0%

Anonymous

Step Requests/s Median p95 p99 Error rate
16 virtual users
Topic page 25.9 153 ms 395 ms 733 ms 0.635%
Topic JSON 13 145 ms 392 ms 853 ms 0.633%
Home page 13 156 ms 440 ms 820 ms 0.38%
Categories page 6.48 148 ms 395 ms 1.01 s 0.254%
User activity page 6.55 522 ms 1.07 s 1.42 s 0.754%

k6 with a fixed number of virtual users, 61 to 63 s per level, after a 24 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,309 MB.

Ghost

Readers

Step Requests/s Median p95 p99 Error rate
1 virtual user
Home page 3.19 88.2 ms 114 ms 135 ms 0%
Post page 7.95 47.1 ms 67 ms 89.6 ms 0%
Tag page 1.6 61.1 ms 80.9 ms 153 ms 0%
Author page 1.58 60.5 ms 77.2 ms 103 ms 0%
RSS feed 1.58 72.4 ms 88.8 ms 94.1 ms 0%
4 virtual users
Home page 4.22 247 ms 321 ms 430 ms 0%
Post page 10.6 175 ms 244 ms 316 ms 0%
Tag page 2.11 165 ms 219 ms 243 ms 0%
Author page 2.13 160 ms 217 ms 247 ms 0%
RSS feed 2.11 168 ms 236 ms 255 ms 0%
16 virtual users
Home page 4.01 992 ms 1.26 s 1.34 s 0%
Post page 10 833 ms 1.07 s 1.19 s 0%
Tag page 2 547 ms 779 ms 875 ms 0%
Author page 2 531 ms 683 ms 791 ms 0%
RSS feed 1.97 558 ms 760 ms 823 ms 0%

Staff in Ghost Admin

Step Requests/s Median p95 p99 Error rate
1 virtual user
Post list 1.69 84.6 ms 115 ms 146 ms 0%
Post editor 5.08 34.4 ms 53.2 ms 63.7 ms 0%
Saving a draft 5.06 85.1 ms 123 ms 149 ms 0%
Member list 1.69 103 ms 139 ms 156 ms 0%
4 virtual users
Post list 2.18 117 ms 147 ms 164 ms 0%
Post editor 6.66 59.7 ms 77.5 ms 94.2 ms 0%
Saving a draft 6.68 440 ms 592 ms 683 ms 0%
Member list 2.23 136 ms 170 ms 205 ms 0%

k6 with a fixed number of virtual users, 60 to 61 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 284 MB and MySQL at 616 MB.

Wagtail

Visitors

Step Requests/s Median p95 p99 Error rate
1 virtual user
Home page 0.562 235 ms 292 ms 311 ms 0%
Blog index 0.546 843 ms 1.13 s 1.17 s 0%
Blog post 1.64 73.4 ms 116 ms 126 ms 0%
Bread page 1.64 80.1 ms 99 ms 115 ms 0%
Location page 0.546 76.2 ms 88.4 ms 89.1 ms 0%
Site search 0.546 124 ms 201 ms 207 ms 0%
4 virtual users
Home page 1.06 468 ms 748 ms 876 ms 0%
Blog index 1.08 1.78 s 2.53 s 2.58 s 0%
Blog post 3.21 148 ms 272 ms 356 ms 0%
Bread page 3.2 162 ms 265 ms 292 ms 0%
Location page 1.08 149 ms 229 ms 243 ms 0%
Site search 1.06 259 ms 441 ms 525 ms 0%
16 virtual users
Home page 1.06 1.77 s 2.31 s 2.58 s 0%
Blog index 1.05 4.66 s 5.57 s 5.8 s 0%
Blog post 3.1 992 ms 1.54 s 1.71 s 0%
Bread page 3.12 1.06 s 1.61 s 1.78 s 0%
Location page 1.06 989 ms 1.52 s 1.7 s 0%
Site search 1.03 1.11 s 1.98 s 2.25 s 0%

Editors in the Wagtail admin

Step Requests/s Median p95 p99 Error rate
1 virtual user
Admin dashboard 0.257 219 ms 316 ms 477 ms 0%
Page explorer 0.545 827 ms 1.04 s 1.32 s 0%
Page editor 0.786 387 ms 601 ms 695 ms 0%
Image library 0.257 162 ms 605 ms 1.53 s 0%
Admin page search 0.257 86.2 ms 290 ms 442 ms 0%
4 virtual users
Admin dashboard 0.4 565 ms 1.06 s 1.15 s 0%
Page explorer 0.863 2.11 s 3.32 s 3.61 s 0%
Page editor 1.29 1 s 1.56 s 1.69 s 0%
Image library 0.432 412 ms 931 ms 1.01 s 0%
Admin page search 0.4 293 ms 593 ms 744 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 292 MB, Postgres at 171 MB, and Redis at 26 MB.

Advertised vs. measured

Spec Advertised Measured
vCPU 2 2
CPU Shared vCPU 0.5% 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
2095 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.5% 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
Beauharnois
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 12, 2026, 19:36:52 UTC
Parser version
5

Run timeline

Queued
Oct 12, 2026, 19:35:00 UTC
Server created
Oct 12, 2026, 19:36:18 UTC
First update from the server
Oct 12, 2026, 19:36:18 UTC
Completed
Oct 12, 2026, 21:34:00 UTC
Server deleted
Oct 12, 2026, 21:34:00 UTC
Cost of this run
$0.048
Watch party 0 watching

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

Watch party

Loading the party