Hello Martin, all

2011/12/15 Martin Sustrik <[email protected]>:
> I think it would be a killer feature for HPC and financial services users.
> So, definitely, go for it!

I will, looking at all the responses it seems that there's more
interest for it than I had predicted :-)

> Right. And given the transport is lossless, it should be easy to fragment
> messages into datagrams.

Indeed, besides verbs datagrams can be of arbitrary size up to 2GiB so
it's very flexible in respect to mapping user messages to packets.

>> - Connection management would be done using the RDMA connection
>> manager library, this has semantics and an interface which resembles
>> very closely TCP sockets and provides file descriptors for
>> notification; establishing connections wouldn't look too different
>> from what happens in tcp_listener_t/tcp_connecter_t
>
> Yes.
>
>> - Data transfer would be done with raw verbs calls, this would make
>> use of a custom sender/receiver object, something akin to
>> stream_engine_t. The ibverbs library supports file descriptors for
>> signaling data transfer events so this should also fit well within the
>> 0MQ model
>
> Exactly.
>
>> - The code would mainly go into separate files plus some changes to
>> socket_base.cpp and session_base.cpp to support the new transport,
>> relevant options and checks would be added to the autoconf
>> infrastructure
>
> Yes.

Good to hear that, then I'll start hacking right away.

> Yes. This can be done on one-by-one basis. We have OS checking macros in 0MQ
> so it should be easy. Also, it would be nice to have --with-ib or
> --with-rdma  option to configure to switch the compiling of this component
> on. (Same as --with-pgm we are using to switch PGM support on.)

I've already added a --enable-rdma option in my local repository plus
the necessary checks and it's looking good. Would --with-rdma be
preferred? In autoconf it's usually used for options where you need to
specify something (e.g. --with-stuff=mystuff) while --enable is used
for on/off flags.

> Yes. Use mainline for new development. The code was much simplified since
> 2.x times, so it'll be much easier for you.

That sounds good, I'll create a branch on GitHub ASAP though I have to
go through their docs first as I have never used the service before.

> Yes. I think that's exactly the point. Using IB is not easy (unless you run
> IPoIB on top of it) and this kind of project can possibly make it a viable
> option for those without the extensive experience with RDMA.

Yes and access to hardware is often a problem, I have a very limited
stash myself and I use it only for light development, testing and
experimentation.

 Gabriele
_______________________________________________
zeromq-dev mailing list
[email protected]
http://lists.zeromq.org/mailman/listinfo/zeromq-dev

Reply via email to