LunaNode m.4 2 vCPU / 4 GB
Server
-
ProviderLunaNode
-
Planm.4 2 vCPU / 4 GB
-
LocationToronto
-
vCPU2
-
RAM4 GB
-
Storage35 GB SSD
-
NetworkUnknown
-
OS imageUbuntu 24.04 64-bit (template)
-
TriggerScheduled
-
Queued atOct 12, 2026, 16:22:00 UTC
CPU
| Version | Single-core | Multi-core | Result link |
|---|---|---|---|
| Geekbench 7 | 893 | 1,721 | 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 |
1,016
|
1,467
|
| Navigation |
1,119
|
Single-core only |
| HTML5 Browser |
911
|
Single-core only |
| PDF Viewer |
1,009
|
Single-core only |
| Photo Library |
694
|
1,395
|
| Clang |
931
|
1,843
|
| Text Processing |
977
|
1,833
|
| Asset Compression |
1,049
|
2,125
|
| HDR |
768
|
1,442
|
| Photo Editor |
843
|
1,741
|
| Ray Tracer |
931
|
2,091
|
| Structure from Motion |
840
|
Single-core only |
| Game Physics |
909
|
Single-core only |
| Video Encoder |
758
|
Single-core only |
| Audio Encoder |
922
|
Single-core only |
| Video Player |
730
|
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 | 34.5 GB/s | 3 | 0.223% |
| Scale higher is better | 18.3 GB/s | 3 | 1% |
| Add higher is better | 19.4 GB/s | 3 | 1.24% |
| Triad higher is better | 19.5 GB/s | 3 | 1.09% |
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 | 445/s | 3 | 1.13% |
| RSA 4096 verifies higher is better | 29,789/s | 3 | 0.103% |
| SHA-256 higher is better | 498 MB/s | 3 | 0.612% |
| AES-256-GCM higher is better | 5.61 GB/s | 3 | 0.282% |
| ChaCha20-Poly1305 higher is better | 2.97 GB/s | 3 | 0.314% |
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 | 4.04 ms | 3 | 0.114% |
| Requests per second, 90th percentile higher is better | 484/s | 3 | 0.547% |
| Request latency, 99.9th percentile lower is better | 10.1 ms | 3 | 0.663% |
| Requests per second, average higher is better | 472/s | 3 | 0.565% |
Average of 3 runs. Spread is the standard deviation as a share of the average.
Disk
| Block size | Read | Write | Total |
|---|---|---|---|
| 4K | 179.2 MB/s (45,877 IOPS) | 179.7 MB/s (45,998 IOPS) | 358.9 MB/s (91,875 IOPS) |
| 64K | 1.65 GB/s (27,054 IOPS) | 1.66 GB/s (27,197 IOPS) | 3.31 GB/s (54,251 IOPS) |
| 512K | 1.67 GB/s (3,410 IOPS) | 1.75 GB/s (3,591 IOPS) | 3.42 GB/s (7,001 IOPS) |
| 1M | 1.64 GB/s (1,681 IOPS) | 1.75 GB/s (1,793 IOPS) | 3.39 GB/s (3,474 IOPS) |
fio random read and write, 50/50, run by YABS against the boot disk.
Network
IPv4 transfer speed
| Target | Protocol | Send | Receive |
|---|---|---|---|
| Clouvider, London, UK (10G) | IPv4 | 799 Mbps | 353 Mbps |
| Eranium, Amsterdam, NL (100G) | IPv4 | 821 Mbps | 557 Mbps |
| Leaseweb, Singapore, SG (10G) | IPv4 | 591 Mbps | 388 Mbps |
| Clouvider, Los Angeles, CA, US (10G) | IPv4 | 955 Mbps | 624 Mbps |
| Leaseweb, NYC, NY, US (10G) | IPv4 | 1.57 Gbps | 581 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 | 4,413 | 0.227 ms |
| fdatasync | 3,901 | 0.256 ms |
| fsync | 2,411 | 0.415 ms |
| fsync_writethrough | Not supported here | n/a |
| open_sync | 2,587 | 0.387 ms |
| Two 8 kB writes | ||
| open_datasync | 1,988 | 0.503 ms |
| fdatasync | 3,471 | 0.288 ms |
| fsync | 2,229 | 0.449 ms |
| fsync_writethrough | Not supported here | n/a |
| open_sync | 1,476 | 0.677 ms |
| open_sync at different write sizes | ||
| 1 * 16kB open_sync write | 2,534 | 0.395 ms |
| 2 * 8kB open_sync writes | 1,390 | 0.72 ms |
| 4 * 4kB open_sync writes | 685 | 1.46 ms |
| 8 * 2kB open_sync writes | 375 | 2.66 ms |
| 16 * 1kB open_sync writes | 201 | 4.99 ms |
| fsync on a non-write descriptor | ||
| write, fsync, close | 2,256 | 0.443 ms |
| write, close, fsync | 1,925 | 0.52 ms |
| Non-synced 8 kB writes | ||
| write | 296,315 | 0.003 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 | 997 | 0.911 ms | 1.46 ms | 1.95 ms | 6.91 ms | 0 |
| Read/write (TPC-B like) | 8 | 2,577 | 2.78 ms | 5.19 ms | 7.52 ms | 12.8 ms | 0 |
| Read/write (TPC-B like) | 32 | 2,607 | 9.85 ms | 27.2 ms | 45.3 ms | 82.8 ms | 0 |
| Read only | 1 | 14,439 | 0.063 ms | 0.094 ms | 0.125 ms | 0.217 ms | 0 |
| Read only | 8 | 27,133 | 0.268 ms | 0.425 ms | 0.512 ms | 1.06 ms | 0 |
| Read only | 32 | 29,258 | 0.939 ms | 1.39 ms | 1.98 ms | 3.79 ms | 0 |
Scale 10 (1,000,000 accounts), loaded in 2.63 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 | 821 | 1.05 ms | 1.8 ms | 3.29 ms | 13 ms | 0 |
| Read/write (TPC-B like) | 8 | 1,887 | 3.44 ms | 6.7 ms | 12.4 ms | 116 ms | 0 |
| Read/write (TPC-B like) | 32 | 2,397 | 11.3 ms | 22 ms | 43.1 ms | 158 ms | 0 |
| Read only | 1 | 2,103 | 0.132 ms | 0.322 ms | 0.984 ms | 80.6 ms | 0 |
| Read only | 8 | 1,654 | 0.347 ms | 4.42 ms | 94.7 ms | 198 ms | 0 |
| Read only | 32 | 1,798 | 1.8 ms | 91.1 ms | 188 ms | 290 ms | 0 |
Scale 100 (10,000,000 accounts), loaded in 30 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 | 28.7 | 575 | 7.43 ms | 95.8 ms | 111 ms | 0 |
| Read/write | 8 | 155 | 3,091 | 18.6 ms | 208 ms | 397 ms | 0 |
| Read/write | 32 | 493 | 9,868 | 63.3 ms | 111 ms | 148 ms | 0 |
| Read only | 1 | 551 | 8,817 | 1.7 ms | 2.43 ms | 3.36 ms | 0 |
| Read only | 8 | 984 | 15,744 | 7.84 ms | 10.5 ms | 12.5 ms | 0 |
| Read only | 32 | 909 | 14,539 | 35 ms | 42.6 ms | 47.5 ms | 0 |
10 tables of 100,000 rows, loaded in 99.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 | 4,651 | 4,227 | 2.9 ms | 92.2 ms | 184 ms |
| 1:1 set:get | 4,131 | 2,065 | 2.96 ms | 92.2 ms | 186 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 | 43.6 | 170 | 195 | 7.11 s |
| Express express-postgresjs | 1,046 | 1,191 | 1,938 | 2.61 s |
| Fastify fastify-postgres | 5,755 | 8,123 | 7,183 | 125 ms |
| NestJS nestjs | 2,955 | 3,325 | 10,881 | 889 ms |
| Nuxt nuxt | 735 | 968 | 1,551 | 3.56 s |
| FastAPI fastapi | 2,400 | 2,934 | 1,312 | 518 ms |
| Django django-postgresql | 919 | 1,036 | 2,034 | 369 ms |
| Rails rails | 213 | 292 | 961 | 1.8 s |
| Laravel laravel | 69.8 | 72.7 | 143 | 3.9 s |
| Symfony symfony | 679 | 748 | 248 | 421 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 | 1.71 | 910 ms | 1.03 s | 1.05 s | 0% |
| Shop page | 1.71 | 1.22 s | 1.38 s | 1.42 s | 0% |
| Category page | 1.71 | 797 ms | 1.22 s | 1.3 s | 0% |
| Product page | 1.71 | 864 ms | 1 s | 1.04 s | 0% |
| Product search | 1.71 | 735 ms | 862 ms | 902 ms | 0% |
| 32 virtual users | |||||
| Home page | 1.8 | 3.24 s | 3.66 s | 3.8 s | 0% |
| Shop page | 1.8 | 4.36 s | 4.88 s | 4.93 s | 0% |
| Category page | 1.8 | 3.82 s | 4.48 s | 4.75 s | 0% |
| Product page | 1.8 | 3.33 s | 3.61 s | 3.67 s | 0% |
| Product search | 1.51 | 3.08 s | 3.33 s | 3.45 s | 0% |
Cart and checkout
| Step | Requests/s | Median | p95 | p99 | Error rate |
|---|---|---|---|---|---|
| 8 virtual users | |||||
| Add to cart | 1.15 | 997 ms | 8.52 s | 9.41 s | 0% |
| Cart | 1.15 | 840 ms | 7.22 s | 7.86 s | 0% |
| Checkout | 1.15 | 689 ms | 5.31 s | 5.54 s | 0% |
| 32 virtual users | |||||
| Add to cart | 0.435 | 16.4 s | 29.6 s | 29.7 s | 0% |
| Cart | 0.435 | 26 s | 28.9 s | 29.3 s | 0% |
| Checkout | 0.34 | 21.8 s | 24.9 s | 25.6 s | 0% |
k6 with a fixed number of virtual users, 64 to 73 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.35 | 322 ms | 417 ms | 487 ms | 0% |
| Topic JSON | 0.691 | 160 ms | 194 ms | 207 ms | 0% |
| Home page | 0.691 | 287 ms | 496 ms | 595 ms | 0% |
| Categories page | 0.346 | 331 ms | 382 ms | 455 ms | 0% |
| User activity page | 0.329 | 215 ms | 440 ms | 504 ms | 0% |
| 4 virtual users | |||||
| Topic page | 2.98 | 596 ms | 816 ms | 1.2 s | 0% |
| Topic JSON | 1.5 | 286 ms | 386 ms | 418 ms | 0% |
| Home page | 1.47 | 527 ms | 672 ms | 958 ms | 0% |
| Categories page | 0.79 | 603 ms | 802 ms | 1.35 s | 0% |
| User activity page | 0.724 | 366 ms | 561 ms | 591 ms | 0% |
| 16 virtual users | |||||
| Topic page | 1.78 | 1.84 s | 3 s | 13.7 s | 0% |
| Topic JSON | 0.892 | 1.49 s | 2.33 s | 12.7 s | 0% |
| Home page | 0.907 | 1.86 s | 5.41 s | 14.4 s | 0% |
| Categories page | 0.439 | 1.83 s | 7.99 s | 14.3 s | 0% |
| User activity page | 0.453 | 1.61 s | 5.43 s | 11.4 s | 0% |
Anonymous
| Step | Requests/s | Median | p95 | p99 | Error rate |
|---|---|---|---|---|---|
| 16 virtual users | |||||
| Topic page | 4.66 | 706 ms | 1.1 s | 3.1 s | 28% |
| Topic JSON | 2.41 | 719 ms | 1.19 s | 1.6 s | 35.7% |
| Home page | 2.36 | 802 ms | 1.21 s | 4.26 s | 29.2% |
| Categories page | 1.18 | 844 ms | 3.43 s | 5.55 s | 35.1% |
| User activity page | 1.18 | 2.8 s | 5.5 s | 6.33 s | 31.2% |
k6 with a fixed number of virtual users, 61 to 71 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 had swap the way its installer sets a box up. The container peaked at 2,383 MB.
Ghost
Readers
| Step | Requests/s | Median | p95 | p99 | Error rate |
|---|---|---|---|---|---|
| 1 virtual user | |||||
| Home page | 5.04 | 54.1 ms | 77.7 ms | 109 ms | 0% |
| Post page | 12.6 | 28.5 ms | 41.7 ms | 57.4 ms | 0% |
| Tag page | 2.53 | 35 ms | 53.5 ms | 66.4 ms | 0% |
| Author page | 2.51 | 36.4 ms | 54.9 ms | 69.5 ms | 0% |
| RSS feed | 2.51 | 45.7 ms | 69.8 ms | 77.5 ms | 0% |
| 4 virtual users | |||||
| Home page | 6.74 | 153 ms | 209 ms | 251 ms | 0% |
| Post page | 16.8 | 108 ms | 154 ms | 188 ms | 0% |
| Tag page | 3.38 | 103 ms | 153 ms | 175 ms | 0% |
| Author page | 3.34 | 99.5 ms | 150 ms | 177 ms | 0% |
| RSS feed | 3.33 | 110 ms | 160 ms | 182 ms | 0% |
| 16 virtual users | |||||
| Home page | 6.55 | 623 ms | 762 ms | 825 ms | 0% |
| Post page | 16.3 | 511 ms | 653 ms | 706 ms | 0% |
| Tag page | 3.29 | 333 ms | 427 ms | 476 ms | 0% |
| Author page | 3.26 | 338 ms | 453 ms | 484 ms | 0% |
| RSS feed | 3.26 | 343 ms | 433 ms | 481 ms | 0% |
Staff in Ghost Admin
| Step | Requests/s | Median | p95 | p99 | Error rate |
|---|---|---|---|---|---|
| 1 virtual user | |||||
| Post list | 2.57 | 57.7 ms | 88.8 ms | 109 ms | 0% |
| Post editor | 7.73 | 21.2 ms | 34.4 ms | 42.7 ms | 0% |
| Saving a draft | 7.71 | 54.8 ms | 77.5 ms | 100 ms | 0% |
| Member list | 2.57 | 67.2 ms | 98.4 ms | 141 ms | 0% |
| 4 virtual users | |||||
| Post list | 0.514 | 404 ms | 599 ms | 951 ms | 0% |
| Post editor | 1.61 | 208 ms | 389 ms | 489 ms | 0% |
| Saving a draft | 1.62 | 1.7 s | 2.3 s | 2.58 s | 0% |
| Member list | 0.531 | 483 ms | 647 ms | 824 ms | 0% |
k6 with a fixed number of virtual users, 60 to 62 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 367 MB and MySQL at 617 MB.
Wagtail
Visitors
| Step | Requests/s | Median | p95 | p99 | Error rate |
|---|---|---|---|---|---|
| 1 virtual user | |||||
| Home page | 1.06 | 115 ms | 155 ms | 161 ms | 0% |
| Blog index | 1.06 | 433 ms | 532 ms | 595 ms | 0% |
| Blog post | 3.13 | 38.8 ms | 59.7 ms | 71.3 ms | 0% |
| Bread page | 3.15 | 42 ms | 62.1 ms | 66.8 ms | 0% |
| Location page | 1.06 | 38.9 ms | 63.8 ms | 112 ms | 0% |
| Site search | 1.04 | 64.9 ms | 133 ms | 145 ms | 0% |
| 4 virtual users | |||||
| Home page | 1.89 | 285 ms | 470 ms | 599 ms | 0% |
| Blog index | 1.94 | 963 ms | 1.38 s | 1.44 s | 0% |
| Blog post | 5.7 | 81.8 ms | 155 ms | 188 ms | 0% |
| Bread page | 5.73 | 93 ms | 140 ms | 160 ms | 0% |
| Location page | 1.94 | 88.4 ms | 130 ms | 149 ms | 0% |
| Site search | 1.88 | 136 ms | 256 ms | 322 ms | 0% |
| 16 virtual users | |||||
| Home page | 1.84 | 1.04 s | 1.45 s | 1.6 s | 0% |
| Blog index | 1.91 | 2.57 s | 3.14 s | 3.55 s | 0% |
| Blog post | 5.52 | 562 ms | 1.09 s | 1.26 s | 0% |
| Bread page | 5.56 | 551 ms | 988 ms | 1.35 s | 0% |
| Location page | 1.86 | 510 ms | 813 ms | 1.14 s | 0% |
| Site search | 1.82 | 612 ms | 1.14 s | 1.36 s | 0% |
Editors in the Wagtail admin
| Step | Requests/s | Median | p95 | p99 | Error rate |
|---|---|---|---|---|---|
| 1 virtual user | |||||
| Admin dashboard | 0.392 | 147 ms | 193 ms | 203 ms | 0% |
| Page explorer | 0.8 | 578 ms | 716 ms | 845 ms | 0% |
| Page editor | 1.18 | 286 ms | 373 ms | 524 ms | 0% |
| Image library | 0.392 | 106 ms | 167 ms | 1.11 s | 0% |
| Admin page search | 0.392 | 59.8 ms | 117 ms | 155 ms | 0% |
| 4 virtual users | |||||
| Admin dashboard | 0.592 | 321 ms | 687 ms | 697 ms | 0% |
| Page explorer | 1.22 | 1.45 s | 2.89 s | 5.95 s | 0% |
| Page editor | 1.84 | 682 ms | 1.3 s | 4.27 s | 0% |
| Image library | 0.592 | 296 ms | 764 ms | 831 ms | 0% |
| Admin page search | 0.592 | 122 ms | 386 ms | 524 ms | 0% |
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. 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 165 MB, and Redis at 26 MB.
Advertised vs. measured
| Spec | Advertised | Measured |
|---|---|---|
| vCPU | 2 | 2 |
| CPU | Shared vCPU | 0.1% of busy CPU time stolen |
| RAM | 4 GB | 3.8 GiB |
| Storage | 35 GB SSD | 33.8 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 (Skylake, IBRS)
- CPU cores
- 2
- CPU frequency
- 2600 MHz
- AES-NI
- Yes
- VM-x/AMD-V
- Yes
- RAM reported
- 3.8 GiB
- Swap reported
- 2 GiB
- Disk reported
- 33.8 GiB
- Virtualization reported
- KVM
- CPU steal
- 0.1% of busy CPU time stolen
- Distro
- Ubuntu 24.04.5 LTS
- Kernel
- 6.8.0-106-generic
- Architecture
- x86_64
- IPv4 reachable
- Yes
- IPv6 reachable
- Yes
Advertised at test time
- Plan
- m.4 2 vCPU / 4 GB
- Product line
- Memory-Optimized
- Location
- Toronto
- vCPU
- 2 shared vCPU
- Architecture
- x86_64
- RAM
- 4 GB
- Storage
- 35 GB SSD
- Virtualization
- KVM
- Network
- Unknown
- Transfer
- 2.5 TB
- Port 25
- Unknown
- Monthly price at test time
- $14.00
- Hourly price at test time
- $0.019
- YABS version
- v2026-09-20
- Ran at
- Oct 12, 2026, 16:27:36 UTC
- Parser version
- 5
Run timeline
- Queued
- Oct 12, 2026, 16:22:00 UTC
- Server created
- Oct 12, 2026, 16:26:27 UTC
- First update from the server
- Oct 12, 2026, 16:26:27 UTC
- Completed
- Oct 12, 2026, 18:57:55 UTC
- Server deleted
- Oct 12, 2026, 18:57:55 UTC
- Cost of this run
- $0.051
Loading details
Loading details
Loading details
Loading details
Loading details
Loading details
Loading details
Loading details
Loading details
Loading details
Loading details
Loading details
Loading details
Loading details
Loading details
Loading details
Loading details
Loading details
Loading details
Loading details
Loading details
Loading details
Loading details
Loading details
Loading details
Loading details
Loading details
Loading details
Loading details
Loading details
Loading details
Loading details
Loading details
Loading details
Loading details
Loading details
Loading details
Loading details
Loading details
Loading details
Loading details
Loading details
Loading details
Loading details
Loading details
Loading details
Loading details
Loading details
Loading details
Loading details
Loading details
Loading details
Loading details
Loading details
Loading details
Loading details
Loading details
Loading details
Loading details
Loading details
Loading details
Loading details
Loading details
Loading details
Loading details
Loading details
Loading output.
This party closed at . It's read only now.
Reconnecting. Hang tight.