[GHC] #8733: I/O manager causes unnecessary syscalls in send/recv loops

GHC ghc-devs at haskell.org
Wed Feb 5 14:40:06 UTC 2014


#8733: I/O manager causes unnecessary syscalls in send/recv loops
--------------------------------------------+------------------------------
        Reporter:  tibbe                    |            Owner:
            Type:  bug                      |           Status:  new
        Priority:  normal                   |        Milestone:  7.10.1
       Component:  Runtime System           |          Version:  7.6.3
      Resolution:                           |         Keywords:
Operating System:  Unknown/Multiple         |     Architecture:
 Type of failure:  Runtime performance bug  |  Unknown/Multiple
       Test Case:                           |       Difficulty:  Unknown
        Blocking:                           |       Blocked By:
                                            |  Related Tickets:
--------------------------------------------+------------------------------
Changes (by simonmar):

 * owner:  simonmar =>


Comment:

 Hmm.  Isn't it application-specific knowledge that the recv() is going to
 block?  I'm not sure what it is you're proposing that the IO manager
 should do, could you elaborate?

 > One argument for why this should work without user interaction, in
 addition to the standard "it's nice if it just works" argument, is that if
 we didn't use the I/O manager but instead normal blocking syscalls, we'd
 end up with better behavior in this case.

 If you used blocking syscalls you'd end up with much worse scaling, that's
 why we have the IO manager, no?

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


More information about the ghc-tickets mailing list