Subject: Re: Slow X with Applix - how to profile?
To: Jukka Marin <jmarin@pyy.jmp.fi>
From: Chuck Cranor <chuck@maria.wustl.edu>
List: port-i386
Date: 02/08/1998 10:32:09
>Well, output format of "show map" looked different on my system with the
>old VM system, but I saw values "ref = 1, nentries = 157, version = 678601"
>for the X server.  If 157 is the number I was looking for ;) then it's
>higher than 41, but the list is only 4 times as big as yours, so I don't
>think it could cause this problem..?

yes, 157 is the number you are looking for.

so the process' vm_map has a sorted linked list of 157 vm_map_entrys
(with a one item cache/hint to take advantage of locality of reference).

when is this list walked?
 [1] during a page fault
 [2] during vm related system calls that change your process' address
     space (mmap/unmap/mprotect/minherit/msync/madvise/mlock/break, and
     prob. sysctl because it is doing a vslock/vsunlock under the hood).


so, it seems to me that in order for this linked list to be the source 
of your 20-30 second slow down your X process would either having to be 
constantly generating page faults (maybe by using up RAM and causing 
the pagedaemon to run constantly thus causing lots of disk action?) or 
constantly performing VM system calls (which you should be able to see 
with ktrace?).

chuck