[GHC] #8224: Excessive system time -- new IO manager problem?

GHC ghc-devs at haskell.org
Sat Nov 12 09:30:45 UTC 2016


#8224: Excessive system time -- new IO manager problem?
-------------------------------------+-------------------------------------
        Reporter:  rrnewton          |                Owner:
            Type:  bug               |               Status:  new
        Priority:  high              |            Milestone:  8.2.1
       Component:  Runtime System    |              Version:  7.7
      Resolution:                    |             Keywords:  IO Manager,
                                     |  System Time
Operating System:  Linux             |         Architecture:  x86_64
 Type of failure:  Runtime           |  (amd64)
  performance bug                    |            Test Case:
      Blocked By:                    |             Blocking:
 Related Tickets:  #9221             |  Differential Rev(s):
       Wiki Page:                    |
-------------------------------------+-------------------------------------

Comment (by alkar):

 Replying to [comment:33 bgamari]:
 > As expected disabling parallel GC with `+RTS -qg` drastically reduces
 system time due to reduced synchronization overhead.

 Wow! Just tried `+RTS -N -qg` and brings performance back in the sane
 world! Now it's something like
 {{{
 real    0m0.269s
 user    0m0.232s
 sys     0m0.104s
 }}}
 That is, 30-40% slower than without `-N`.

 A real-life example of a program where I'd want a long single thread
 computation with `-N` turned on is a faster analog of `fgrep -f
 patterns.txt input1 ... inputN`:

 1. Read all lines from `patterns.txt` into a set.
 2. In parallel for each input file, `filter (\str -> member str set) .
 lines`

--
Ticket URL: <http://ghc.haskell.org/trac/ghc/ticket/8224#comment:34>
GHC <http://www.haskell.org/ghc/>
The Glasgow Haskell Compiler


More information about the ghc-tickets mailing list