On 2/15/18, 2:02 PM, "Stephen Bates" <sbates(a)raithlin.com> wrote:
We also need a better CMB allocation scheme.
Ha! I knew there was a feature I was forgetting. This is it. Yes for sure, thanks for
reminding me. I have added it to my list so I don't forget next time.
Do we have anything like this in SPDK already or does anyone have any pointers to a
licence compatible open-source allocator that might suit our needs?
There’s really nothing like this today in SPDK. I believe DPDK provides a way to use
their allocators with “user-provided” memory – i.e. not from the hugepages allocated in
host memory by DPDK. But I haven’t looked at exactly how that works.
I guess I’m not 100% sold that we need a full-blown allocator. Maybe what we have
currently is enough – the user can allocate the memory but it’s up to the user how it is
managed. Meaning that the free_cmb_io_buffer routine effectively goes away. And just be
explicit in the API – i.e. here’s the call you make to get the CMB buffer and its size –
what you choose to do with it is your business. We could always provide some kind of
allocator later – but that can be done outside of the SPDK NVMe CMB logic itself.
I’m curious – how much CMB does one of your NoLoad card have?