undocumented cost centres with -hd and -hy

Thomas Schilling nominolo at googlemail.com
Wed Mar 10 10:08:19 EST 2010

PAP stands for partial application, i.e., a function with one or more
missing arguments.  MUT_ARR_PTRS_FROZEN are mutable objects which are
not moved by the garbage collector.  They are an implementation detail
of IORefs and mutable arrays (ST(U)Array, IO(U)Array, ...).  Before
entering a suspended computation (a THUNK), GHC overwrites it with a
BLACKHOLE, to avoid space leaks and to detect cyclic dependencies.


On 10 March 2010 13:30, Soenke Hahn <shahn at cs.tu-berlin.de> wrote:
> When using the heap profiling options -hd (profiling by closure description) and
> -hy (profiling by type) there are some compiler-generated cost centres, for
> example "PAP", "MUT_ARR_PTRS_FROZEN" and "BLACKHOLE". I wasn't able to find
> documentation on them. Is there any?
> Thanks,
> Sönke
> _______________________________________________
> Glasgow-haskell-users mailing list
> Glasgow-haskell-users at haskell.org
> http://www.haskell.org/mailman/listinfo/glasgow-haskell-users

Push the envelope.  Watch it bend.

More information about the Glasgow-haskell-users mailing list