Skip to content
This repository was archived by the owner on Jan 13, 2023. It is now read-only.
This repository was archived by the owner on Jan 13, 2023. It is now read-only.

Benchmarks on the Turing Pi Cluster #11

@geerlingguy

Description

@geerlingguy

See related: Test Performance and Functionality on Raspberry Pi OS 64-bit

With the full configuration (excluding NextCloud), all tests run 4x, discarded first result (unless noted), then averaged the next 3:

Disk Benchmarks

Disk 4K Random Read 4K Random Write
CM3+ 8 GB eMMC 8.99 MB/sec 9.20 MB/sec
CM3+ microSD - Samsung Evo+ 32GB 6.97 MB/sec 2.90 MB/sec
CM3+ Kingston USB 2.0 SSD 8.87 MB/sec 10.04 MB/sec
Pi 4 microSD - Samsung Evo+ 32GB 11.81 MB/sec 3.25 MB/sec
Pi 4 Kingston USB 3.0 SSD w/o UASP 14.41 MB/sec 23.28 MB/sec
Pi 4 Kingston USB 3.0 SSD w/ UASP 20.59 MB/sec 28.54 MB/sec
  • iozone -e -I -a -s 100M -r 4k -i 0 -i 1 -i 2 (installed using these directions)

(Another note: The onboard eMMC also does large file writes at ~5-10 MB/sec whereas the microSD cards can do 20-40 MB/sec in some cases... but the eMMC is a way better option for general purpose computing since it's more durable and 3x faster than the fastest microSD cards for random IO (and 10-100x faster than the majority of microSD cards I've tested).

Network Benchmarks

Configuration Speed
Pi 4 2GB in Dramble 936 Mbps
CM3+ in Turing Pi 95 Mbps
  • iperf -s on Pi master node, iperf -c [pi-pi] on my Mac, connected through TRENDnet 10/100/1000 5-port network switch.

Note that the Turing Pi cluster does support the full 95 Mbps on each Pi simultaneously. So you can saturate a 1 Gbps connection to the Turing Pi cluster as a whole.

Full System Benchmarks

7-node Turing Pi Cluster

32-bit HypriotOS

Test Result
Drupal, authenticated (ab) 6.65 req/s
Drupal, anonymous (wrk) 28.29 req/s
Wordpress, authenticated (ab) 21.35 req/s
Wordpress, anonymous (wrk) 25.53 req/s
Minecraft, world initialization 983 seconds1 (~16.4 min)

4-node Pi Dramble Cluster (Running K3s, same configs)

32-bit HypriotOS

Test Result
Drupal, authenticated (ab) 14.12 req/s
Drupal, anonymous (wrk) 85.85 req/s
Wordpress, authenticated (ab) 31.36 req/s
Wordpress, anonymous (wrk) 40.36 req/s
Minecraft, world initialization 407 seconds1 (~6.8 min)

32-bit Raspberry Pi OS

Test Result
Drupal, authenticated (ab) 12.71 req/s
Drupal, anonymous (wrk) 95.87 req/s
Wordpress, authenticated (ab) 39.51 req/s
Wordpress, anonymous (wrk) 49.74 req/s
Minecraft, world initialization 300 seconds (~5 min)

64-bit Raspberry Pi OS

Test Result
Drupal, authenticated (ab) 10.84 req/s
Drupal, anonymous (wrk) 73.67 req/s
Wordpress, authenticated (ab) 36.64 req/s
Wordpress, anonymous (wrk) 42.69 req/s
Minecraft, world initialization 400 seconds1 (~6.7 min)
  • ab test example: ab -n 100 -c 10 -C "SESSION=COOKIE" http://drupal.10.0.100.74.nip.io/
  • wrk test example: wrk -t4 -c100 -d30 http://drupal.10.0.100.74.nip.io/
  • Minecraft initialization time from kubectl logs -n minecraft -l app=minecraft-minecraft | grep Done

1 This test needs to be re-run after 15 minute cool-down and run three times in progression. The first time I ran the tests I accidentally only took the first run, and didn't take the average of the final three runs. Oops.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions