We will explain how you can test and compare the performance of our instance flavors. We will use an Ubuntu VM and test the Memory. You can repeat these tests on any similar platform and compare the results.
Most people don't worry about memory and look for fast CPUs. Faster memory means your service has fewer delays which translate to better application performance so it is a big deal. Memory transfer is used nearly everywhere, caching, disk io, network, transferring computed results, etc.
We do monitor all our memory busses to see if they're saturated. The Geekbench 4 test used to have a memory section but they dropped it in version 5 so we'll use some other tools.
With dd you can just copy memory.
dd if=/dev/zero of=/dev/null bs=1M count=10240
10240+0 records in
10240+0 records out
10737418240 bytes (11 GB, 10 GiB) copied, 0.801567 s, 13.4 GB/s
This shows it took less than a second to copy 10240 1M blocks (10GB of data) at a rate of 13.4 GB per second.
Sysbench is a benchmark suite. It has multiple tests, we'll use it to test our memory latency and throughput.
sudo apt update && sudo apt install sysbench
Running the test
sysbench --test=memory --memory-block-size=1M --memory-total-size=10G run
The test shows we have an average memory latency of 0.13ms and a bandwidth of almost 8GB per second for this flavor.
Running the test with following options:
Number of threads: 1
Initializing random number generator from current time
Running memory speed test with the following options:
block size: 1024KiB
total size: 10240MiB
Initializing worker threads...
Total operations: 10240 ( 7887.68 per second)
10240.00 MiB transferred (7887.68 MiB/sec)
total time: 1.2964s
total number of events: 10240
95th percentile: 0.12
events (avg/stddev): 10240.0000/0.00
execution time (avg/stddev): 1.2882/0.00
MWB is a memory bandwidth monitoring tool. It copies large arrays of data fom memory to memory.
sudo apt update && sudo apt install mbw
mbw -t2 512 -n 10| grep AVG
This instance has an average memory copy speed of nearly 6 GB/second
AVG Method: MCBLOCK Elapsed: 0.08552 MiB: 512.00000 Copy: 5986.918 MiB/s