IRQ latency and context switching on mvme5500 (was Re: RTEMS mvme5500 bsp)

gregory.menke at gsfc.nasa.gov gregory.menke at gsfc.nasa.gov
Thu Jul 28 16:03:04 UTC 2005


Karel Gardas writes:
 > 
 > Kate,
 > 
 > your experiments looks nice and in favour of RTEMS, but do you have any 
 > numbers comparing latencies between receiving ethernet packet and reading 
 > data from the socket in an application? Or perhaps simple latency 
 > meassurements between two RTEMS and two vxWorks BSPs connected by ethernet 
 > with as simple as possible echo service should be fine too and giving 
 > clear picture.
 > 
 > Thanks,
 > Karel
 > 
 > On Wed, 27 Jul 2005, Kate Feng wrote:

We did some packet latench benchmarking on a 233mhz MCP750 w/ RTEMS
4.6.2, measuring transit time of UDP packets between userspace
send/receive and the ethernet driver in 2 cases, one where the stack
is essentially idle and the second with a good deal of ambient network
traffic.  Our data was accumulated and graphed by gnuplot directly so
its not feasible to put it here, but I can summarize;

network task, priority 1
daemon rx & tx tasks, priority 1

user tasks are all various lower priorities.  All tasks are strictly
priority scheduled, no timeslicing.

all latency figures are in microseconds.  Durations are measured by a
logic analyzer recording the timing of PCI write cycles to memory that
flag when a packet under measurement is processed.

20,000 packets were measured in each test


Nominally idle case;

tasks are idle, several wake up once a second or so and
sleep right away

one task is receiving UDP data at approx 120kbytes/sec (rx measure)
one task is transmitting 4 UDP packets every 4 seconds or so (tx measure)

RX latency;  min 28.53, max 107.74, avg 44.5,   stddev 2.3
TX latency;  min 36.34, max 689.72, avg 102.17, stddev 124.78



High network load case;

most tasks are idle

one task is transmitting bulk UDP data at approx 4 megabytes/sec 
    (this datastream is not measured, however its overhead contributes
    to the latency seen by the measured traffic) 

one task is receiving UDP data at approx 120kbytes/sec ( rx measure) 
one task is transmitting 4 UDP packets every 4 seconds or so (tx measure)

RX latency;  min 30.42, max 289.67, avg 48.97,  stddev 8.06
TX latency;  min 37.18, max 685.52, avg 104.39, stddev 129.91



Nominally idle case (with L2 turned off);

RX latency;  min 802.79, max 1617.88, avg 819.63, stddev 32.63
TX latency;  min 372.62, max 839.87,  avg 500.37, stddev 92.28



Gregm




More information about the users mailing list