Resurrecting ticky code

Jan Stolarek jan.stolarek at p.lodz.pl
Thu Nov 6 13:35:37 UTC 2014


Mateusz,

I had a moment to take a look at your patch. Here are some hints:

> * missing calls to tickyReturnNewCon, tickyUnboxedTupleReturn and
>   tickyVectoredReturn need to be added. Unfortunately I'm not familiar with
> the code enough to find the right place to insert them.
I think that you should look at StgCmmExpr and try to figure out places that we might be 
interested in for ticky measurements. For example, I'm looking at cgIdApp and I see we're doing 
ticky profiling for SlowCall and DirectEntry but we're not doing it for ReturnIt, EnterIt and 
JumpToIt*. I suggest adding ticky profiling there. I think it's possible to figure out more 
places where it makes sense to have ticky counters.

> * magic eight needs to be replaced by a constant both Haskell and C files.
>   Preprocessor macro seems to be the simplest choice here, however I don't
> find it the cleanest way to do it.
I don't know how to define such a constant - I would have to spent some time to try to figure it 
out. Perhaps you can go to #ghc IRC channel and ask there? Usually there are some people that 
work on the RTS and might be familiar with how this is done (Edward for example).

Oh, and if you're working on a patch please assign yourself as the owner of #8308 so that no one 
else starts working on this. If you have a patch for review please submit it using Phabricator 
[1].

Janek

[1] https://ghc.haskell.org/trac/ghc/wiki/Phabricator


More information about the ghc-devs mailing list