[GHC] #14727: Unboxed sum performance surprisingly poor
GHC
ghc-devs at haskell.org
Sat Jan 27 02:59:25 UTC 2018
#14727: Unboxed sum performance surprisingly poor
-------------------------------------+-------------------------------------
Reporter: dfeuer | Owner: (none)
Type: bug | Status: new
Priority: normal | Milestone: 8.6.1
Component: Compiler | Version: 8.2.2
Keywords: UnboxedSums | Operating System: Unknown/Multiple
Architecture: | Type of failure: Runtime
Unknown/Multiple | performance bug
Test Case: | Blocked By:
Blocking: | Related Tickets:
Differential Rev(s): | Wiki Page:
-------------------------------------+-------------------------------------
I tried performing worker-wrapper manually on `Data.IntMap.lookup`:
{{{#!hs
lookup# :: Int -> IntMap a -> (# (# #) | a #)
lookup# = -- The obvious modification of the current implementation
lookup :: Int -> IntMap a -> Maybe a
lookup k m = case lookup# k m of
(# | a #) -> Just a
_ -> Nothing
}}}
Unfortunately, the `lookup` benchmark ''slowed down''. I verified that the
benchmark indeed performs an immediate case analysis on the result (with
`fromMaybe`), so it ''should'' go faster. And yet it goes slower.
Caveat: I have not yet gotten things set up to be able to check with 8.4,
so if there have been improvements in `UnboxedSum` performance since
`8.2.2`, this may all be silly.
--
Ticket URL: <http://ghc.haskell.org/trac/ghc/ticket/14727>
GHC <http://www.haskell.org/ghc/>
The Glasgow Haskell Compiler
More information about the ghc-tickets
mailing list