[zeromq-dev] Performance benchmark for 0MQ/2.0.6

Martin Sustrik sustrik at 250bpm.com
Thu Mar 25 13:59:37 CET 2010

Hi Mike,

> Thanks for making up the graphs.  You might as well update the maximum 
> message throughput shown on the main page as the 7.3 Mmsg/s 
> substantially exceeds the published max throughput of 4.1 Mmsgs/s. 

Yes. However, I'm thinking on changing the wording to "millions of 
messages per second and latencies in order of microseconds". The problem 
is that the figures are pretty different depending on the hardware and 
software stack underneath 0MQ, thus providing "exact" figures is a bit 

> Another interesting thing that I noticed is that the msg throughput for 
> this IB test exceeds the message throughput in the published benchmarks 
> on the 0MQ site for IPC and inproc transports.  If it would be useful
> and if you have (or can develop) a latency and throughput benchmark for 
> the inproc transport, I'd be happy to run this same study for 1 Gb 
> Ethernet transports, ipc transports, and inproc transports on the same 
> hardware as the hardware used in this IB benchmark.

You can run the tcp/ipc tests as is. Just use the appropriate addresses 
with local/remote_lat/thr.

As for inproc, the tests need a bit of coding (getting local & remote 
into two threads of the same process), however, the real problem is that 
with inproc transport the performance doesn't depend on the message size 
(only a pointer is passed) rather on things like what CPU cores do the 
individual threads run on, whether they share the cache etc. Thus, to 
run inproc tests, a methodology should be devised first.


More information about the zeromq-dev mailing list