[nanomsg] Re: Inproc latency and programming challenge!

  • From: David Nyström <david.nystrom@xxxxxxxx>
  • To: <nanomsg@xxxxxxxxxxxxx>
  • Date: Wed, 30 Jan 2013 14:20:48 +0100

On 01/30/2013 09:36 AM, Martin Sustrik wrote:
On 30/01/13 09:11, David Nyström wrote:

Have you considered supporting a lockless implementation of message
queues for inproc/ipc ? (libatomic_ops).

Yes. I've implemented that for ZeroMQ, but it's not yet implemented in
nanomsg. Getting portable MIT-licensed code for atomic CAS would be the
first thing to do, I guess.

I thought libatomic-ops was MIT-style, only the example heap+queue implementations are GPL afaik.


Sorry for jumping in into the thread half-way, but what is the end
goal of the scalability protocol called nanomsg ?
To be a scalability protocol in userspace for SMP OS:es, or be a
scalability protocol for inter-chip communication ?

Inter-process and in-process are just degenerate cases. The main goal is
ranging from inside-datacenter upwards to global.


I'm sad to hear that this is you stance on inproc/intraproc, our use cases much rely on scalability protocols within an SMP domain, even between HW peripherals, see TI keystone, NetLogic FMN, Freescale USDPAA Intel DPDK, et.c.

Have a look at OpenEventMachine[1] for 'one' possible implementation of the intended use-case, and see if it matches where you are heading with nanomsg, personally, I don't see a fundamental conflict of interests, depending on how flexible the APIs still are.

[1] http://sourceforge.net/projects/eventmachine/

Best Regards,
David

Martin



Other related posts: