Re: Winsock calls overhead

Tech-Archive recommends: Repair Windows Errors & Optimize Windows Performance



Please don't separately post the same question to multiple groups! If you
feel like two groups should get the question, list both groups in the To
field of a single message. I've replied elsewhere...

Paul T.

"ravishk" <ravishk@xxxxxxxxx> wrote in message
news:1190543635.749934.307780@xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
I am using a simple application that creates a scoket and sends UDP
data on a
WinCE 6.0 BSP on 250 MHz ARM. What was observed that for different
data
rates, the measured CPU load turned out to be pretty much high as
mentioned
in the table below:

Desired | CPU load | CPU load
Throughput | (Stack Loopback) | (Send to a particular IP Address)
(Kbps) | (127.0.0.1) |
---------------------------------------------------------
10 | 10 % | 7 %
100 | 11 % | 7 %
400 | 18 % | 14 %
800 | 27 % | 23 %
1000 | 31 % | 27 %

I doubted the NDIS miniport implementation for taking so much of a CPU
load
in a send call but the Stack level loopback using IP address 127.0.0.1
(when
my NDIS Miniport send functions are not called) take much more CPU
load. In
there something wrong in the way I am sending and receiving packets in
my
application or the miniport NDIS. We are targetting an applciaiton
that sends
A/V streams at constant bitrate (varying from 100Kbps - 1Mbps) UDP
packets.
We are using blocking socket calls and our concern is the CPU loading.
The
Winsock stress tests also showed a 100 % CPU load all the time.

Will Overlapped IO, non blocking sockets will aid in lowering the CPU
utilization?
Why should a sendto() call for 127.0.0.1 should take so much of a CPU
load.

Thanks.



.



Relevant Pages

  • Re: What do you use?
    ... >> RAID server, though. ... Swap: 4081M Total, 240K Used, 4081M Free ... The CPU usage is lower on the ICP system (remember that it has a slower CPU ... I noticed a drastic reduction of CPU load on the 3ware system when we went ...
    (freebsd-questions)
  • Re: [PATCH] limit CPU time spent in kipmid (PREVIOUS WAS BROKEN)
    ... The attached patch should work better. ... It is important to distinguish cases with and without CPU load. ... To offer this tunable to make a balance between max. CPU load of kipmid and performance appears to be worthwhile for many users. ...
    (Linux-Kernel)
  • Re: Winsock Calls Overhead
    ... There's no such thing as overlapped I/O in Windows CE, ... My guess would be that non-blocking sockets will increase the CPU ... Sending to the local socket should take more CPU. ... the measured CPU load turned out to be pretty much high as ...
    (microsoft.public.windowsce.app.development)
  • Re: [PATCH] limit CPU time spent in kipmid (PREVIOUS WAS BROKEN)
    ... For a message that requires almost no CPU from the management controller, it takes around 5ms per message round-trip and uses about 10% of a CPU. ... With your patch, this puts the driver to sleep for a tick when this happens. ... To offer this tunable to make a balance between max. CPU load of kipmid and performance appears to be worthwhile for many users. ...
    (Linux-Kernel)
  • Winsock calls overhead
    ... the measured CPU load turned out to be pretty much high as ... I doubted the NDIS miniport implementation for taking so much of a CPU ... We are using blocking socket calls and our concern is the CPU loading. ...
    (microsoft.public.windowsce.platbuilder)