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