
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
#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 bgamari): Replying to [comment:34 alkar]: 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` I'm afraid I don't understand; this would be a multi-threaded computation, would it not? In general there are very real costs to synchronization, especially across cores on large machines. The performance hit that you report above sounds a bit high and it would be nice to bring it down. Perhaps you could do some digging to see where this time is going? -- Ticket URL: http://ghc.haskell.org/trac/ghc/ticket/8224#comment:35 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler