Back out a pair of commits from George from last week because they
apparently don't work properly: r9869, r9868 (sm btl alignment issues) This commit was SVN r9936. The following SVN revision numbers were found above: r9868 --> open-mpi/ompi@9b985c3216 r9869 --> open-mpi/ompi@adedf511fb
Этот коммит содержится в:
родитель
d3ff507bc2
Коммит
e24377a89c
@ -18,29 +18,11 @@
|
||||
#include "ompi_config.h"
|
||||
#include "btl_sm_frag.h"
|
||||
|
||||
/**
|
||||
* Internal alignment for the SM BTL. Don't know yet if it's interesting to export it
|
||||
* via the MCA parameters. It might make sense on some NUMA machines to have the
|
||||
* fragments aligned on 64 bits instead ...
|
||||
* What we really need here is to have the header on the same cache line to
|
||||
* speed-up the access to the header information.
|
||||
*/
|
||||
#define BTL_SM_ALIGNMENT_TO 32
|
||||
|
||||
static inline void mca_btl_sm_frag_constructor(mca_btl_sm_frag_t* frag)
|
||||
{
|
||||
size_t alignment;
|
||||
|
||||
frag->segment.seg_addr.pval = frag+1;
|
||||
alignment = (size_t)((unsigned long)frag->segment.seg_addr.pval &
|
||||
(unsigned long)(BTL_SM_ALIGNMENT_TO - 1));
|
||||
if( 0 != alignment ) {
|
||||
unsigned long ptr = (unsigned long)frag->segment.seg_addr.pval;
|
||||
alignment = BTL_SM_ALIGNMENT_TO - alignment;
|
||||
ptr += alignment;
|
||||
frag->segment.seg_addr.pval = (void*)ptr;
|
||||
}
|
||||
frag->segment.seg_len = frag->size - alignment;
|
||||
frag->segment.seg_len = frag->size;
|
||||
frag->base.des_src = &frag->segment;
|
||||
frag->base.des_src_cnt = 1;
|
||||
frag->base.des_dst = &frag->segment;
|
||||
|
Загрузка…
x
Ссылка в новой задаче
Block a user