Scalable I/O Event Handling for GHC

Bryan O’Sullivan
Johan Tibell
Proceedings of the 2010 ACM SIGPLAN Haskell Symposium (Haskell'10), pp. 103-108
Google Scholar


We have developed a new, portable I/O event manager for the Glasgow Haskell Compiler (GHC) that scales to the needs of modern server applications. Our new code is transparently available to existing Haskell applications. Performance at lower concurrency levels is comparable with the existing implementation. We support millions of concurrent network connections, with millions of active timeouts, from a single multithreaded program, levels far beyond those achievable with the current I/O manager. In addition, we provide a public API to developers who need to create event-driven network applications.

Research Areas