Google compute: Why persistent ssd disks are slower than persistent standard disks

google-cloud-platformioperformancevirtual-machines

I ran several IO benchmarks and I cannot understand how pd-ssd offers a worse IO throughtput than pd-standard.

In my tests I boot a VM with a bootable disk pd-ssd of 30 or 250GB, and I still get worse performance than with a pd-standard disk of 100GB. I can share the results of my benchmarks. But I believe I am missing something…

Best Answer

PD-SSD is optimized for IO latency and IO throughput, whereas sysbench file layout needs sequential write bandwidth which PD-Standard can deliver better at small sizes.

Indeed, for 100GiB PD-Standard the sysbench prepare takes about half of the time of a 100GiB PD-SSD because PD-Standard is able to write at 120MiB/s whereas the PD-SSD is limited at 48MiB/s.

The benchmark itself though shows PD-SSD winning substantially in IO latency and IOPS:

100GiB PD-Standard:
    total number of events:              30928
    total time taken by event execution: 289.2202
    per-request statistics:
         min:                                  0.00ms
         avg:                                  9.35ms
         max:                                 94.20ms
         approx.  95 percentile:              27.00ms

100GiB PD-SSD:
    total number of events:              412308
    total time taken by event execution: 193.5045
    per-request statistics:
         min:                                  0.00ms
         avg:                                  0.47ms
         max:                                 16.67ms
         approx.  95 percentile:               0.95ms
 

My benchmark commands:

sysbench --test=fileio --file-total-size=50G prepare
sysbench --test=fileio --file-total-size=50G \
  --file-test-mode=rndrw --init-rng=on --max-time=300 --max-requests=0 run
Related Topic