Best ways to analyze application performance?

Kirby C. Bohling kbohling at birddog.com
Mon Jul 18 19:36:24 PDT 2005


On Mon, Jul 18, 2005 at 09:55:48PM -0400, Alan Coopersmith wrote:
> Matthew Dempsky wrote:
> >On Mon, 2005-07-18 at 11:05 +0200, Clemens Eisserer wrote:
> >
> >>* How long operations take on server-side
> >
> >
> >Would a proxy server that simply relayed client requests to a real
> >server and timed how long the responses took suffice for this?  Would it
> >be something useful for others and simple enough for a newcomer to work
> >on?
> 
> Sounds like xscope or a simple modification thereof.

I don't know anything about X really... and certainly not xscope.
However, I'll learn something useful if someone points out how
dreadfully wrong I am.

Wouldn't a proxy add 2 extra context switches per message over the
IPC?  One on the request from the client, and one on the response
from the server (assuming the message needs a response).  It could
introduce latency that's not present during the non-testing usage.

Hmmm, possibly strace (for Linux), or truss under Solaris would be
less likely to introduce latency.  Assuming you could decode the
read/write calls in X messages.  Or something that can do "pcap" for
UNIX sockets.  Then a library to decode the conversation.  If they
are on remote machines, presumable, ethereal would do the trick for
the "pcap" portion.

There'd still be extra overhead for all of the system calls using
strace or truss, but you could at least avoid the extra context
switching of xscope.  I guess if X isn't terribly "chatty" or the
processing time per message is significantly larger then the context
switch time, that latency wouldn't make a difference.  Just
something I was pondering when I read the original message.
 
    Thanks,
        Kirby




More information about the xorg mailing list