I'm looking into the performance of a simple, single-threaded, TCP server on a 
T1000.
According to mpstat, the strand running the server is about 50% idle. However, 
performance
counters suggest that it is executing about 230 million instructions per 
second, which,
from my experience thus far, is pretty much the limit of a single-threaded 
application.
Roughly the same numbers are reported for the strand handling the interrupts 
(the two are
on different cores, so there is no competition for shared resources). The NIC 
is reading
at 700Mbps, so the network is not the bottleneck.

I'm having a hard time putting all of this information together, as there is no 
clear
bottleneck. Also, I think there is a more general issue here: how can one 
interpret
per-strand mpstat numbers, as the resources available to a strand change 
dynamically with
the load on a core?

--Elad

_______________________________________________
perf-discuss mailing list
perf-discuss@opensolaris.org

Reply via email to