Performance Impact of Windows Offline Files
A little known fact about the Windows Offline Files functionality is it slows down network operations considerably. Here is how and why.
The following tests were performed with a set of 1,114 files of a total size of 408 MB. In the copy test the files were copied from a Windows 7 client machine to a file server over a 100 MBit LAN connection. In the delete test the files were deleted on the file server. No antivirus or other security products were running on either side. Each test was run twice, the table lists the average.
|Target configuration||File copy||File delete|
|Target file share not available offline||6.6 MB/s||225 files/s|
|Target file share available offline||4.6 MB/s||90 files/s|
|Impact of offline files||30%||60%|
The tests clearly show that Offline Files in online mode reduce the performance of network operations by as much as 60%. The amount of performance degradation depends on the type of network operation. It differs between copy and delete operations, for example.
The reasons for the degradation lie in the architecture of Offline Files. Every IO request passes several filter drivers: CSC (Offline Files), DFS, RdpRdr, LanmanRedirector, Webdav. The Offline Files filter driver is first. It examines whether the IO affects its cache. In the best situation – a read request of a file present and up to date in the cache – the IO request can be satisfied without every reaching the network. In another situation – a write request – CSC clones the write and sends it both to its local cache and to the network. As the tests show the overhead involved with this cloning process can be significant.
This analysis has been confirmed by Microsoft support. In other words: this is by design.
See also my other articles about offline files.
Wow an eye opener. Just for comparison purposes, it will be interesting to find out how much impact there was in Windows Server 2003/XP vs Vista//7/8. :) Also, I guess there is further performance degradation if multiple users enable offline files on a single share?
Great article. xpclient is right, this would be great if you could compare these two