In a previous post, I showed you how to implement the new Azure Ultra Disks. Today, I want to show you how fast they really are by running performance tests and comparing them with the other disks available in Azure.
Test Environment
VM size: Standard D2s v3 (2 vcpus, 8 GiB memory)
Location: North Europe (Zone 3)
Used tool: DiskSpd
Disks Sizes
Ultra Disk: 32 GB / 9200 IOPS / 2000 MBps
Premium SSD: P4
Standard SSD: E4
Standard HDD: S4
Azure disks performance
I will perform two tests on each type of hard disk, using the Diskspd tool, Diskspd is a command-line utility and, as such, has a long list of available parameters. If you want to know more about the parameters used in the following tests, check out this link.
Large area random concurrent reads of 4KB blocks
The explanation of the values and parameters used for this test are the following:
Parameter | Description |
-c2G | Create files of the specified size. |
-b4K | Block size in bytes or KB, MB, or GB. |
-r | Random I/O. |
-o32 | The number of outstanding I/O requests per-target per-thread. |
-W60 | Warmup time in seconds. |
-d60 | Duration of measurement period in seconds |
-Sh | Disable both software caching and hardware write caching. |
testfile.dat | The target file used for testing. |
1 2 3 | ./diskspd -c2G -b4K -F8 -r -o32 -W60 -d60 -Sh testfile.dat |
Ultra Disk
Premium SSD
Standard SSD
Standard HDD
Small area concurrent writes of 4KB blocks
The explanation of the values and parameters used for this test are the following:
Parameter | Description |
-C100b | Create files of the specified size. |
-w100 | Percentage of write requests to issue. |
-b4K | Block size in bytes or KB, MB, or GB. |
-o32 | The number of outstanding I/O requests per-target per-thread. |
-F8 | The total number of threads. |
-T1b | Stride size between I/O operations performed on the same target by different threads in bytes, KB, MB or GB. |
-s8b | Sequential stride size, offset between subsequent I/O operations in bytes, KB, MB, or GB. |
-W60 | Warmup time in seconds. |
-d60 | Duration of measurement period in seconds |
-Sh | Disable both software caching and hardware write caching. |
testfile.dat | The target file used for testing. |
1 2 3 | ./diskspd -c100b -w100 -b4K -o32 -F8 -T1b -s8b -W60 -d60 -Sh testfile.dat |
Ultra Disk
Premium SSD
Standard SSD
Standard HDD
As you can see the difference in performance is notorious. I hope you find this information interesting and see you in the next post.
If you want to know more about DiskSpd tool, check out this link: https://github.com/Microsoft/diskspd/wiki/Command-line-and-parameters