
On Thu, Jul 10, 2014 at 8:39 PM, Brandon Simmons < brandon.m.simmons@gmail.com> wrote:
I'm happy to finally release unagi-chan, an implementation of high-performance concurrent FIFO queues that have an API very similar to Control.Concurrent.Chan. You can see benchmarks and documentation here:
It's difficult to overstate how much faster unagi-chan is than
Control.Concurrent under contention, I'm seeing >10x improvements in the
100 readers/100 writers benchmark on this quad-core machine. I'll have to
try it on the 8-core at work. Performance seems to be predictably fast as
you scale the number of workers, unlike the others which asymptotically
explode during contention. Really impressive work, Brandon.
How close is unagi-chan to being a drop-in replacement for MVar? Since this
implementation seems to clearly be better, personally I would wonder if it
shouldn't just replace the existing one in the standard library.
Also: can you use the same technique to get a fast implementation of
bounded queues?
G
--
Gregory Collins