Heap Profiling Question

Simon Marlow simonmarhaskell at gmail.com
Mon Jul 24 11:53:40 EDT 2006


Rich Fought wrote:

>>
>> IIRC the timestamps ignore time spent in GC and time spent sampling 
>> the heap, so they measure runtime of the program only.
> 
> So if I have a server that is idle most of the time waiting for 
> requests, the timestamps recorded in the heap profile will not be "real 
> time" but program execution time?

That's right - the general idea is to make the profile insensitive to other 
loading on the machine.  I can see there might be an argument for making this 
tweakable, though.

>> Still, it does look a little strange.  Maybe you could send us the 
>> output of +RTS -S?
> 
>    Alloc    Collect    Live    GC    GC     TOT     TOT  Page Flts
>    bytes     bytes     bytes  user  elap    user    elap
>   264424    262144     20592  0.00  0.00    0.03    0.01    0    0  
> (Gen:  1)
>   311540    270336     63732  0.00  0.00    3.84    5.25    0    0  
> (Gen:  0)

So between these first two GCs, your program spent nearly 4 seconds doing 
something, but only allocated 300k.  What was it doing?

Cheers,
	Simon


More information about the Glasgow-haskell-users mailing list