On Mon, 2006-12-04 at 14:47 -0900, Jeff Spaleta wrote: > On 12/4/06, Adam Jackson <ajackson@xxxxxxxxxx> wrote: > > So you've found that some use profile makes X use all the CPU. Now you > > need to find out _what_ in X is taking all the time. You need to either > > use a tool like oprofile or sysprof to extract that information, or you > > need to instrument the X server to report on what requests and clients > > are using most of its time. The latter requires code changes to a > > project that many people find intimidating and/or unpleasant to work > > with, which is why I suggested using oprofile in the first place. > > is xrestop at all useful in this situation? Not at the moment. xrestop right now is only useful for showing you client memory allocations (see /usr/include/X11/extensions/XRes*.h for the gory details). It would be pretty straightforward to hook up some basic per-client accounting in the scheduler, although it's slightly tricky to do that while not blowing away your dispatch performance, gettimeofday() is equivalent to about 10 (no-op) client requests. There's different metrics you want to measure there - number of requests, number of scheduler punishes, number of sleeps, total request time - and it's not immediately clear to me which ones would be worth doing and which would just be overhead. Would definitely be a pleasant thing to have though. - ajax -- fedora-devel-list mailing list fedora-devel-list@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/fedora-devel-list