Scalable i/o event handling for GHC

  • Authors:
  • Bryan O'Sullivan;Johan Tibell

  • Affiliations:
  • Serpentine, San Francisco, CA, USA;Google, Zurich, Switzerland

  • Venue:
  • Proceedings of the third ACM Haskell symposium on Haskell
  • Year:
  • 2010

Quantified Score

Hi-index 0.03

Visualization

Abstract

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.