Hi Pieter, > Someone pointed me to this: > http://www.1024cores.net/home/lock-free-algorithms/queues/fastflow > > and asked how 0MQ's queues compare.
It's very similar to what 0mq does internally. There are some things that are not in 0MQ. Say the padding to avoid cache-line pollution. We have a patch for that by Martin Pales and John Dyte, but neither Martin Pales nor myself were able to show any speedup, so the patch was not applied. On the other hand, 0mq has several optimisations that the paper doesn't account for afaics. First, we are using batching, ie. we move all the queued messages to the other thread in a single step when the receiving node asks for it. Second, there's some discussion in the article about embedded data vs. passing pointers to data. In 0MQ we do both depending on the message size. Embedded data is used for small messages, pointers are used for large messages. Martin _______________________________________________ zeromq-dev mailing list [email protected] http://lists.zeromq.org/mailman/listinfo/zeromq-dev
