Roy, and if tomorrow iWARP decides to support Immediate data with variable length. API does not changes. Semantic does not changes and IB will not be able to support it.
I am trying to define the semantic and API which will not have to be modified for each rev of the transport. Arkady Kanevsky email: [EMAIL PROTECTED] Network Appliance Inc. phone: 781-768-5395 1601 Trapelo Rd. - Suite 16. Fax: 781-895-1195 Waltham, MA 02451 central phone: 781-768-5300 > -----Original Message----- > From: Larsen, Roy K [mailto:[EMAIL PROTECTED] > Sent: Thursday, February 09, 2006 3:32 PM > To: [EMAIL PROTECTED]; Arlin Davis; Roland Dreier > Cc: openib-general@openib.org > Subject: RE: [dat-discussions] [openib-general] > [RFC]DAT2.0immediatedataproposal > > >>> Hmm. Can you put a number on how much better RDMA write with > >>> immediate is on current HCA hardware? How does using the > underlying > >>> OpenIB verbs ability to post a list of work requests compare (ie > >>> posting an RDMA write followed by a send in one verbs call)? > >>> Maybe "post multiple" is a better direction for DAT. > >>> > >>> > >> With post multiple, unlike immediate data, you don't have > the ability > >> to distinguish between a normal receive and a rdma write > completion > >> indication on the other end. This is the uniqueness of the service > >> that cannot be provided by the post multiple. Yes, post multiple > >> would be a nice option for DAT it is just a different service. It > >> would also be required to conform to the semantics rules of the > >> bundled operations so you could not do any optimization > tricks under > >> the covers with an IB rdma_write_immediate operation. > >> > > > >A post_multiple also requires defining a single "DTO" data > structure. > >If the post multiple is atomic (meaning all make it or none > do) then it > >requires an intermediate data structure to have been > created. If it is > >not atomic there really isn't reason for it to not just be a utility > >function layered above DAT. > > That is very good point. And since the emulated immediate > data service can't make the atomic guarantee it is the killer > argument for just making the service plain - a potentially > more efficient write/send. > > > > >What I'm not seeing with the immediate is this urgent need by the > >application to be able to use the same 32-bit value for both an > >immediate and a 4 byte message that requires an entire > additional API > >just to support it. Why can't the application just add a > bool to the > >send message? > >Or encode the 32-bits so that they come from disjoint domains? > > Some applications can do as you suggest. Some applications > can make good use of unambiguous indications where the buffer > size, content, or arrival timing is not constrained. Some > don't need write notification at all. What's your point? > > > > >There seems to be agreement that a consolidated write-and-send call > >would enable the application to get the benefits of rdma write with > >immediate whenever the application could distinguish the two. > > Well, I think there is agreement that *some* applications can > use write-and-send in a beneficial way. But then again, > nothing prevents them from doing that now. They do not need > an additional API. But again, I don't have an issue with > defining a helper function. I do have an issue with defining > an API and semantic that says the target side needs to be > coded in a way to always deal with both "true" immediate data > and emulation. Just define a write/send helper API and the > UPL can be coded in a consistent manner if that is a > beneficial service. If a true unambiguous indication service > is more beneficial or required, it can use the extension and > accept the extra complexity. To demand extra complexity in > applications that obviously don't need the true immediate > data semantic is just wrong in my option. > > > > >I cannot see why doing this is almost free for virtually all > >applications, and trivial for the remainder. Adding and > documenting an > >extra call to deal with such an extreme corner case that is being > >presented only in the abstract is just not justified. This extra > >capability has to have enough functionality for enough > applications to > >justify keeping it on the books, writing test cases for it, etc. > > All we're asking is that a write/send combined API not be > called immediate data unless it fits the semantics of > immediate data. I am puzzled at the resistance this is > getting. There is a standards body specification for > immediate data. If it is not followed, don't call it > immediate data. It's that simple. For those transports that > can provide the service, the UPL may be able to gain access > to it through an extension. > > Roy > _______________________________________________ > openib-general mailing list > openib-general@openib.org > http://openib.org/mailman/listinfo/openib-general > > To unsubscribe, please visit > http://openib.org/mailman/listinfo/openib-general > _______________________________________________ openib-general mailing list openib-general@openib.org http://openib.org/mailman/listinfo/openib-general To unsubscribe, please visit http://openib.org/mailman/listinfo/openib-general