Posted in Uncategorized on March 3rd, 2010 4 Comments »
In my first of this pair of articles, I laid out some of the qualities I've been looking for in a parsing library.Before I dive back into detail, I want to show off some numbers. The new Attoparsec code is fast.What did I benchmark? I captured some real HTTP GET requests from a live public [...]
Posted in Uncategorized, haskell on March 3rd, 2010 2 Comments »
My goal in working on the new GHC I/O manager has been to get the Haskell network stack into a state where it could be used to attack high-performance and scalable networking problems, domains in which it has historically been weak.While it's encouraging to have an excellent networking stack (Johan and I now have this [...]
While I’ve been in my corner hacking on low-level Haskell nonsense, apparently someone figured out how to make the internets more better.
To wit, a few judiciously curated sources of visual edification:
for great justice
unhappy hipsters
riot right click
Posted in Uncategorized on January 22nd, 2010 3 Comments »
Johan and I are hard at work getting the new I/O manager for GHC into shape. He published some numbers earlier today describing the dramatic performance difference between GHC's current timeout support and ours. Here, I'd like to talk about another aspect of performance: sending and receiving data.
We have a very simple benchmark that exercises [...]
Posted in Uncategorized on January 11th, 2010 5 Comments »
Over the past couple of weeks, I have been working with Johan Tibbell on an event library to use for replacing GHC’s existing I/O manager. The work has been progressing rather nicely: I now have both the epoll and kqueue back ends working, while Johan has been focusing on a fast priority queue data structure [...]
Posted in Uncategorized on December 17th, 2009 9 Comments »
The Glasgow Haskell Compiler supports extraordinarily cheap threads, about as lightweight as those of Erlang. These are implemented using a two-level model, with threads scheduled across a set of OS-level threads. Since the lightweight threads can't afford to block when performing I/O operations, when a Haskell program starts, it runs an I/O manager thread whose [...]
Posted in Uncategorized on December 10th, 2009 5 Comments »
I spent some time recently using my criterion benchmark suite to measure the performance of the Haskell text package. I've reproduced the 45 microbenchmarks that I've put together so far below.
The attention deficit summary
The performance of the text package is generally good, and there are some obvious areas for improvement.
In many cases, simply waiting for [...]
Posted in Uncategorized on May 22nd, 2009 No Comments »
I just released version 0.2 of the Haskell text library that I announced back in February. This version fixes a number of bugs, but much more significantly, it adds a streaming mode: you can process a huge amount of text lazily using a small, fixed amount of memory, while maintaining high performance.
In case you need [...]
Posted in Uncategorized on March 31st, 2009 No Comments »
ACM SIGPLAN 2009 Developer Tracks on Functional Programming
http://www.defun2009.info/
Edinburgh, Scotland, September 3 and 5, 2009
The workshop will be held in conjunction with ICFP 2009
http://www.cs.nott.ac.uk/~gmh/icfp09.html
Important dates
Proposal Deadline: June 5, 2009, 0:00 UTC
Notification: June 19, 2009
DEFUN 2009 invites functional programmers and researchers who know how to solve problems with functional progamming to give talks and lead tutorials at [...]
Posted in Uncategorized on March 1st, 2009 No Comments »
I think that this video is remarkably beautiful.
SCINTILLATION, by Xavier Chassaing on Vimeo.