[zeromq-dev] Mb vs. MB in tests & on the Wiki
Martin Sustrik
sustrik at fastmq.com
Mon Oct 13 19:17:02 CEST 2008
Hi Holger,
> I was just having some more fun with the zmq examples when I noticed that
> all the tests and also the Wiki use [Mb] for throughput. Not to be overly
> pedantic but unless I'm mistaken that should probably be [MB] since it's
> megabytes, not -bits. My poor little box is slow but it's certainly better
> than ~60 MB/sec over loopback. ;)
It's Mb, not MB. The point is to make it comparable with bandwidth of
your network interfaces. For example, if you are running on 1Gb
Ethernet, it's useful to know that you are able to exhaust say 534 Mb/s
which translates in straightforward way to 53.4%. Reporting it as 66.7
MB/s is a little bit less useful.
As for performance of your loopback interface, it depends on the message
size you are testing. Say you are testing 1 byte long messages. Thus
60MB/s would give 60,000,000 messages a second which is above all limits
for today's middleware.
You should expect your throughput depending on message size to look
something like this:
http://www.zeromq.org/results:0mq-tests-v03#toc4
For very small messages, CPU power is the bottleneck and thus you won't
see your network's bandwidth exhausted (the throughput in
messages/second will be more or less stable, while throughput in
megabits/second will be quite small, but growing). At the point where
throughput hits the bandwidth of the network, messages/second start
dropping, while megabits/second will remain constant.
> Oh and yeah.. ~30 us latency with a stock 2.6.27 kernel (that's a _tenth_
> of Java-to-Rabbit??) and >600 MB throughput over loopback is nothing short
> of awesome, considering this is on my 6 years old single-core box.
> Great job!
Thanks!
Btw, 2.6.25 kernel showed some performance decrease and thus we've
sticked with 2.6.24 for our tests. It would be interesting to know
whether 2.6.27 fixes it and performs the same (or better) than 2.6.24...
Martin
More information about the zeromq-dev
mailing list