[zeromq-dev] Efficiency for very few short messages

dan smith dan25311 at gmail.com
Mon Jan 21 01:48:46 CET 2013

Dear All,

I have got a multi threading application. It uses a pool of threads. Each
thread in the pool communicates with the main thread via ZMQ_PAIR sockets,
one pair for each thread. The length of the messages is 8 bytes (pointer to
a     C++ object). On a quad core machine I use 8 threads. Each thread in
the pool solves a linear equation system (a small one, still the solution
time is much larger than the time needed for the communication between the
main thread and a worker).

The speedup is perfect...if large number of equations are solved. However,
the requirement is to solve just 8 equations parallel, one in each thread
at the same time. If I decrease the number of equations below ~100, the
serial solution becomes much faster than the multi core solution.

Why is that and how this problem can be solved? How can a multi core
application be made efficient for small problems too?

Thank you very much in advance,

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.zeromq.org/pipermail/zeromq-dev/attachments/20130120/61e58d06/attachment.htm>

More information about the zeromq-dev mailing list