On Thu, 2017-08-10 at 22:48 +0200, Francesco wrote: > Hi Luca, > thanks for your reply. > > > 2017-08-10 21:28 GMT+02:00 Luca Boccassi <luca.bocca...@gmail.com>: > > On Thu, 2017-08-10 at 19:44 +0200, Francesco wrote: > > > thanks for details. I found out a problem that was blocking my > > > testing: I have used a gcc 5.3 on some servers to build Zyre and > > > apparently some build option I have there is causing my problem > > > (nodes > > > stuck after "Took 3 ms to coordinate with all remote")... in > > > another > > > couple of servers I used the Centos7 native compiler (gcc4.7 > > > IIRC) > > > and > > > it worked. I will dig into this issue tomorrow. > > > > That's a bit suspicious :-) > > > > Actually I found that the utility "zpinger" works (the 2 nodes "ping" > each other)... I suspect it's due to the fact that when I used gcc5.3 > I used a version of libzmq built without libsodium...
That still shouldn't make any difference, peers should be able to communicate regardless. If you have a way to reproduce please share it or open an issue on Github. > > > When I got it running however I got somewhat low numbers, around > > > 60k > > > msg/sec (2 nodes). On the same machines I ran my own performance > > > testing program with ZeroMQ and for 64B packets I reached around > > > 1.5 > > > Mpps. > > > > > > I didn't check the source code of the perf_loca/remote program > > > but am > > > I missing something? > > > > I get the same numbers more or less. Note that zyre perf code is > > less > > optimised for throughput - it uses high level APIs that do a loc of > > mallocs and copies, etc. > > libzmq perf code uses more high performance zero-copy APIs, and > > that > > makes a lot of difference. > > So do you think that when I have 2 Zyre nodes talking to each other > (actually unidirectional communication is a more fair comparison to > my ZMQ tests) I can reach similar performance to plain ZMQ sockets if > I spend some time optimizing the code? > That's an important point for me to decide whether using vanilla ZMQ > or Zyre instead... > > Thanks, > Francesco In theory with some massaging it might be possible. If what you want is a way to discover peers, you can form the groups and then get the list of connected peers, and then their address. Then you could use the zero-copy low-level libzmq APIs. Kind regards, Luca Boccassi
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