[MLton] Question on profile.fun
Matthew Fluet
fluet@cs.cornell.edu
Wed, 8 Jun 2005 09:22:31 -0400 (EDT)
> > So, there is an insane shift after flatten and possibly a minor
> > shift after contify3. I don't know if this actually lays the blame
> > squarely at the feet of Flatten.flatten (or possibly
> > Shrink.shrinkFunction).
>
> You could determine this by separating out the call to shrink from
> flatten into a separate pass and then dropping profile labels in
> between flattening and shrinking.
Here are the results of that experiment:
1.97 dropProfileR
flatten (* without shrinking *)
1.94 dropProfileFlatten
shrink
12.94 dropProfileS
> > Flatten.flatten doesn't appear to be sensitive to the presence of
> > profiling statements in the program. But, there is something
> > definitely going on there.
>
> Maybe. At least the shrinker does refer to profile annotations.
Well, the above is encouraging, at least from the point of view that it
confirms that flatten itself isn't really sensitive to the presence of
profiling annotations.