On Tue, Jul 09, 2019 at 03:15:46PM +0200, Jinpu Wang wrote: > On Tue, Jul 9, 2019 at 2:06 PM Jason Gunthorpe <jgg@xxxxxxxxxxxx> wrote: > > > > On Tue, Jul 09, 2019 at 01:37:39PM +0200, Jinpu Wang wrote: > > > Leon Romanovsky <leon@xxxxxxxxxx> 于2019年7月9日周二 下午1:00写道: > > > > > > > > On Tue, Jul 09, 2019 at 11:55:03AM +0200, Danil Kipnis wrote: > > > > > Hallo Doug, Hallo Jason, Hallo Jens, Hallo Greg, > > > > > > > > > > Could you please provide some feedback to the IBNBD driver and the > > > > > IBTRS library? > > > > > So far we addressed all the requests provided by the community and > > > > > continue to maintain our code up-to-date with the upstream kernel > > > > > while having an extra compatibility layer for older kernels in our > > > > > out-of-tree repository. > > > > > I understand that SRP and NVMEoF which are in the kernel already do > > > > > provide equivalent functionality for the majority of the use cases. > > > > > IBNBD on the other hand is showing higher performance and more > > > > > importantly includes the IBTRS - a general purpose library to > > > > > establish connections and transport BIO-like read/write sg-lists over > > > > > RDMA, while SRP is targeting SCSI and NVMEoF is addressing NVME. While > > > > > I believe IBNBD does meet the kernel coding standards, it doesn't have > > > > > a lot of users, while SRP and NVMEoF are widely accepted. Do you think > > > > > it would make sense for us to rework our patchset and try pushing it > > > > > for staging tree first, so that we can proof IBNBD is well maintained, > > > > > beneficial for the eco-system, find a proper location for it within > > > > > block/rdma subsystems? This would make it easier for people to try it > > > > > out and would also be a huge step for us in terms of maintenance > > > > > effort. > > > > > The names IBNBD and IBTRS are in fact misleading. IBTRS sits on top of > > > > > RDMA and is not bound to IB (We will evaluate IBTRS with ROCE in the > > > > > near future). Do you think it would make sense to rename the driver to > > > > > RNBD/RTRS? > > > > > > > > It is better to avoid "staging" tree, because it will lack attention of > > > > relevant people and your efforts will be lost once you will try to move > > > > out of staging. We are all remembering Lustre and don't want to see it > > > > again. > > > > > > > > Back then, you was asked to provide support for performance superiority. > > > > Can you please share any numbers with us? > > > Hi Leon, > > > > > > Thanks for you feedback. > > > > > > For performance numbers, Danil did intensive benchmark, and create > > > some PDF with graphes here: > > > https://github.com/ionos-enterprise/ibnbd/tree/master/performance/v4-v5.2-rc3 > > > > > > It includes both single path results also different multipath policy results. > > > > > > If you have any question regarding the results, please let us know. > > > > I kind of recall that last time the perf numbers were skewed toward > > IBNBD because the invalidation model for MR was wrong - did this get > > fixed? > > > > Jason > > Thanks Jason for feedback. > Can you be more specific about "the invalidation model for MR was wrong" MR's must be invalidated before data is handed over to the block layer. It can't leave MRs open for access and then touch the memory the MR covers. IMHO this is the most likely explanation for any performance difference from nvme.. > I checked in the history of the email thread, only found > "I think from the RDMA side, before we accept something like this, I'd > like to hear from Christoph, Chuck or Sagi that the dataplane > implementation of this is correct, eg it uses the MRs properly and > invalidates at the right time, sequences with dma_ops as required, > etc. > " > And no reply from any of you since then. This task still needs to happen.. Jason