patch applied (packages/containers): Performance improvements to
Data.Map
Simon Marlow
marlowsd at gmail.com
Fri Sep 3 10:04:01 EDT 2010
Sun Aug 29 05:02:45 PDT 2010 Don Stewart <dons at galois.com>
* Performance improvements to Data.Map
Applied several standard transformations to improve the performance of
code:
* Worker/wrapper of all recursive functions with constant arguments
* Inlining of all (non-recursive) wrappers
* Consistent use of strict keys
Average performance improvements across common API (with GHC 6.12.3):
* Linux / x86_64 / 2.6Ghz i7 : 48%
* Mac OSX 10.5 / x86 / 2 Ghz Xeon : 36%
Graphs and raw data: http://is.gd/eJHIE
This patch is (mostly) orthogonal to the algorithmic changes suggested
by Milan Straka in his HW 2010 paper:
http://research.microsoft.com/~simonpj/papers/containers/containers.pdf
Those changes could be added separately, for some additional improvments.
Work carried out over 28/29th August, 2010 in Utrecht, NL, by Johan Tibell
and Don Stewart.
M ./Data/Map.hs -483 +346
View patch online:
http://darcs.haskell.org/cgi-bin/darcsweb.cgi?r=packages/containers;a=darcs_commitdiff;h=20100829120245-cba2c-84d4c023f96afc543d22dde8f79a488083027da5.gz
More information about the Cvs-libraries
mailing list