[Agda] Warning: hashable-1.2.0.x has serious performance bugs
Andreas Abel
andreas.abel at ifi.lmu.de
Fri Jul 12 20:16:56 CEST 2013
Hi Martin,
I think that something like the following should work (assuming the
darcs version 2.3.3 of Agda, should be similar for 2.3.2 or 2.3.2.1):
ghc-pkg unregister Agda-2.3.3
ghc-pkg unregister unordered-containers
ghc-pkg unregister hashtables
ghc-pkg unregister hashable
Some of these steps may fail because there are other packages depending
on hashable/hashtable/unordered-containers. In this case, either use
--force
or/and also unregister and then reinstall the broken packages.
Use
ghc-pkg list
to ensure there are no hashable-1.2.x.y installations left.
cabal install hashable-1.1.2.5
cabal install hashtables
cabal install unordered-containers
In the Agda directory
cabal clean
cabal configure -v
Check that no harmful version of hashable is used indeed. Finally
cabal install
Now
make library-test
should run in a couple of minutes (4 on my medium-old laptop).
You can use ghc-pkg list at any time to check the status of your package
collection.
Hope this helps,
Andreas
On 12.07.2013 19:09, Martin Escardo wrote:
> This explains a question I asked privately to you before, where I
> reported that Agda in a high-end desktop made this year ran at the same
> speed as in a low-end netbook made in 2008.
I just came about the problem yesterday, and it took my whole day to
find the source of evil and expell it. Sorry for being clueless before,
I used to trust people to only upload extensively tested libraries onto
hackage, but now I learned the better.
> Question: can you be more precise regarding what we have to do to avoid
> this problem? (This is not urgent: I made the desktop run 9x faster by
> copying the .cabal tree from the netbook to the desktop, as I told you.)
>
> Thanks,
> Martin
>
> On 12/07/13 16:52, Andreas Abel wrote:
>> When you compile Agda, make sure it uses hashable-1.1.2.x and not the
>> newer 1.2.0.x version (which cabal automatically pulls if the choice is
>> not constrained).
>>
>> With hashable-1.2.0.x, Agda is 10x slower!
>>
>> The newest darcs version asks for hashable < 1.2, so
>>
>> cabal install
>>
>> might not work out of the box, you might have to clean out newer
>> versions of hashable and reinstall packages that used hashable-1.2.0.x,
>> like the hashtables package.
>>
>> cabal configure -v
>>
>> should show you which version of the packages are picked for compilation.
>>
>> Cheers,
>> Andreas
>>
>
--
Andreas Abel <>< Du bist der geliebte Mensch.
Theoretical Computer Science, University of Munich
Oettingenstr. 67, D-80538 Munich, GERMANY
andreas.abel at ifi.lmu.de
http://www2.tcs.ifi.lmu.de/~abel/
More information about the Agda
mailing list