# LunaNode m.1s 1 vCPU / 1 GB

[Toronto](https://rackcensus.com/locations/toronto-vps-benchmarks "Every provider in Toronto")

Benchmark complete

Finished Oct 13, 2026

Geekbench 7 single-core

Skipped

Geekbench 7 multi-core

Skipped

Disk 4K IOPS

47,694

fio random read and write, 50/50

Monthly price at test time

$3.50

Same price today

## Server

[LunaNode](https://rackcensus.com/vps-providers/lunanode-benchmarks)[m.1s 1 vCPU / 1 GB](https://rackcensus.com/plans/tt3uzc-lunanode-m-1s-1-vcpu-1-gb-benchmarks?location=toronto)

-

Provider

LunaNode

-

Plan

m.1s 1 vCPU / 1 GB

-

Location

Toronto

-

vCPU

1

-

RAM

1 GB

-

Storage

15 GB SSD

-

Network

Unknown

-

OS image

Ubuntu 24.04 64-bit (template)

-

Trigger

Scheduled

-

Queued at

Oct 13, 2026, 14:54:00 UTC

[Visit LunaNode](https://rackcensus.com/go/lunanode)

## CPU

Geekbench was skipped because this plan has less than 2 GB of RAM, which isn't enough for Geekbench 7 to run without swap.

## Memory, TLS and scheduler

### Memory bandwidth (STREAM)

| Test | Result | Runs | Spread |
| --- | --- | --- | --- |
| Copy higher is better | 7.12 GB/s | 3 | 1.35% |
| Scale higher is better | 11.2 GB/s | 3 | 0.729% |
| Add higher is better | 11.5 GB/s | 3 | 1.64% |
| Triad higher is better | 11.4 GB/s | 3 | 1.31% |

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 | 115/s | 3 | 2.1% |
| RSA 4096 verifies higher is better | 7,757/s | 3 | 1.33% |
| SHA-256 higher is better | 199 MB/s | 3 | 1.01% |
| AES-256-GCM higher is better | 1.05 GB/s | 3 | 3.21% |
| ChaCha20-Poly1305 higher is better | 864 MB/s | 3 | 0.25% |

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.1 ms | 3 | 1.09% |
| Requests per second, 90th percentile higher is better | 192/s | 3 | 0.301% |
| Request latency, 99.9th percentile lower is better | 16.5 ms | 3 | 41.5% |
| Requests per second, average higher is better | 183/s | 3 | 1.73% |

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

## Disk

| Block size | Read | Write | Total |
| --- | --- | --- | --- |
| 4K | 93 MB/s (23,816 IOPS) | 93.3 MB/s (23,878 IOPS) | 186.3 MB/s (47,694 IOPS) |
| 64K | 958.1 MB/s (15,329 IOPS) | 963.1 MB/s (15,409 IOPS) | 1.88 GB/s (30,738 IOPS) |
| 512K | 1.23 GB/s (2,525 IOPS) | 1.3 GB/s (2,659 IOPS) | 2.53 GB/s (5,184 IOPS) |
| 1M | 1.39 GB/s (1,426 IOPS) | 1.49 GB/s (1,521 IOPS) | 2.88 GB/s (2,947 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 | 623 Mbps | 421 Mbps |
| Eranium, Amsterdam, NL (100G) | IPv4 | 641 Mbps | 767 Mbps |
| Leaseweb, Singapore, SG (10G) | IPv4 | 552 Mbps | 382 Mbps |
| Clouvider, Los Angeles, CA, US (10G) | IPv4 | 717 Mbps | 447 Mbps |
| Leaseweb, NYC, NY, US (10G) | IPv4 | 690 Mbps | 678 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 | 3,293 | 0.304 ms |
| fdatasync | 3,225 | 0.31 ms |
| fsync | 1,702 | 0.588 ms |
| fsync\_writethrough | Not supported here | n/a |
| open\_sync | 1,347 | 0.743 ms |
| Two 8 kB writes |
| --- |
| open\_datasync | 1,608 | 0.622 ms |
| fdatasync | 2,613 | 0.383 ms |
| fsync | 1,456 | 0.687 ms |
| fsync\_writethrough | Not supported here | n/a |
| open\_sync | 821 | 1.22 ms |
| open\_sync at different write sizes |
| --- |
| 1 \* 16kB open\_sync write | 1,455 | 0.687 ms |
| 2 \* 8kB open\_sync writes | 868 | 1.15 ms |
| 4 \* 4kB open\_sync writes | 460 | 2.17 ms |
| 8 \* 2kB open\_sync writes | 266 | 3.77 ms |
| 16 \* 1kB open\_sync writes | 136 | 7.35 ms |
| fsync on a non-write descriptor |
| --- |
| write, fsync, close | 1,645 | 0.608 ms |
| write, close, fsync | 1,753 | 0.57 ms |
| Non-synced 8 kB writes |
| --- |
| write | 494,999 | 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 | 830 | 0.995 ms | 2.07 ms | 4.55 ms | 18.8 ms | 0 |
| Read/write (TPC-B like) | 8 | 1,201 | 5.85 ms | 11.6 ms | 19.1 ms | 40.7 ms | 0 |
| Read/write (TPC-B like) | 32 | 1,093 | 24.2 ms | 62.6 ms | 102 ms | 145 ms | 0 |
| Read only | 1 | 11,439 | 0.075 ms | 0.13 ms | 0.17 ms | 1.01 ms | 0 |
| Read only | 8 | 11,979 | 0.591 ms | 1.08 ms | 1.54 ms | 2.52 ms | 0 |
| Read only | 32 | 8,969 | 2.89 ms | 6.34 ms | 9.08 ms | 15.9 ms | 0 |

Scale 10 (1,000,000 accounts), loaded in 4.86 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 | 645 | 1.3 ms | 2.85 ms | 6.02 ms | 19.4 ms | 0 |
| Read/write (TPC-B like) | 8 | 953 | 7.52 ms | 14 ms | 22.1 ms | 33.7 ms | 0 |
| Read/write (TPC-B like) | 32 | 937 | 32 ms | 49.8 ms | 67.5 ms | 134 ms | 0 |
| Read only | 1 | 1,515 | 0.368 ms | 1.01 ms | 2.27 ms | 85.1 ms | 0 |
| Read only | 8 | 368 | 2.21 ms | 95 ms | 192 ms | 201 ms | 0 |
| Read only | 32 | 342 | 95.6 ms | 197 ms | 398 ms | 505 ms | 0 |

Scale 100 (10,000,000 accounts), loaded in 37.6 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 | 134 | 2,681 | 6.32 ms | 13.5 ms | 23.1 ms | 0 |
| Read/write | 8 | 197 | 3,943 | 37.6 ms | 61.1 ms | 83 ms | 0 |
| Read/write | 32 | 193 | 3,852 | 153 ms | 258 ms | 350 ms | 0 |
| Read only | 1 | 419 | 6,705 | 2.15 ms | 3.55 ms | 4.91 ms | 0 |
| Read only | 8 | 290 | 4,633 | 18.6 ms | 97.6 ms | 204 ms | 0 |
| Read only | 32 | 54 | 863 | 511 ms | 1.19 s | 1.59 s | 0 |

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

### Redis

#### memtier

| Mix | Operations/s | Hits/s | Median | p99 | p99.9 |
| --- | --- | --- | --- | --- | --- |
| 1:10 set:get | 2,041 | 1,855 | 6.05 ms | 99.3 ms | 198 ms |
| 1:1 set:get | 1,878 | 939 | 6.62 ms | 104 ms | 196 ms |

1,000,000 keys of 32 bytes. 64 connections over 1 thread, 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 | 99.3 | 55.4 | 74.8 | 6.54 s |
| Express express-postgresjs | 2,718 | 2,711 | 5,304 | 4.07 s |
| Fastify fastify-postgres | 426 | 486 | 5,121 | 4.36 s |
| NestJS nestjs | 124 | 140 | 467 | 6.49 s |
| Nuxt nuxt | 2,128 | 2,656 | 4,003 | 5.64 s |
| FastAPI fastapi | 140 | 166 | 3,665 | 5.31 s |
| Django django-postgresql | 69.7 | 79.4 | 178 | 4.69 s |
| Rails rails | 745 | 987 | 3,242 | 414 ms |
| Laravel laravel | 27.2 | 49.3 | 380 | 7.82 s |
| Symfony symfony | 30.6 | 39.8 | 111 | 8 s |

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

Failed: woo-db stopped before it was ready: cally writing the file full; Please wait ... 2026-10-13 16:50:14 0 [Note] InnoDB: File './ibtmp1' size is now 12.000MiB. 2026-10-13 16:50:14 0 [Note] InnoDB: log sequence number 45434; transaction id 14 2026-10-13 16:50:14 0 [Note] Plugin 'FEEDBACK' is disabled. 2026-10-13 16:50:14 0 [Note] Plugin 'wsrep-provider' is disabled. 2026-10-13 16:50:49+00:00 [ERROR] [Entrypoint]: Unable to start server.

#### Cart and checkout

| Step | Requests/s | Median | p95 | p99 | Error rate |
| --- | --- | --- | --- | --- | --- |
| 8 virtual users |
| --- |
| Add to cart | 1.14 | 2.35 s | 2.93 s | 2.98 s | 0% |
| Cart | 1.14 | 2.45 s | 2.93 s | 3.87 s | 0% |
| Checkout | 1.14 | 1.91 s | 3.27 s | 3.66 s | 0% |
| 32 virtual users |
| --- |
| Add to cart | 1.35 | 8.34 s | 10.7 s | 11 s | 0% |
| Cart | 1.15 | 10.1 s | 11 s | 11.3 s | 0% |
| Checkout | 0.899 | 7.68 s | 9.37 s | 9.49 s | 0% |

k6 with a fixed number of virtual users, 63 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 | 0.424 | 617 ms | 1.2 s | 2.53 s | 0% |
| Topic JSON | 0.22 | 320 ms | 1.97 s | 3.27 s | 0% |
| Home page | 0.22 | 583 ms | 4.05 s | 4.47 s | 0% |
| Categories page | 0.11 | 588 ms | 748 ms | 758 ms | 0% |
| User activity page | 0.11 | 374 ms | 4.33 s | 5.62 s | 0% |
| 4 virtual users |
| --- |
| Topic page | 0.494 | 2.27 s | 5.91 s | 10.4 s | 0% |
| Topic JSON | 0.27 | 1.78 s | 2.74 s | 3.23 s | 0% |
| Home page | 0.255 | 2.06 s | 5.19 s | 7.42 s | 0% |
| Categories page | 0.15 | 2.79 s | 3.43 s | 3.54 s | 0% |
| User activity page | 0.12 | 1.8 s | 3 s | 3.01 s | 0% |
| 16 virtual users |
| --- |
| Topic page | 0.427 | 2.47 s | 4.29 s | 4.52 s | 0% |
| Topic JSON | 0.235 | 1.94 s | 3.51 s | 3.78 s | 0% |
| Home page | 0.235 | 2.26 s | 8.91 s | 9.2 s | 0% |
| Categories page | 0.118 | 2.57 s | 3.43 s | 3.47 s | 0% |
| User activity page | 0.103 | 1.88 s | 8.02 s | 10 s | 0% |

#### Anonymous

| Step | Requests/s | Median | p95 | p99 | Error rate |
| --- | --- | --- | --- | --- | --- |
| 16 virtual users |
| --- |
| Topic page no successful responses | 0.441 | n/a | n/a | n/a | 100% |
| Topic JSON | 0.228 | 5.21 s | 5.21 s | 5.21 s | 93.3% |
| Home page | 0.198 | 29.5 s | 29.5 s | 29.5 s | 92.3% |
| Categories page | 0.122 | 13.9 s | 16.3 s | 16.5 s | 75% |
| User activity page no successful responses | 0.122 | n/a | n/a | n/a | 100% |

k6 with a fixed number of virtual users, 64 to 68 s per level, after a 29 s warmup. The error rate counts responses that weren't a 200. Discourse ran with 2 app workers and 128 MB of Postgres shared buffers, what its installer picks for a 1 GB box. It added a 2 GB swapfile first, the way its installer does, and used up to 1,146 MB of it. The container peaked at 709 MB.

### Ghost

#### Readers

Failed: k6 summary at 4 virtual users didn't parse: k6 recorded no requests for step rss

#### Staff in Ghost Admin

| Step | Requests/s | Median | p95 | p99 | Error rate |
| --- | --- | --- | --- | --- | --- |
| 1 virtual user |
| --- |
| Post list | 1.4 | 109 ms | 181 ms | 309 ms | 0% |
| Post editor | 4.23 | 37.7 ms | 80.8 ms | 160 ms | 0% |
| Saving a draft | 4.23 | 88 ms | 158 ms | 208 ms | 0% |
| Member list | 1.4 | 132 ms | 255 ms | 352 ms | 0% |
| 4 virtual users |
| --- |
| Post list | 1.47 | 152 ms | 204 ms | 259 ms | 0% |
| Post editor | 4.43 | 83.6 ms | 146 ms | 255 ms | 0% |
| Saving a draft | 4.45 | 630 ms | 955 ms | 1.09 s | 0% |
| Member list | 1.48 | 177 ms | 414 ms | 465 ms | 0% |

k6 with a fixed number of virtual users, 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 242 MB and MySQL at 538 MB.

### Wagtail

#### Visitors

| Step | Requests/s | Median | p95 | p99 | Error rate |
| --- | --- | --- | --- | --- | --- |
| 1 virtual user |
| --- |
| Home page | 0.698 | 145 ms | 292 ms | 995 ms | 0% |
| Blog index | 0.698 | 492 ms | 2.06 s | 4 s | 0% |
| Blog post | 2.06 | 45.3 ms | 89.7 ms | 388 ms | 0% |
| Bread page | 2.08 | 48.5 ms | 94.2 ms | 468 ms | 0% |
| Location page | 0.698 | 49.7 ms | 63.9 ms | 267 ms | 0% |
| Site search | 0.683 | 78.9 ms | 129 ms | 469 ms | 0% |
| 4 virtual users |
| --- |
| Home page | 0.112 | 3.59 s | 5.58 s | 5.75 s | 0% |
| Blog index | 0.128 | 16.3 s | 18.8 s | 18.9 s | 0% |
| Blog post | 0.369 | 1.41 s | 2.01 s | 2.08 s | 0% |
| Bread page | 0.353 | 1.41 s | 1.99 s | 2.23 s | 0% |
| Location page | 0.144 | 1.4 s | 1.77 s | 1.88 s | 0% |
| Site search | 0.128 | 1.89 s | 4.53 s | 4.75 s | 0% |
| 16 virtual users |
| --- |
| Home page | 0.0844 | 13.2 s | 18.5 s | 19.1 s | 0% |
| Blog index | 0.0985 | 39.2 s | 42.4 s | 42.6 s | 0% |
| Blog post | 0.295 | 9.01 s | 15.3 s | 16.5 s | 0% |
| Bread page | 0.338 | 8.45 s | 13.4 s | 15.4 s | 0% |
| Location page | 0.155 | 8.89 s | 15.1 s | 17.2 s | 0% |
| Site search | 0.0985 | 8.6 s | 11.9 s | 11.9 s | 0% |

#### Editors in the Wagtail admin

| Step | Requests/s | Median | p95 | p99 | Error rate |
| --- | --- | --- | --- | --- | --- |
| 1 virtual user |
| --- |
| Admin dashboard | 0.0297 | 1.3 s | 1.56 s | 1.59 s | 0% |
| Page explorer | 0.0594 | 5.15 s | 7.33 s | 7.63 s | 0% |
| Page editor | 0.0892 | 2.55 s | 3.68 s | 3.86 s | 0% |
| Image library | 0.0297 | 5.4 s | 9.62 s | 10 s | 0% |
| Admin page search | 0.0297 | 1.19 s | 1.46 s | 1.48 s | 0% |
| 4 virtual users |
| --- |
| Admin dashboard | 0.0131 | 6.4 s | 6.4 s | 6.4 s | 0% |
| Page explorer | 0.0524 | 18.4 s | 20.8 s | 21.1 s | 0% |
| Page editor | 0.0917 | 10.3 s | 16.1 s | 17.4 s | 0% |
| Image library | 0.0262 | 5.15 s | 5.64 s | 5.69 s | 0% |
| Admin page search | 0.0131 | 2 s | 2 s | 2 s | 0% |

k6 with a fixed number of virtual users, 62 to 76 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 306 MB, Postgres at 176 MB, and Redis at 25 MB.

## Advertised vs. measured

| Spec | Advertised | Measured |
| --- | --- | --- |
| vCPU | 1 | 1 |
| CPU | Shared vCPU | 6.7% of busy CPU time stolen |
| RAM | 1 GB | 961 MiB |
| Storage | 15 GB SSD | 15.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 Xeon E3-12xx v2 (Ivy Bridge, IBRS)

**CPU cores:** 1

**CPU frequency:** 3000 MHz

**AES-NI:** Yes

**VM-x/AMD-V:** Yes

**RAM reported:** 961 MiB

**Swap reported:** 512 MiB

**Disk reported:** 15.4 GiB

**Virtualization reported:** KVM

**CPU steal:** 6.7% 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.1s 1 vCPU / 1 GB

**Product line:** Memory-Optimized

**Location:** Toronto

**vCPU:** 1 shared vCPU

**Architecture:** x86\_64

**RAM:** 1 GB

**Storage:** 15 GB SSD

**Virtualization:** KVM

**Network:** Unknown

**Transfer:** 1 TB

**Port 25:** Unknown

**Monthly price at test time:** $3.50

**Hourly price at test time:** $0.0049

**YABS version:** v2026-09-20

**Ran at:** Oct 13, 2026, 15:00:34 UTC

**Parser version:** 5

## Run timeline

**Queued:** Oct 13, 2026, 14:54:00 UTC

**First update from the server:** Oct 13, 2026, 14:58:44 UTC

**Completed:** Oct 13, 2026, 17:48:14 UTC

**Server deleted:** Oct 13, 2026, 17:48:14 UTC

**Cost of this run:** $0.014

Tests 39 of 41 done Live output 729 lines

Setup 1 cores, 961.5 MiB RAM 4 of 4Done

Disk (fio) 195 MB/s at 4k, 3.09 GB/s at 1m 5 of 5Done

Network, IPv4 (iperf3) Median 641 Mbit/s send, 447 Mbit/s receive, 1 retried 5 of 5Done

Phoronix (memory, TLS, scheduler) 3 of 3Done

Datastores 5 of 5Done

Web frameworks 2 failed 16 of 18Some failed

TestResultTime

Next.js fortune 256c 99.3 req/s rps, fortune 256c 7m 32s

Express fortune 256c 2,718 req/s rps, fortune 256c 3m 06s

Fastify fortune 256c 426 req/s rps, fortune 256c 3m 33s

NestJS fortune 256c 113 req/s rps, fortune 256c 7m 49s

Nuxt fortune 256c 1,982 req/s rps, fortune 256c 3m 03s

FastAPI fortune 256c 136 req/s rps, fortune 256c 4m 18s

Django fortune 256c 59.4 req/s rps, fortune 256c 9m 22s

Rails fortune 256c 745 req/s rps, fortune 256c 6m 30s

Laravel fortune 256c 27.2 req/s rps, fortune 256c 3m 54s

Symfony fortune 256c 30.5 req/s rps, fortune 256c 6m 10s

WooCommerce page mix start Stopped woo-db stopped before it was ready: cally writing the file full; Please wait ... 2026-10-13 16:50:14 0 [Note] InnoDB: File './ibtmp1' size is now 12.000MiB. 2026-10-13 16:50:14 0 [Note] InnoDB: log sequence number 45434; transaction id 14 2026-10-13 16:50:14 0 [Note] Plugin 'FEEDBACK' is disabled. 2026-10-13 16:50:14 0 [Note] Plugin 'wsrep-provider' is disabled. 2026-10-13 16:50:49+00:00 [ERROR] [Entrypoint]: Unable to start server. 4m 55s

WooCommerce cart flow 32 vus 3.4 req/s rps, 32 vus 4m 07s

Discourse, signed in 16 vus 1.12 req/s rps, 16 vus 22m 32s

Discourse, anonymous 16 vus 1.11 req/s rps, 16 vus 1m 23s

Ghost, readers warmup Stopped k6 summary at 4 virtual users didn't parse: k6 recorded no requests for step rss 18m 16s

Ghost, staff in Ghost Admin 4 vus 11.8 req/s rps, 4 vus 3m 20s

Wagtail, visitors 16 vus 1.07 req/s rps, 16 vus 4m 33s

Wagtail, editors in the Wagtail admin 4 vus 0.2 req/s rps, 4 vus 2m 40s

Finish Results saved 1 of 1Done

Watch party 0 watching

This party closed at 18:48 UTC. It's read only now.

## Watch party

Loading the party
