
On 25/03/14 16:18, kyra wrote:
On 3/25/2014 19:11, Mateusz Kowalczyk wrote:
That commit is not in 2.14.1. Do you have any benchmarks to show the speedup? If the commit does some significant speedup, I'm not against backporting it into Haddock released with 7.8.2 (and there is at least 1 other fix I want to get into 7.8.2) but we pretty much closed the 2.14.1, it's up on Hackage and everything and that's what's planned to ship with 7.8.1.
Hmm, now, when I'm trying to reproduce things I don't see haddock producing any assembly output let alone split it when using 7.8rc2 haddock.
It seemed to me some time ago haddock became slow when processing a package built with --enable-split-objs and I've decided to look into things and discovered haddock wants .hi interface files and produces assembly output to produce these interface files.
I was extremely surprised, rechecked things several times and saw the same picture.
Now I can't reproduce this at all.
If haddock never produced .hi interface files and/or assembly output then that was some mental aberration and the whole story can be dropped.
Regards, Kyra
_______________________________________________ ghc-devs mailing list ghc-devs@haskell.org http://www.haskell.org/mailman/listinfo/ghc-devs
As far as I know (and this is mostly guessing), Haddock will ask GHC to produce .hi files when they do not already exist. I think you might have some luck if you simply try cabal configure && cabal haddock but I don't know. I took the patch because I saw no harm in it and all tests were passing but I do admit that I did not check the performance gain (we don't have benchmarks, perhaps we should hook some up) or loss. I think GHC has some Haddock perf tests but I did not check the numbers and I don't think it would even fall under that. If you can come up with something then let me know. If you can't, I think we'll keep the patch just in case unless someone can show it breaks something. The only instances of Haddock becoming really slow that I can think of is some rather old ticket (#101 on Haddock Trac) in presence of Template Haskell but I have closed it a while ago due to lack of information to go on and inability to replicate without the reporter's help. Perhaps this was your use case? -- Mateusz K.