Slow premium SSD disk performance

Jeffrey-2116 20 Reputation points
2024-04-05T10:09:20.31+00:00

I have a basic VM setup with Standard_D2s_v3 and an attached disk P30 performance tier of type Premium SSD LRS that is being used for a database server running Firebird 3.0.11. The VM is running in Windows Azure Server. The region is EUW and it has default network configuration. The disk is very slow in reading and writing data (10-20 MB/s), with high disk latency of around 500ms during testing. Temporary attached disks resulted in better performance (A lot lower latency, around 60-70MB/s <-- This is what I want). I used the Firebird performance test at https://ib-aid.com/en/simple-insert-update-delete-test-for-firebird/#how_to_run_firebird_performance_test for testing, and my VM is 10-20 times slower than our own on premise database server from 2011. Is the high disk latency the reason? How can I solve this?

I tried various things, like putting the VM inside a proximity zone or using a storage-optimized size instead. But they do not help.

Azure Disk Storage
Azure Disk Storage
A high-performance, durable block storage designed to be used with Azure Virtual Machines and Azure VMware Solution.
572 questions
Windows Hardware Performance
Windows Hardware Performance
Windows: A family of Microsoft operating systems that run across personal computers, tablets, laptops, phones, internet of things devices, self-contained mixed reality headsets, large collaboration screens, and other devices.Hardware Performance: Delivering / providing hardware or hardware systems or adjusting / adapting hardware or hardware systems.
1,544 questions
0 comments No comments
{count} votes

1 answer

Sort by: Most helpful
  1. Nehruji R 1,976 Reputation points Microsoft Vendor
    2024-04-08T09:40:43.8666667+00:00

    Hello Jeffrey-2116,

    Greetings! Welcome to Microsoft Q&A Platform.

    I understand that you’re facing performance issues with your Azure VM and the attached Premium SSD disk. There are some possible ways to increase the performance.

    • First thing you need to determine is if your workload is being throughput bound or IO bound. You can determine this by utilizing the Disk performance metrics in Azure Monitor. Once you have figured this out you can increase the disk performance and VM size to meet your needs. It looks like you are already aware, but please keep in mind the performance limitations of the VM as well as the disks attached.
    • Azure offers the ability to boost disk storage IOPS and MB/s performance, this is referred to as bursting for both virtual machines (VM) and disks. You can effectively use VM and disk bursting to achieve better bursting performance on both your VMs and disk. refer - https://learn.microsoft.com/en-us/azure/virtual-machines/disk-bursting
    • The performance is being limited because you may hit the throughput limit of your VM size, the Max uncached disk throughput is 96MBps. This documentation walks you through the limits and how VM disk performance works. To resolve this issue, you can try to enable host caching, if that does not resolve your performance issue you will need to choose a VM with larger disk throughput. refer - https://learn.microsoft.com/en-us/azure/virtual-machines/premium-storage-performance,https://learn.microsoft.com/en-us/azure/virtual-machines/disks-performance for more detailed guidance.
    • Try Performance Plus for azure disk storage is a new feature that enhances the iops and throughput performance of Standard HDD, Standard SSD, and Premium SSD disks that are sized 1TB or higher. It is offered for free and is available to use through deployments on Azure CLI and PowerShell. The advantage of this feature is that it improves the experience for workloads that require high iops and throughput, such as database and transactional workloads. By enabling Performance Plus, the iops and throughput limits for an eligible disk increase to the higher maximum limits. For ex, a premium ssd disk of size 1TB can have up to 20,000 IOPS and 900 mbps of throughput with Performance Plus, compared to 5,000 IOPS and 200 Mbps without Performance Plus.   Additional provisioned IOPS and throughput are optional features that allow you to increase the performance of Premium SSD disks beyond the default limits, based on your disk size. You can specify the exact iops and throughput values that you need for your disk, up to 160k iops and 2k mbps per disk. You pay for the provisioned perf on a per disk basis. The advantage of additional provisioned iops and throughput is that they provide more flexibility and control over the performance of your Premium SSD disks, especially for workloads that have consistent and predictable performance requirements. You can optimize the performance and cost of your disks by choosing the exact values that match your needs.
      refer - https://learn.microsoft.com/en-us/azure/virtual-machines/disks-enable-performance?tabs=azure-cli

    Please let us know if you have any further queries. I’m happy to assist you further.

    Please do not forget to "Accept the answer” and “up-vote” wherever the information provided helps you, this can be beneficial to other community members.