Notes + Benchmarking read/write speeds of Microservers

The following are a bunch of notes and numbers.

I am gauging the performance of various devices reading from and writing to their memories.

The Benchmark

Reference: https://wiki.archlinux.org/index.php/SSD_Benchmarking

Installing an img on an SD Card

Reference: https://www.raspberrypi.org/documentation/installation/installing-images/linux.md

Resizing an SD card Partition to utilize entire space

Reference: http://raspberrypi.stackexchange.com/a/501

Using Screen

tap ESC, then push CTRL+A, followed by a command shorthand.

Reference: https://wiki.archlinux.org/index.php/GNU_Screen
Reference: http://aperiodic.net/screen/quick_reference

Lenovo X230t Laptop

Included to know what the upper limit should be.

Internal SSD (Samsung … something):

ADATA 128 GB 30/10 MicroSD Card (AUSDX128GUICL10-RA1) via internal SD adapter

Kingston 64bit 90/80 MicroSD Card (SDCA3/64GB) via USB 3.0

Kingston 64 GB 90/80 MicroSD Card (SDCA3/64GB) via internal SD Adapter

Corsair Voyager Vega 64 GB USB Key, via USB 3.0 (???)

Samsung Pro 32GB MicroSD (Gray) via USB 3.0 adapter

Kingston 32GB MicroSD (Red SDHC I3) via USB 3.0 adapter

ADATA 16GB MicroSD Card (Gray Stripe) via USB 3.0 adapter

ADATA 16GB MicroSD Card (plain black) via USB 3.0 adapter

Kingston 16GB MicroSD Card (yellow) via USB 3.0 adapter

Xedain 8GB MicroSD Card via USB 3.0 adapter

Scaleway C1

Cheap ARM server (3 EUR). 4 core ARMv7, 2 GB RAM, with 50 GB virtual SSD.

Scaleway VC1 (VPS)

Cheap x86_64 server (3 EUR). 2 core Atom Xeon, 2 GB RAM, with 50 GB virtual SSD.

Scaleway C2L

Cheap x86_64 server (24 EUR). 8 core Atom Xeon, 32 GB RAM, with 50 GB virtual SSD and attached 250 GB SSD.

Main 50 GB Drive (/dev/ndb0)

Attached 250 GB Drive (/dev/sda)

Parallella

Headless computer, Ubuntu.

ADATA 16 GB 30/10 MicroSD Card (AUSDH16GUICL10-RA1)

Kingston 64 GB 90/80 MicroSD Card (SDCA3/64GB)

ADATA 128 GB 30/10 MicroSD Card (AUSDX128GUICL10-RA1)

C.H.I.P. by NextThingCo

CHIP uses UBIFS, which a newfangled File System designed for Flash Memory. It’s a compressed file system, so this benchmark isn’t exactly reliable (Read speeds are reported as terrible, even though they’re good).

4 GB Internal EMMC

4 GB Internal EMCC, attempt 2

Linode VPS New Jersey

$10/mo plan. 1 core, 1 GB of RAM, 24 GB SSD, 2 GB Transfer.

BuyVM New Jersey

$3/mo (6 months). 2 core. 256 MB RAM. 30 GB SSD. 1 TB Transfer. Open VZ.

Vultr New Jersey

$5/mo plan. 1 core, 768 MB of RAM, 15 GB SSD, 1 TB Transfer.

Digital Ocean New Jersey

$5/mo plan. 1 Core, 512 MB RAM, 20 GB SSD, 1 TB Transfer.

Servint Ludum Dare Server (legacy)

Uh, we’re paying nearly $200 for 12 GB of RAM and…

Conclusions

– My local computer is fast, but my Linode is faster (IO wise)
– Writes are 2x faster on BuyVM than Scaleway, but IO is close
– Because Scaleway has more RAM, cache hits for disk IO are more likely.
– SD Card IO is heavily bound on devices. ~20 MB read, ~15 MB write, despite specs.
– I don’t have a device that properly supports UHS-1. Sounds like ODroid would, but ODroid can also do eMMC.
– The key is USB 3.0 support. That seems to be the minimum, though my laptop got shafted.