Azure Files write speed consistently slower

GeorgeW-9258 1 Reputation point
2021-03-07T15:59:47.267+00:00

I'm using direct SMB 3.0 connection (no proxy/vpn in between) to Azure Files from on-prem. The read speed is OK (about 25MB/s) but the write speed is very slow (about 3-5MB/s).

I tried direct SMB 3.0 connection to the same Azure Files share from an Azure VM in the same region, then the read speed is about 130MB/s, but the write speed is slower (about 30-40MB/s).

I understand that the number in Azure VM is higher due to lower network latency. But it looks write speed is always considerably slower comparing to read speed.

If I setup a file share on my own within my network, I can get read/write both about 100MB/s, so this is not a native SMB behavior. Is there something special about Azure Files so that write speed is slower? Is there some parameters I can tweak on my side to improve that? Thanks!

-------------
Update on Mar 8 -----------------
Some update about the details.

  1. I'm trying to use SMB protocol (map network drive on Windows Explorer), not uploading from Azure Portal
  2. To eliminate potential impact from other software, I created a fresh new Azure VM (Windows 10 ver 2004) in East US datacenter and an Azure Files share in West US datacenter (to simulate the latency between my on-prem server and Azure Files). I was able to reproduce the issue, please see the pictures below:

Write speed: less than 1MB/s
75585-write.png

Read speed about 17MB/s
75622-read.png

BTW, I also tested upload from Azure Portal, the speed was slow too (less than 1MB/s). Tried AzCopy too, but it seems cannot upload to Azure Files (only to blob storage)

Azure Files
Azure Files
An Azure service that offers file shares in the cloud.
1,169 questions
0 comments No comments
{count} votes

1 answer

Sort by: Most helpful
  1. Sumarigo-MSFT 43,801 Reputation points Microsoft Employee
    2021-03-08T07:57:16.43+00:00

    @GeorgeW-9258 Welcome to Microsoft Q&A, Thank you for posting your query!

    As I understanding you trying to perform read or write operation through Azure Portal ? You are using Azure speed test tool to check the speed: https://www.azurespeed.com/Azure/Download am I correct ?

    There is no throttling on the Azure side, refer to below article. If the network and client machine can handle the traffic then we will send it.

    Here's a guide for troubleshooting high E2E latency: https://learn.microsoft.com/en-us/azure/storage/common/storage-monitoring-diagnosing-troubleshooting#metrics-show-high-AverageE2ELatency-and-low-AverageServerLatency

    Can you download PerfInsights tool, for Performance data collection Windows
    Using PerfInsights:

    • Execute PerfInsights using the Azure Files scenario: PerfInsights.exe /r azurefiles /sr 9971******9
    • Select Y to agree to share diagnostic information
    • Select Y to agree PerfInsights EULA.
    • Reproduce the performance issue or make sure that it's occurring.
    • When enough data is collected , press any key to stop diagnostic data collection.
    • Retrieve the compressed file created under the current folder with format similar to "CollectedData_YYYY-MM-DD_HH-MM-FFF.zip"

    You might see slow performance when you try to transfer files to the Azure File service.

    • If you don't have a specific minimum I/O size requirement, we recommend that you use 1 MiB as the I/O size for optimal performance.
    • If you know the final size of a file that you are extending with writes, and your software doesn't have compatibility problems when the unwritten tail on the file contains zeros, then set the file size in advance instead of making every write an extending write.

    This article lists some common problems related to Azure file shares. It provides potential causes and workarounds for when you encounter these problems.

    For testing purpose can you use Azcopy tools and check the speed and let me know the status. For transferring Files I would recommend to use AzCopy and File Storage for any transfer files(upload and download). In Azcopy throughput from a single instance will scale at least 20Gbps

    Additional information: Sometimes your proxies/VMs or whatever runs in the same datacenter, network requests does not leave the local network and the speed then depends on the infrastructure. (routers, firewalls, cables, etc). I'm sure they won't limit speed between their own infrastructure so services hosted on the same network works at full speed.

    There is a known issue when mounting an Azure file share on Windows Server 2012 R2 and Windows 8.1. The issue was patched in the April 2014 cumulative update for Windows 8.1 and Windows Server 2012 R2. For optimum performance, ensure that all instances of Windows Server 2012 R2 and Windows 8.1 have this patch applied. (You should always receive Windows patches through Windows Update.) For more information, Slow performance when you access Azure files storage from Windows 8.1 or Server 2012 R2

    Hope this helps!

    Kindly let us know if the above helps or you need further assistance on this issue.

    ----------------------------------------------------------------------------------------------------------------------------------------------

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

    1 person found this answer helpful.