FW: Building libraries with ticky-ticky
simonpj at microsoft.com
Fri Aug 1 11:55:25 EDT 2008
Did you make any progress with this? Or are you stuck?
It used to be the case that you had to compile *all* code with -ticky-ticky. But now it's a per-module flag; we just don't accumulate counts for non-ticky modules. I often use this when doing perf-debugging of a single module.
So I think if you just add -ticky-ticky to GhcLibHcOpts in build.mk, you'll get the libraries built with ticky.
Adding a ticky-ticky guidance page to the Wiki would be a fine thing, if you make progress.
From: glasgow-haskell-users-bounces at haskell.org [mailto:glasgow-haskell-users-bounces at haskell.org] On Behalf Of Andrew Hunter
Sent: 19 July 2008 01:56
To: glasgow-haskell-users at haskell.org
Subject: Building libraries with ticky-ticky
I have some code I want to use ticky-ticky profiling on (if it
matters, I want some of the data ticky-ticky collects about frequency
of updates and related matters.) However, I'm specifically interested
in the code running with some modificiations I've made to the RTS, so
I need to build GHC with ticky-ticky.
That in itself isn't hard--the documentation said to just run "make
way=t" in rts/, which seemed to work; but the documentation also said
that to get meaningful numbers, I should make sure to build the
libraries with ticky-ticky (which makes sense--I'm interested in the
same data whether or not the updates happen in a function from List or
one I wrote, &c.)
The documentation does *not*, however, say (anywhere I can find) how
to do this! My natural guess was to go into mk/build.mk, and add
-ticky to GhcLibHcOpts, but that didn't work (regardless of whether I
had previously built a ticky rts, this produced a multitude of linker
errors.) I also tried, on a lark, adding "t" to GhcLibWays, and this
didn't die, but I'm unclear if it...did anything at all, really. I
see no way to really tell one way or another.
So, any help or advice on how to tell the GHC build system to build a
set of libraries with ticky-ticky profiling enabled would be greatly
appreciated. (FWIW, I'm not distributing anything, so it'd be more
than adequate for stuff to be broken for non ticky use, I just need to
build some test executables and be sure they're logging the right
Glasgow-haskell-users mailing list
Glasgow-haskell-users at haskell.org
More information about the Cvs-ghc