[Haskell-beginners] reproducing HashTable benchmark

Daniel Fischer daniel.is.fischer at web.de
Sun Oct 10 08:10:55 EDT 2010


On Sunday 10 October 2010 13:01:59, Tom Doris wrote:
> I've been investigating the performance of some word frequency counting
> code I wrote, and I came across this stackoverflow thread
> http://stackoverflow.com/questions/3058529/curious-about-the-hashtable-p
>roblemwhere Dons shows simple benchmarks for HashTable and IntMap, but I
> can't reproduce the "after the fix" performance of the HashTable code, I
> am very confused as to what version of ghc actually has the fix.
>
> In the post Don writes "With GHC 6.10.2, before the fix, inserting 10M
> ints:" and then "With GHC 6.13, after the fix:", is this a typo,
> shouldn't it read 6.10.3? Since there is no 6.13 version of ghc yet?

And there never will be. GHC's versioning scheme for releases is

series.even-branch-number.patchlevel

Odd numbers in second place indicate the development branch (aka HEAD).

So 6.13 was the development branch after 6.12 was released. Originally, a 
6.14 release was planned, but there have been so significant changes that 
the next release (due in a few weeks, probably end of October) will be the 
first of the 7 series (and HEAD is now 7.1, no longer 6.13).

> If it should be 6.10.3, and I'm running v 6.12.1, why does the HashTable
> code in Don's post take 22 seconds to run on my machine (compiled ghc
> --make -O2) and the IntMap version takes only 5.8s? How can one find out
> what release the fix for ticket #650 was released into? I've tried the
> release notes but I can't seem to spot it, and google doesn't either.
> The ticket has "Milestone: 6.12.2" but that is struck-through, though
> the comments would suggest this made it into r 6.12.2, I can't spot
> anything in the release notes for that version either.

Not sure what goes in the release notes, nor whether the fix was in 6.12.2.
But the patch was merged nine months ago, it should be in 6.12.2 (but if 
you upgrade within the 6.12 series, choose 6.12.3, there were some bugs in 
6.12.2 iirc).
However, if it's not pressing, consider waiting for the release of GHC 7.

>
> Can someone help clarify which version the fix will be/is in and how one
> should figure this out in general for other issues?

In general, ask or test. But if you found a ticket for the issue, if it's 
closed with a merge, any release later than a few eeeks after the merge 
should contain the fix (unless it's explicitly stated that the patch will 
not go to the stable branch).

>
> Thanks
> Tom



More information about the Beginners mailing list