We have an application that uses DBF files - users run the application on their own machines and access the data on the server via a share. This application is installed on thousands of sites, with all combinations of Windows 2000/XP and Windows Server from 2000 up to 2008.
Some users (on multiple different sites) with Windows Server 2008 are now starting to get Windows 7 workstations and are reporting that some operations now take many times longer to complete with this configuration.
There's a known issue with SMB2 whereby it will corrupt the index files associated with DBFs, as well as MS Access tables and other things that utilise what could be described as legacy approaches to locking. So we generally force things back to SMB1.
Aside from that is there anything else at an OS / network transport level that would hammer performance in this scenario ?
In windows 7 there is an option to run application in compatibility mode. Right click on the executable and navigate to COMPATIBILITY tab.
To answer my own question:
Set Interrupt Moderation to Disabled on the network card advanced settings. Result – Major speed improvement, now up to what I would expect from a 100mbps LAN.
Interrupt Moderation is a feature intended to improve CPU performance by limiting the frequency at which the network stack interrupts the CPU to send network packets. In this case it’s obviously having the opposite effect - we want them sent and received right away.
This setting is present on a lot of current network cards apparently, including Realtek, Intel, Broadcom etc. although it might be driver dependent, ie. The stock HP or Dell driver might not have it but replacing that with the vendor supplied driver might make it available.