Implementation of "Scalable Event Handling for GHC"

I just read the article "Scalable Event Handling for GHC" by Sullivan and Tibell, and I was wondering if its implementation has been incorporated into the mainline GHC yet. I'm sure the information is out there, but I'm having a bit of trouble searching on it. If it has been integrated into mainline GHC, what version would I need to run to try it out, and is there any documentation on what sort of things I need to do to ensure that the new IO core is being used?

tsuraan:
I just read the article "Scalable Event Handling for GHC" by Sullivan and Tibell, and I was wondering if its implementation has been incorporated into the mainline GHC yet. I'm sure the information is out there, but I'm having a bit of trouble searching on it. If it has been integrated into mainline GHC, what version would I need to run to try it out, and is there any documentation on what sort of things I need to do to ensure that the new IO core is being used?
It was integrated in GHC 7, released earlier this month. http://article.gmane.org/gmane.comp.lang.haskell.general/18297 > On POSIX platforms, there is a new I/O manager based on epoll/kqueue/poll, which allows multithreaded I/O code to scale to a much larger number (100k+) of threads -- Don

It was integrated in GHC 7, released earlier this month.
http://article.gmane.org/gmane.comp.lang.haskell.general/18297
> On POSIX platforms, there is a new I/O manager based on epoll/kqueue/poll, which allows multithreaded I/O code to scale to a much larger number (100k+) of threads
-- Don
Ok, thanks! Are there any caveats to know about, or any documentation on the new manager? Is it safe to assume that so long as I'm using the standard threading and network/io libraries, I'll be using it correctly?

Depends on what your kernel supports. But that's just infrastructure, so (theoretically) it should just be invisible to the Haskell runtime user.
Surprised that the RT wasn't using the more advanced interfaces. Web servers have been using them for years; that's why they exist.
Sent from my Verizon Wireless BlackBerry
-----Original Message-----
From: tsuraan
It was integrated in GHC 7, released earlier this month.
http://article.gmane.org/gmane.comp.lang.haskell.general/18297
> On POSIX platforms, there is a new I/O manager based on epoll/kqueue/poll, which allows multithreaded I/O code to scale to a much larger number (100k+) of threads
-- Don
Ok, thanks! Are there any caveats to know about, or any documentation on the new manager? Is it safe to assume that so long as I'm using the standard threading and network/io libraries, I'll be using it correctly? _______________________________________________ Glasgow-haskell-users mailing list Glasgow-haskell-users@haskell.org http://www.haskell.org/mailman/listinfo/glasgow-haskell-users

On Mon, Nov 22, 2010 at 8:42 PM, tsuraan
Ok, thanks! Are there any caveats to know about, or any documentation on the new manager?
No, although there's a bug that we're working on at the moment.
Is it safe to assume that so long as I'm using the standard threading and network/io libraries, I'll be using it correctly?
Yes.
participants (4)
-
Bryan O'Sullivan
-
Don Stewart
-
scooter.phd@gmail.com
-
tsuraan