thread/socket behvior
Jeff Polakow
jeff.polakow at db.com
Thu Oct 9 15:04:26 EDT 2008
Don Stewart <dons at galois.com> wrote on 10/09/2008 02:56:02 PM:
> jeff.polakow:
> > We have a server that accepts messages over a socket, spawning
threads to
> > process them. Processing these messages may cause other, outgoing
> > connections, to be spawned. Under sufficient load, the main server
loop
> > (i.e. the call to accept, followed by a forkIO), becomes
nonresponsive.
> >
> > A smaller distilled testcase reveals that when sufficient socket
activity
> > is occurring, an incoming connection may not be responded to until
other
> > connections have been cleared out of the way, despite the fact that
these
> > other connections are being handled by separate threads. One issue
that
> > we've been trying to figure out is where this behavior arises
from-- the
> > GHC rts, the Network library, the underlying C libraries.
> >
> > Have other GHC users doing applications with large amounts of
> socket usage
> > observed similar behavior and managed to trace back where it
originates
> > from? Are there any particular architectural solutions that people
have
> > found to work well for these situations?
>
> Hey Jeff,
>
> Can you say which GHC you used, and whether you used the threaded
> runtime or non-threaded runtime?
>
Oops, forgot about that...
We used both ghc-6.8.3 and ghc-6.10.rc1 and we used the threaded runtime.
We are running on a 64 bit linux machine using openSUSE 10.
thanks,
Jeff
---
This e-mail may contain confidential and/or privileged information. If you
are not the intended recipient (or have received this e-mail in error)
please notify the sender immediately and destroy this e-mail. Any
unauthorized copying, disclosure or distribution of the material in this
e-mail is strictly forbidden.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://www.haskell.org/pipermail/glasgow-haskell-users/attachments/20081009/c8d8ad8b/attachment.htm
More information about the Glasgow-haskell-users
mailing list