Huge performance differences between server 2003 & 2008, multi-processor
Greetings,I have two identical Dell blades (Specifically, they are E5450, dual 3.0GHz Quad-core Xeon processors -- so 8 cores total in each server), 4.0GB RAM.One of these was purchased from Dell just before Server 2008 was available, and thus it has Server 2003 R2 Standard Edition Service Pack 2.The other Dell blade was purchased with Server 2008 Standard, Service Pack 1.So physically, they are identical aside from the OS. I have the same application which is a very data-intensive (it handles incoming message feeds from futures trading exchanges, tens of thousands per second). The data comes in (via multicast UDP) on different "channels" -- and each channel subscribes to a different IP address and gets its own processing thread in my application. For every message that comes in, I do some processing on the message, and sometimes I forward the processed message on to listeners, etc. That's somewhat irrelevant. What I'm noticing, however, is that on the Server 2003 machine, messages are queueing up FAR more than they are on the 2008 machine -- I look at queues on a per-channel basiss. It's almost uncanny how much more so -- on the 2008 machine, my message queues (that is, messages that are waiting to be processed) never really go above 100 in size -- this is great. However, on the Server 2003 machine, they can sometimes get up well over 25,000 (and I'm running them in parallel, meaning I'm not testing the '03 machine during heavy message periods and the '08 during slow -- it's the same test period). It's like if one channel gets a heavy peak in data, it affects all the other channels, and then it's a snowball effect where each queue starts growing exponentially until a big lull in traffic, then they can all catch up. It's as if the server 2008 machine is much better keeping the individual threads on an even keel.What I'm wondering is: is Server '08 just that much better at utilizing multiple processors? Or are the speed gains I'm seeing a result of more efficient *networking* processes on the '08 side? Thanks in advance,Rick
October 3rd, 2008 4:21pm

Hi!By your post i got curious about 2008 Network and what i googled it really seems that new TCP/IP stack got some improvements.Features of the Next Generation TCP/IP StackNew mechanisms for protocol stack offload The Next Generation TCP/IP stack can offload the processing of TCP and other types of traffic to Network Driver Interface Specification (NDIS) miniport drivers and network interface adapters. Offloading TCP and other protocol processing can improve performance for high-bandwidth networks or high-volume servers. New support for scaling on multi-processor computers The architecture of NDIS 5.1 and earlier versions limits receive protocol processing to a single processor. This limitation can inhibit scaling to large volumes of network traffic on a multi-processor computer. Receive-side scaling (RSS) resolves this issue by allowing the network load from a network adapter to be balanced across multiple processors. For more information, see Scalable Networking with RSS. Automatic configuration of stack settings based on different network environments The Next-Generation TCP/IP stack automatically senses the network environment and adjusts key performance settings, such as the TCP receive window. Improved stack auto-tuning and configuration reduces the need for manual configuration of TCP/IP settings. http://technet.microsoft.com/fi-fi/library/bb878108(en-us).aspx Next Generation TCP/IP Stackhttp://technet.microsoft.com/en-us/network/bb545475.aspx Henry Eklf :: Just one random IT-guy more.
Free Windows Admin Tool Kit Click here and download it now
October 3rd, 2008 4:33pm

This topic is archived. No further replies will be accepted.

Other recent topics Other recent topics