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