logo       

RE: Wildly inaccurate profiling results: msg#00049

lang.haskell.glasgow.bugs

Subject: RE: Wildly inaccurate profiling results


> I have a program, compiled with cost-center profiling on,
> that takes about 5
> minutes, 30 seconds to run (measured with a stopwatch), but
> the resulting .prof
> file reports the total time as 34 seconds. I know that this
> number doesn't
> include overhead due to profiling, but surely the overhead
> can't be that much!
> (Also, the program runs about as long when run without -P.)
> I'm using a copy
> of GHC built from sources checked out around July 1. I'd
> include the program,
> but it's very large and I'm not sure how to minimize it and
> preserve the same
> behavior. Any ideas as to what the problem might be?

I think the profiler only measures CPU time, so if the program is
waiting for I/O or sleeping a lot of the time, that won't be included in
the profile.

Also, the overhead due to heap rofiling can sometimes be a lot, because
it includes the time to scan the heap and collect the census data.
Retainer profiling (+RTS -hr) is also especially expensive. You should
see the profiling overheads drop considerably when not doing heap
profiling, though.

Cheers,
Simon


<Prev in Thread] Current Thread [Next in Thread>
Google Custom Search

News | FAQ | advertise