[zeromq-dev] pyzmq poller performance

Brian Knox briank at talksum.com
Mon Jun 24 17:27:04 CEST 2013


It's been awhile since I've used pyzmq, and I'm running into a performance
issue using Poller.poll().

With a simple blocking recv() in a while True loop, I get ~ 300k messages a
second.

With the simplest case of the same code using a poll on the socket, I get ~
30k messages a second.

(pyzeromq)taotetek at Moya:~/src/performance_example$ python ./receiver.py
mps: 226049
mps: 348582
mps: 271728
mps: 300389
mps: 411059
mps: 276749

(pyzeromq)taotetek at Moya:~/src/performance_example$ python ./poll_receiver.py
mps: 28066
mps: 28116
mps: 29745
mps: 28912
mps: 28679

I don't remember a 10x performance degradation last time I used a poller -
but perhaps I'm remembering something wrong, or making a painfully obvious
error in my code .. I've been using czmq from C mostly for the last while.

I'm using pyzmq from git master, and the latest Cython (0.19.1) with libzmq
3.2.3.

I've attached the test cases I'm using.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.zeromq.org/pipermail/zeromq-dev/attachments/20130624/3ec1e834/attachment.htm>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: performance_example.tar
Type: application/x-tar
Size: 10240 bytes
Desc: not available
URL: <https://lists.zeromq.org/pipermail/zeromq-dev/attachments/20130624/3ec1e834/attachment.tar>


More information about the zeromq-dev mailing list