[ofa-general] Re: [PATCH RFC] sharing userspace IB objects
Galen Shipman
gshipman at lanl.gov
Mon Jul 2 08:15:49 PDT 2007
> Looking at the Dror's slides on slide 6 "Scalable Reliable
> Connection" I
> see that wire protocol is extended to send DST SRQ as part of a
> header.
> Receiver side then puts completion to appropriate CQ according this
> field. Have you proposition address this? How? Who will put this
> additional data on a wire (HW or libibverbs may be app)? Also I don't
> see this in Dror's slide, but completion of local operation should be
> demultiplexed to appropriate CQ too. WQE may contain additional field,
> for instance, that will tell where to put a completion. Once again who
> will do the demux in you proposition (HW, libiverbs or app)? The right
> answer is most certainly HW in both cases so will Hermon support this?
> Or may be you want to demultiplex everything inside libibvers? In this
> case I want to see design of this (preferably with performance
> analysis).
>
While I think the SRC design makes sense I also have concerns
regarding SSQ.
As Gleb has pointed out, if the hardware doesn't do the demux then
the application has to.
It sounds like there are two proposals to deal with this hardware
limitation in software (sigh).
1) Process A polls CQ, if WQE belongs to Process B, Process A will
drop the WQE in a shared memory region that Process B will poll.
So we end up re-implementing shared memory completion semantics
all over again for SSQ. I am concerned that there is both a latency
hit (on average) and a memory scaling issue in that multiple QPs will
now be replaced with shared memory completion fifos and a single SSQ QP.
2) Process A peeks CQ, if WQE belongs to Process B, it doesn't
process it
This has very bad implications for real applications, having to
context switch to receive a WQE is bad
In my opinion the demux belongs in the hardware, otherwise we end up
complicating an already complicated code base to support a feature
which unless I am missing something will have no benefit to real
applications.
- Galen
> --
> Gleb.
> _______________________________________________
> general mailing list
> general at lists.openfabrics.org
> http://lists.openfabrics.org/cgi-bin/mailman/listinfo/general
>
> To unsubscribe, please visit http://openib.org/mailman/listinfo/
> openib-general
More information about the general
mailing list