On Sun, Aug 29, 2010 at 3:41 PM, Daniel Fischer <[email protected]>wrote:

> That is great.
> Have you any data about the speedup relative to map sizes?
> Milan Straka's benchmarks ran only on very small maps (<= 2^10 elements),
> I'd be interested in whether size plays a significant role in the effect.


I just ran an ad-hoc test to get an indication of of the performance gains
scale with the map size. I ran the lookup benchmark, which looks up all the
elements in a map, and I got a 37% improvement running with a map size of
2^22 elements. Compare this to the 42% gain I get on the same benchmark with
a map of 2^10 elements. This is just an indication as I didn't really
investigate where the time went. It's something I'd like to look into in the
future.

It'd be worthwhile to rerun all the benchmarks on a larger map on a machine
with a lot of RAM. The number of elements is simple to change in
benchmarks/Benchmarks.hs. To run the benchmark do:

$ cd benchmarks
$ ghc -DTESTING --make -O2 -fforce-recomp -i.. Benchmarks.hs
$ ./Benchmarks

and the run the benchmarks against the old vesion:

$ ghc -DTESTING --make -O2 -fforce-recomp -i../../containers-0.3.0.0
Benchmarks.hs
$ ./Benchmarks

It'll take a while if you use large maps as criterion runs each benchmark
100 times.

I recommend using GHC 6.12.3 as it performs better than e.g. 6.12.1.

-- Johan
_______________________________________________
Haskell-Cafe mailing list
[email protected]
http://www.haskell.org/mailman/listinfo/haskell-cafe

Reply via email to