This web mail archive is frozen.
This page is part of a frozen web archive of this mailing list.
You can still navigate around this archive, but know that no new mails
have been added to it since July of 2016.
Click here to be taken to the new web archives of this list; it includes all the mails that are in this frozen archive plus all new mails that have been sent to the list since it was migrated to the new archives.
On Tue, 21 Feb 2012, Rolf vandeVaart wrote:
> I think I am OK with this.
> Alternatively, you could have done something like is done in the TCP BTL where the payload and header are added together for the frag size?
> To state more clearly, I was trying to say you could do something similar to what is done at line 1015 in btl_tcp_component.c and ended up with the same results?
That will more or less work for my current use case (I found those examples this morning). I would have to pad my fragments to ensure cache line alignment (if that ends up being faster for SMSG).
> This is just making the payload buffer a different chunk of memory than the headers?
> I am just trying to understand the motivation for the change.
The motivation is to allow the payload to be aligned separately from the header. Currently, if I want payload alignment I have to pad the header to get the correct alignment on the data.
> I think the way you have it is more correct so we can support the case where someone specifies the header size and the payload size differently and expects the free list code to do the right thing.
This is one of my motivations. When writing the uGNI BTL I expected the free list to do the "right thing" and allocate a payload buffer even if I didn't specify an mpool.