Re: [RFC rdma-core 2/2] verbs: Introduce non-contiguous memory registration

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 29/01/2018 19:27, Jason Gunthorpe wrote:
On Sun, Jan 28, 2018 at 10:37:47PM +0200, Yuval Shaia wrote:


Hi Jason,

But let's try to take it one step further, what if all my buffers are the
same size, of even better, all are PAGE_SIZE. So in case of "composite"
array of let's say 262144 elements i would have wasteful 262144 * 8 bytes.

This problem could be solved with a bitmap to a given range where only the
bits that are set composed the MR.

You want this for the host on virtualization right?

Yes. (actually is more about us needing rather that wanting :) )

Like we talked
about at plumbers?
 > Is it really necessary to be so optimal? A list of SGLs is not good
enough?

It is not. We think the list would need to be limited to a single page,
(system calls limitation? maybe we are wrong?)
so we would not be able to pass for 1GB MR which would have 262144 elements.

The proposed interface seems cleaner. We pass a (huge) range and we mark
the pages we need using a bitmap.


By the way, doing that would only solve half of our problem.

The other problem is what is happening on post-send. We don't have a virtually
contiguous range to pass to post-send, and breaking the Work Request
into several work requests using pages as boundaries will become again a problem
if we want to send a big chunk (the HW has a rather limited max sg elements).
We can solve it by using 0 based MRs, do you know if the current HW supports it?

Thanks,
Marcel


Jason


--
To unsubscribe from this list: send the line "unsubscribe linux-rdma" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html



[Index of Archives]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Photo]     [Yosemite News]     [Yosemite Photos]     [Linux Kernel]     [Linux SCSI]     [XFree86]
  Powered by Linux