I was very happy to be invited to give a talk at Galois about the work Bryan O'Sullivan and I are doing to replace GHC's existing I/O manager. These are the slides I presented.
A Scalable I/O Manager for GHC
View more presentations from Johan Tibell.
The talk wasn't recorded, but I hope that the slides can be read and understood by themselves. Many thanks to Don Stewart for organizing. Also, a big thank you to everyone who attended and chatted with me afterwards, making it such a fun day!
So you've implemented it on Windows as well?
ReplyDeleteNot yet. I think we'll use 'select' on Windows to start with. We could really need someone who's passionate about getting I/O completion ports support into the library.
ReplyDeleteWhat about libev? Doesn't it come with Windows support built-in?
ReplyDeletepeaker,
ReplyDeleteI believe that libev supports Windows via select. I initially investigated using libev, but calling back into Haskell from C (i.e. from libev) is not very efficient as the RTS introduces an overhead to make that call safe.