On Wed, 2018-04-11 at 18:47 +0200, Francesco wrote:
> Hi all,
> 
> I'm using zmq_poller_wait_all() API in one of my threads because I
> need to
> poll over 2 ZMQ sockets.
> I'm receiving a lot of traffic on both these sockets.
> I think the performance of my software is bad and that may be due
> IMHO to
> the huge amount of poll() syscalls that my thread does... I think the
> overhead of doing the system call is what is killing me...
> 
> so my question is: when zmq_poller_wait_all() polls zmq FDs it is
> actually
> polling the real socket FD or rather some ZMQ internal structure?
> If the latter is true, do I have a way to poll more than 1 zmq socket
> without doing a system call?
> 
> 
> THanks,
> Francesco

I'm not familiar with the zmq_poller API so someone else might help -
in general, a common optimisation is to drain the socket using non-
blocking receives when poll wakes up (taking care of using heuristic to
avoid starving the other sockets), so that you can process multiple
messages per poll

-- 
Kind regards,
Luca Boccassi

Attachment: signature.asc
Description: This is a digitally signed message part

_______________________________________________
zeromq-dev mailing list
zeromq-dev@lists.zeromq.org
https://lists.zeromq.org/mailman/listinfo/zeromq-dev

Reply via email to