State of the art of European IaaS Compute - Q2 2022 - Local Storage IOPS

Go back to list

Filter:


Small and medium Cloud providers tend to bundle their Virtual Machine with an extra volume made to store the operating system or extra data. This additionnal strorage can be either a part of of the local storage directly puggled to the hypervisor or a Block Storage given for free.

Despite the title of the section, all volume tested here are local and it's always explcitly written by the vendors. But the differenciation can be generally made by performance testing: Block Storages tend to have a maximum performance that we try to reach here and local storage easily burst at more than 80,000 IOPS.

To reach the maximum of the performance we use the same methodology that has been used for Block Storage IOPS :

  • 4KB blocks
  • Random access
  • Read then Write
  • Direct access to device without filesystems
  • libaio engine

Cloud Mercato's assertions:

  • Above 250,000 IOPS we have only DigitalOcean
  • VEXXHOST is above than 200,000 IOPS for all categories of VMs
  • Above 150,000 IOPS Vultr
  • Linode, Nua.ge and gridscale also stand apart with more than 100,000 IOPS
{ "configuration": { "chart": { "type": "bar", "polar": false, "zoomType": "", "options3d": {}, "height": 900, "width": null, "margin": null, "inverted": false }, "credits": { "enabled": false }, "title": { "text": "" }, "colorAxis": null, "subtitle": { "text": "" }, "xAxis": { "title": { "text": [ "" ], "useHTML": false, "style": { "color": "#666666" } }, "categories": [ "provider__name", "flavor__name", "volume_type_name" ], "lineWidth": 1, "tickInterval": null, "tickWidth": 0, "tickLength": 10, "tickPixelInterval": null, "plotLines": null, "labels": { "enabled": false, "formatter": "", "style": { "color": "#666666", "cursor": "default", "fontSize": "11px" }, "useHTML": false }, "plotBands": null, "visible": true, "floor": null, "ceiling": null, "type": "linear", "min": null, "gridLineWidth": null, "gridLineColor": null, "minorTickInterval": null, "minorTickWidth": 0, "minTickInterval": null, "startOnTick": true, "endOnTick": null, "tickmarkPlacement": null }, "yAxis": [ { "title": { "text": [ "IOPS<br>Read colored, Write darker" ], "useHTML": false, "style": { "fontSize": "14px" } }, "categories": [ "readwrite" ], "plotLines": null, "plotBands": null, "lineWidth": null, "tickInterval": 50000, "tickLength": 10, "floor": null, "ceiling": null, "gridLineInterpolation": null, "gridLineWidth": 1, "gridLineColor": "#CCC", "min": null, "max": 285403, "minorTickInterval": null, "minorTickWidth": 0, "minTickInterval": null, "startOnTick": true, "endOnTick": null, "minRange": null, "type": "linear", "tickmarkPlacement": null, "labels": { "enabled": true, "formatter": ":abs", "style": { "fontSize": "14px" }, "useHTML": false } }, { "title": { "enabled": false }, "categories": [ "readwrite" ], "plotLines": null, "plotBands": null, "lineWidth": null, "tickInterval": 50000, "tickLength": 10, "floor": null, "ceiling": null, "gridLineInterpolation": null, "gridLineWidth": 1, "gridLineColor": "#CCC", "min": null, "max": 285403, "minorTickInterval": null, "minorTickWidth": 0, "minTickInterval": null, "startOnTick": true, "endOnTick": null, "minRange": null, "type": "linear", "tickmarkPlacement": null, "labels": { "enabled": false }, "inkedTo": 0 } ], "zAxis": { "title": { "text": "IOPS<br>Read colored, Write darker" } }, "plotOptions": { "series": { "dataLabels": { "enabled": true, "format": "{series.name}", "distance": 30, "align": "left", "inside": null, "allowOverlap": false, "style": { "fontSize": "15px" } }, "showInLegend": null, "turboThreshold": 1000, "stacking": "normal", "groupPadding": 0, "centerInCategory": false } }, "rangeSelector": { "enabled": false }, "legend": { "enabled": false, "align": "center", "verticalAlign": "bottom", "layout": "horizontal", "width": null, "margin": 12, "reversed": false }, "series": [ { "name": "CloudFerro eo2a.3xlarge eo2a.3xlarge Root SSD", "verbose": "CloudFerro eo2a.3xlarge eo2a.3xlarge Root SSD Read", "data": [ { "x": 0, "y": 61548.3, "verbose": 61548.3 } ], "color": "rgba(255, 130, 37, 0.8)", "zIndex": 10 }, { "name": "CloudFerro eo2a.3xlarge eo2a.3xlarge Root SSD", "verbose": "CloudFerro eo2a.3xlarge eo2a.3xlarge Root SSD Write", "data": [ { "x": 0, "y": 10948.6, "verbose": 10948.6 } ], "pointPlacement": 0.1, "color": "#9e9fa3", "linkedTo": ":previous", "yAxis": 1, "dataLabels": { "enabled": false, "style": { "textAlign": "left" } } }, { "name": "CloudFerro hm.2xlarge hm.2xlarge Root SSD", "verbose": "CloudFerro hm.2xlarge hm.2xlarge Root SSD Read", "data": [ { "x": 1, "y": 50634.41379310345, "verbose": 50634.41379310345 } ], "color": "rgba(255, 130, 37, 0.8)", "zIndex": 10 }, { "name": "CloudFerro hm.2xlarge hm.2xlarge Root SSD", "verbose": "CloudFerro hm.2xlarge hm.2xlarge Root SSD Write", "data": [ { "x": 1, "y": 8120.9, "verbose": 8120.9 } ], "pointPlacement": 0.1, "color": "#9e9fa3", "linkedTo": ":previous", "yAxis": 1, "dataLabels": { "enabled": false, "style": { "textAlign": "left" } } }, { "name": "DigitalOcean C 16 Root SSD", "verbose": "DigitalOcean C 16 Root SSD Read", "data": [ { "x": 2, "y": 262285.0, "verbose": 262285.0 } ], "color": "rgba(5, 127, 255, 0.8)", "zIndex": 10 }, { "name": "DigitalOcean C 16 Root SSD", "verbose": "DigitalOcean C 16 Root SSD Write", "data": [ { "x": 2, "y": 18651.9, "verbose": 18651.9 } ], "pointPlacement": 0.1, "color": "#9e9fa3", "linkedTo": ":previous", "yAxis": 1, "dataLabels": { "enabled": false, "style": { "textAlign": "left" } } }, { "name": "DigitalOcean M 128GB Root SSD", "verbose": "DigitalOcean M 128GB Root SSD Read", "data": [ { "x": 3, "y": 121759.9, "verbose": 121759.9 } ], "color": "rgba(5, 127, 255, 0.8)", "zIndex": 10 }, { "name": "DigitalOcean M 128GB Root SSD", "verbose": "DigitalOcean M 128GB Root SSD Write", "data": [ { "x": 3, "y": 3352.5, "verbose": 3352.5 } ], "pointPlacement": 0.1, "color": "#9e9fa3", "linkedTo": ":previous", "yAxis": 1, "dataLabels": { "enabled": false, "style": { "textAlign": "left" } } }, { "name": "DigitalOcean S 16VCPU 64GB Root SSD", "verbose": "DigitalOcean S 16VCPU 64GB Root SSD Read", "data": [ { "x": 4, "y": 134698.3, "verbose": 134698.3 } ], "color": "rgba(5, 127, 255, 0.8)", "zIndex": 10 }, { "name": "DigitalOcean S 16VCPU 64GB Root SSD", "verbose": "DigitalOcean S 16VCPU 64GB Root SSD Write", "data": [ { "x": 4, "y": 4820.333333333333, "verbose": 4820.333333333333 } ], "pointPlacement": 0.1, "color": "#9e9fa3", "linkedTo": ":previous", "yAxis": 1, "dataLabels": { "enabled": false, "style": { "textAlign": "left" } } }, { "name": "Fuga Cloud c3.4xlarge SSD c3", "verbose": "Fuga Cloud c3.4xlarge SSD c3 Read", "data": [ { "x": 5, "y": 20065.5, "verbose": 20065.5 } ], "color": "rgba(36, 47, 75, 0.8)", "zIndex": 10 }, { "name": "Fuga Cloud c3.4xlarge SSD c3", "verbose": "Fuga Cloud c3.4xlarge SSD c3 Write", "data": [ { "x": 5, "y": 9412.8, "verbose": 9412.8 } ], "pointPlacement": 0.1, "color": "#9e9fa3", "linkedTo": ":previous", "yAxis": 1, "dataLabels": { "enabled": false, "style": { "textAlign": "left" } } }, { "name": "Hetzner CCX41 ccx41 Local", "verbose": "Hetzner CCX41 ccx41 Local Read", "data": [ { "x": 6, "y": 79809.9, "verbose": 79809.9 } ], "color": "rgba(213, 9, 45, 0.8)", "zIndex": 10 }, { "name": "Hetzner CCX41 ccx41 Local", "verbose": "Hetzner CCX41 ccx41 Local Write", "data": [ { "x": 6, "y": 11155.4, "verbose": 11155.4 } ], "pointPlacement": 0.1, "color": "#9e9fa3", "linkedTo": ":previous", "yAxis": 1, "dataLabels": { "enabled": false, "style": { "textAlign": "left" } } }, { "name": "Hetzner CPX51 cpx51 Local", "verbose": "Hetzner CPX51 cpx51 Local Read", "data": [ { "x": 7, "y": 97713.1, "verbose": 97713.1 } ], "color": "rgba(213, 9, 45, 0.8)", "zIndex": 10 }, { "name": "Hetzner CPX51 cpx51 Local", "verbose": "Hetzner CPX51 cpx51 Local Write", "data": [ { "x": 7, "y": 13806.8, "verbose": 13806.8 } ], "pointPlacement": 0.1, "color": "#9e9fa3", "linkedTo": ":previous", "yAxis": 1, "dataLabels": { "enabled": false, "style": { "textAlign": "left" } } }, { "name": "IBM Cloud vx2d-16x224 vx2d volume", "verbose": "IBM Cloud vx2d-16x224 vx2d volume Read", "data": [ { "x": 8, "y": 96844.83333333333, "verbose": 96844.83333333333 } ], "color": "rgba(21, 41, 53, 0.8)", "zIndex": 10 }, { "name": "IBM Cloud vx2d-16x224 vx2d volume", "verbose": "IBM Cloud vx2d-16x224 vx2d volume Write", "data": [ { "x": 8, "y": 34090.25, "verbose": 34090.25 } ], "pointPlacement": 0.1, "color": "#9e9fa3", "linkedTo": ":previous", "yAxis": 1, "dataLabels": { "enabled": false, "style": { "textAlign": "left" } } }, { "name": "Linode Dedicated 32GB g6-dedicated-16 root", "verbose": "Linode Dedicated 32GB g6-dedicated-16 root Read", "data": [ { "x": 9, "y": 144730.6, "verbose": 144730.6 } ], "color": "rgba(0, 182, 76, 0.8)", "zIndex": 10 }, { "name": "Linode Dedicated 32GB g6-dedicated-16 root", "verbose": "Linode Dedicated 32GB g6-dedicated-16 root Write", "data": [ { "x": 9, "y": 7203.555555555556, "verbose": 7203.555555555556 } ], "pointPlacement": 0.1, "color": "#9e9fa3", "linkedTo": ":previous", "yAxis": 1, "dataLabels": { "enabled": false, "style": { "textAlign": "left" } } }, { "name": "Linode Linode 300GB g7-highmem-16 root", "verbose": "Linode Linode 300GB g7-highmem-16 root Read", "data": [ { "x": 10, "y": 110177.3, "verbose": 110177.3 } ], "color": "rgba(0, 182, 76, 0.8)", "zIndex": 10 }, { "name": "Linode Linode 300GB g7-highmem-16 root", "verbose": "Linode Linode 300GB g7-highmem-16 root Write", "data": [ { "x": 10, "y": 9754.1, "verbose": 9754.1 } ], "pointPlacement": 0.1, "color": "#9e9fa3", "linkedTo": ":previous", "yAxis": 1, "dataLabels": { "enabled": false, "style": { "textAlign": "left" } } }, { "name": "Linode Linode 64GB g6-standard-16 root", "verbose": "Linode Linode 64GB g6-standard-16 root Read", "data": [ { "x": 11, "y": 120272.1, "verbose": 120272.1 } ], "color": "rgba(0, 182, 76, 0.8)", "zIndex": 10 }, { "name": "Linode Linode 64GB g6-standard-16 root", "verbose": "Linode Linode 64GB g6-standard-16 root Write", "data": [ { "x": 11, "y": 9069.8, "verbose": 9069.8 } ], "pointPlacement": 0.1, "color": "#9e9fa3", "linkedTo": ":previous", "yAxis": 1, "dataLabels": { "enabled": false, "style": { "textAlign": "left" } } }, { "name": "Microsoft Azure Standard_F16s_v2 Standard_F16s_v2 local disk", "verbose": "Microsoft Azure Standard_F16s_v2 Standard_F16s_v2 local disk Read", "data": [ { "x": 12, "y": 31645.0, "verbose": 31645.0 } ], "color": "rgba(85, 179, 255, 0.8)", "zIndex": 10 }, { "name": "Microsoft Azure Standard_F16s_v2 Standard_F16s_v2 local disk", "verbose": "Microsoft Azure Standard_F16s_v2 Standard_F16s_v2 local disk Write", "data": [ { "x": 12, "y": 3508.2, "verbose": 3508.2 } ], "pointPlacement": 0.1, "color": "#9e9fa3", "linkedTo": ":previous", "yAxis": 1, "dataLabels": { "enabled": false, "style": { "textAlign": "left" } } }, { "name": "Nua.ge 16cores 64GB 100GB Standard root", "verbose": "Nua.ge 16cores 64GB 100GB Standard root Read", "data": [ { "x": 13, "y": 126594.2, "verbose": 126594.2 } ], "color": "rgba(28, 198, 217, 0.8)", "zIndex": 10 }, { "name": "Nua.ge 16cores 64GB 100GB Standard root", "verbose": "Nua.ge 16cores 64GB 100GB Standard root Write", "data": [ { "x": 13, "y": 13364.7, "verbose": 13364.7 } ], "pointPlacement": 0.1, "color": "#9e9fa3", "linkedTo": ":previous", "yAxis": 1, "dataLabels": { "enabled": false, "style": { "textAlign": "left" } } }, { "name": "OVHcloud B2-60 Root local SSD", "verbose": "OVHcloud B2-60 Root local SSD Read", "data": [ { "x": 14, "y": 80262.33333333333, "verbose": 80262.33333333333 } ], "color": "rgba(72, 72, 72, 0.8)", "zIndex": 10 }, { "name": "OVHcloud B2-60 Root local SSD", "verbose": "OVHcloud B2-60 Root local SSD Write", "data": [ { "x": 14, "y": 4272.4, "verbose": 4272.4 } ], "pointPlacement": 0.1, "color": "#9e9fa3", "linkedTo": ":previous", "yAxis": 1, "dataLabels": { "enabled": false, "style": { "textAlign": "left" } } }, { "name": "OVHcloud R2-240 Root local SSD", "verbose": "OVHcloud R2-240 Root local SSD Read", "data": [ { "x": 15, "y": 60202.6, "verbose": 60202.6 } ], "color": "rgba(72, 72, 72, 0.8)", "zIndex": 10 }, { "name": "OVHcloud R2-240 Root local SSD", "verbose": "OVHcloud R2-240 Root local SSD Write", "data": [ { "x": 15, "y": 2735.2, "verbose": 2735.2 } ], "pointPlacement": 0.1, "color": "#9e9fa3", "linkedTo": ":previous", "yAxis": 1, "dataLabels": { "enabled": false, "style": { "textAlign": "left" } } }, { "name": "VEXXHOST v3-standard-16 Local root SSD v3", "verbose": "VEXXHOST v3-standard-16 Local root SSD v3 Read", "data": [ { "x": 16, "y": 225579.2, "verbose": 225579.2 } ], "color": "rgba(101, 54, 255, 0.8)", "zIndex": 10 }, { "name": "VEXXHOST v3-standard-16 Local root SSD v3", "verbose": "VEXXHOST v3-standard-16 Local root SSD v3 Write", "data": [ { "x": 16, "y": 3965.4, "verbose": 3965.4 } ], "pointPlacement": 0.1, "color": "#9e9fa3", "linkedTo": ":previous", "yAxis": 1, "dataLabels": { "enabled": false, "style": { "textAlign": "left" } } }, { "name": "VEXXHOST v3-starter-16 Local root SSD v3", "verbose": "VEXXHOST v3-starter-16 Local root SSD v3 Read", "data": [ { "x": 17, "y": 217883.6, "verbose": 217883.6 } ], "color": "rgba(101, 54, 255, 0.8)", "zIndex": 10 }, { "name": "VEXXHOST v3-starter-16 Local root SSD v3", "verbose": "VEXXHOST v3-starter-16 Local root SSD v3 Write", "data": [ { "x": 17, "y": 5976.0, "verbose": 5976.0 } ], "pointPlacement": 0.1, "color": "#9e9fa3", "linkedTo": ":previous", "yAxis": 1, "dataLabels": { "enabled": false, "style": { "textAlign": "left" } } }, { "name": "Vultr 16CPU 128GB DEDICATEDOPTIMIZED 16CPU 128GB DEDICATEDOPTIMIZED root", "verbose": "Vultr 16CPU 128GB DEDICATEDOPTIMIZED 16CPU 128GB DEDICATEDOPTIMIZED root Read", "data": [ { "x": 18, "y": 157746.2, "verbose": 157746.2 } ], "color": "rgba(58, 177, 242, 0.8)", "zIndex": 10 }, { "name": "Vultr 16CPU 128GB DEDICATEDOPTIMIZED 16CPU 128GB DEDICATEDOPTIMIZED root", "verbose": "Vultr 16CPU 128GB DEDICATEDOPTIMIZED 16CPU 128GB DEDICATEDOPTIMIZED root Write", "data": [ { "x": 18, "y": 5976.0, "verbose": 5976.0 } ], "pointPlacement": 0.1, "color": "#9e9fa3", "linkedTo": ":previous", "yAxis": 1, "dataLabels": { "enabled": false, "style": { "textAlign": "left" } } }, { "name": "Vultr 16CPU 128GB VOC-M 800GB NVMe 16CPU 128GB VOC-M 800GB NVMe root", "verbose": "Vultr 16CPU 128GB VOC-M 800GB NVMe 16CPU 128GB VOC-M 800GB NVMe root Read", "data": [ { "x": 19, "y": 150421.0, "verbose": 150421.0 } ], "color": "rgba(58, 177, 242, 0.8)", "zIndex": 10 }, { "name": "Vultr 16CPU 128GB VOC-M 800GB NVMe 16CPU 128GB VOC-M 800GB NVMe root", "verbose": "Vultr 16CPU 128GB VOC-M 800GB NVMe 16CPU 128GB VOC-M 800GB NVMe root Write", "data": [ { "x": 19, "y": 14827.0, "verbose": 14827.0 } ], "pointPlacement": 0.1, "color": "#9e9fa3", "linkedTo": ":previous", "yAxis": 1, "dataLabels": { "enabled": false, "style": { "textAlign": "left" } } }, { "name": "Vultr 16CPU 32GB VOC-C 500GB NVMe 16CPU 32GB DEDICATEDOPTIMIZED root", "verbose": "Vultr 16CPU 32GB VOC-C 500GB NVMe 16CPU 32GB DEDICATEDOPTIMIZED root Read", "data": [ { "x": 20, "y": 171725.0, "verbose": 171725.0 } ], "color": "rgba(58, 177, 242, 0.8)", "zIndex": 10 }, { "name": "Vultr 16CPU 32GB VOC-C 500GB NVMe 16CPU 32GB DEDICATEDOPTIMIZED root", "verbose": "Vultr 16CPU 32GB VOC-C 500GB NVMe 16CPU 32GB DEDICATEDOPTIMIZED root Write", "data": [ { "x": 20, "y": 4444.2, "verbose": 4444.2 } ], "pointPlacement": 0.1, "color": "#9e9fa3", "linkedTo": ":previous", "yAxis": 1, "dataLabels": { "enabled": false, "style": { "textAlign": "left" } } }, { "name": "Vultr 16CPU 64GB VC2 1280GB NVMe 16CPU 65536MB SSD root", "verbose": "Vultr 16CPU 64GB VC2 1280GB NVMe 16CPU 65536MB SSD root Read", "data": [ { "x": 21, "y": 79614.6, "verbose": 79614.6 } ], "color": "rgba(58, 177, 242, 0.8)", "zIndex": 10 }, { "name": "Vultr 16CPU 64GB VC2 1280GB NVMe 16CPU 65536MB SSD root", "verbose": "Vultr 16CPU 64GB VC2 1280GB NVMe 16CPU 65536MB SSD root Write", "data": [ { "x": 21, "y": 9209.0, "verbose": 9209.0 } ], "pointPlacement": 0.1, "color": "#9e9fa3", "linkedTo": ":previous", "yAxis": 1, "dataLabels": { "enabled": false, "style": { "textAlign": "left" } } }, { "name": "gridscale 16cores 32GB Rocket", "verbose": "gridscale 16cores 32GB Rocket Read", "data": [ { "x": 22, "y": 100337.1, "verbose": 100337.1 } ], "color": "rgba(21, 66, 95, 0.8)", "zIndex": 10 }, { "name": "gridscale 16cores 32GB Rocket", "verbose": "gridscale 16cores 32GB Rocket Write", "data": [ { "x": 22, "y": 19310.7, "verbose": 19310.7 } ], "pointPlacement": 0.1, "color": "#9e9fa3", "linkedTo": ":previous", "yAxis": 1, "dataLabels": { "enabled": false, "style": { "textAlign": "left" } } }, { "name": "hopla.cloud b1.64 b1.64 Root SSD", "verbose": "hopla.cloud b1.64 b1.64 Root SSD Read", "data": [ { "x": 23, "y": 10026.833333333334, "verbose": 10026.833333333334 } ], "color": "rgba(11, 222, 214, 0.8)", "zIndex": 10 }, { "name": "hopla.cloud b1.64 b1.64 Root SSD", "verbose": "hopla.cloud b1.64 b1.64 Root SSD Write", "data": [ { "x": 23, "y": 5708.2, "verbose": 5708.2 } ], "pointPlacement": 0.1, "color": "#9e9fa3", "linkedTo": ":previous", "yAxis": 1, "dataLabels": { "enabled": false, "style": { "textAlign": "left" } } } ], "drilldown": {}, "tooltip": { "enabled": true, "useHTML": false, "headerFormat": "", "pointFormat": "<span style=\"color:{series.color}\">{series.name}</span>: <b>{point.y:.2f}</b><br/>", "footerFormat": "", "shared": false, "outside": false, "valueDecimals": null, "split": false }, "annotations": null }, "hc_type": "chart", "id": "140285196769040" }
  •