We recently compared the performance of the Exchange 2010 Client Access role supporting Outlook Anywhere users on both Windows 2008 SP2 and Windows 2008 R2, and found that the improvements the Windows Team has made in R2 more than doubles the number of concurrent users a given server can support, assuming CPU is the limiting resource.
Our Client Access Server was an 8-core Xeon server (2L5335 Xeon 4-core processors @2 GHz, a 2007 chip design) running on Windows 2008 R2 with 16 GB of RAM. It was supported by: two servers running the Mailbox role, with 16 databases per server; a Hub Transport server; and an Active Directory server.
Users were simulated from 10 client machines, running Exchange Load Generator 2010, using the Outlook 2007 Cached module and the OutlookAnywhere_100 profile (formerly known as the 'Heavy Profile' - 20 sends and 80 receives per day).
We found the CPU consumed per user (MHz/user) increased linearly on both Windows 2008 SP2 and Windows 2008 R2. However, as shown on the graph below, the slope is 10 times smaller on Windows 2008 R2. The cost of the Exchange processes, dominated by the Microsoft.Exchange.RPCClientAccess.Service process, was independent of operating system.
The Windows RPC/HTTP team has made many performance fixes in R2, so the dramatic improvement compared to Windows 2008 SP2 is expected. Since the improvements are in the operating system, we expect the same improvement with Exchange 2007 SP3.
--> The rest is on :