Repository : ssh://[email protected]/base On branch : master Link : http://ghc.haskell.org/trac/ghc/changeset/239bc1dda6bc6799382736538af75a2f01686503/base
>--------------------------------------------------------------- commit 239bc1dda6bc6799382736538af75a2f01686503 Author: Bryan O'Sullivan <[email protected]> Date: Wed Aug 14 03:43:36 2013 -0700 Switch IO manager to a mutable hashtable This data structure (IntTable) provides a similar API to its predecessor (IntMap), at half the number of lines in size. When tested in isolation using criterion, IntTable is much faster than IntMap: over 15x, according to my criterion benchmarks. This translates into a measurable improvement when used in the IO manager: using weighttp to benchmark acme-http under various configurations on two 32-core Linux servers connected by a 10gbE network, I see between a 3% and 10% increase in requests served per second compared to IntMap. Signed-off-by: Andreas Voellmy <[email protected]> >--------------------------------------------------------------- 239bc1dda6bc6799382736538af75a2f01686503 GHC/Event/Arr.hs | 32 +++++ GHC/Event/IntMap.hs | 347 ------------------------------------------------- GHC/Event/IntTable.hs | 141 ++++++++++++++++++++ GHC/Event/Manager.hs | 131 +++++++++---------- GHC/Event/Thread.hs | 14 +- base.cabal | 3 +- 6 files changed, 243 insertions(+), 425 deletions(-) Diff suppressed because of size. To see it, use: git diff-tree --root --patch-with-stat --no-color --find-copies-harder --ignore-space-at-eol --cc 239bc1dda6bc6799382736538af75a2f01686503 _______________________________________________ ghc-commits mailing list [email protected] http://www.haskell.org/mailman/listinfo/ghc-commits
