* Fix some compile errors
* Need to subtract 1 off the size so that we stay in the bit length requirements This commit was SVN r28997.
Этот коммит содержится в:
родитель
354f407fae
Коммит
2cc947513b
@ -426,7 +426,7 @@ mca_btl_portals4_finalize(struct mca_btl_base_module_t *btl)
|
|||||||
#if OMPI_PORTALS4_MAX_MD_SIZE < OMPI_PORTALS4_MAX_VA_SIZE
|
#if OMPI_PORTALS4_MAX_MD_SIZE < OMPI_PORTALS4_MAX_VA_SIZE
|
||||||
if (NULL != mca_btl_portals4_module.send_md_hs) {
|
if (NULL != mca_btl_portals4_module.send_md_hs) {
|
||||||
int i;
|
int i;
|
||||||
int num_mds = mca_btl_portals4_module_get_num_mds();
|
int num_mds = mca_btl_portals4_get_num_mds();
|
||||||
|
|
||||||
for (i = 0 ; i < num_mds ; ++i) {
|
for (i = 0 ; i < num_mds ; ++i) {
|
||||||
if (!PtlHandleIsEqual(mca_btl_portals4_module.send_md_hs[i], PTL_INVALID_HANDLE)) {
|
if (!PtlHandleIsEqual(mca_btl_portals4_module.send_md_hs[i], PTL_INVALID_HANDLE)) {
|
||||||
|
@ -173,7 +173,7 @@ ompi_btl_portals4_get_md(const void *ptr, ptl_handle_md_t *md_h, void **base_ptr
|
|||||||
#if OMPI_PORTALS4_MAX_MD_SIZE < OMPI_PORTALS4_MAX_VA_SIZE
|
#if OMPI_PORTALS4_MAX_MD_SIZE < OMPI_PORTALS4_MAX_VA_SIZE
|
||||||
int mask = (1ULL << (OMPI_PORTALS4_MAX_VA_SIZE - OMPI_PORTALS4_MAX_MD_SIZE + 1)) - 1;
|
int mask = (1ULL << (OMPI_PORTALS4_MAX_VA_SIZE - OMPI_PORTALS4_MAX_MD_SIZE + 1)) - 1;
|
||||||
int which = (((uintptr_t) ptr) >> (OMPI_PORTALS4_MAX_MD_SIZE - 1)) & mask;
|
int which = (((uintptr_t) ptr) >> (OMPI_PORTALS4_MAX_MD_SIZE - 1)) & mask;
|
||||||
*md_h = ompi_btl_portals4.send_md_hs[which];
|
*md_h = mca_btl_portals4_module.send_md_hs[which];
|
||||||
*base_ptr = (void*) (which * (1ULL << (OMPI_PORTALS4_MAX_MD_SIZE - 1)));
|
*base_ptr = (void*) (which * (1ULL << (OMPI_PORTALS4_MAX_MD_SIZE - 1)));
|
||||||
#else
|
#else
|
||||||
*md_h = mca_btl_portals4_module.send_md_h;
|
*md_h = mca_btl_portals4_module.send_md_h;
|
||||||
@ -183,7 +183,7 @@ ompi_btl_portals4_get_md(const void *ptr, ptl_handle_md_t *md_h, void **base_ptr
|
|||||||
|
|
||||||
|
|
||||||
static inline int
|
static inline int
|
||||||
ompi_btl_portals4_get_num_mds(void)
|
mca_btl_portals4_get_num_mds(void)
|
||||||
{
|
{
|
||||||
#if OMPI_PORTALS4_MAX_MD_SIZE < OMPI_PORTALS4_MAX_VA_SIZE
|
#if OMPI_PORTALS4_MAX_MD_SIZE < OMPI_PORTALS4_MAX_VA_SIZE
|
||||||
return (1 << (OMPI_PORTALS4_MAX_VA_SIZE - OMPI_PORTALS4_MAX_MD_SIZE + 1));
|
return (1 << (OMPI_PORTALS4_MAX_VA_SIZE - OMPI_PORTALS4_MAX_MD_SIZE + 1));
|
||||||
|
@ -418,8 +418,8 @@ static mca_btl_base_module_t** mca_btl_portals4_component_init(int *num_btls,
|
|||||||
#if OMPI_PORTALS4_MAX_MD_SIZE < OMPI_PORTALS4_MAX_VA_SIZE
|
#if OMPI_PORTALS4_MAX_MD_SIZE < OMPI_PORTALS4_MAX_VA_SIZE
|
||||||
{
|
{
|
||||||
int i;
|
int i;
|
||||||
int num_mds = ompi_btl_portals4_get_num_mds();
|
int num_mds = mca_btl_portals4_get_num_mds();
|
||||||
ptl_size_t size = 1ULL << OMPI_PORTALS4_MAX_MD_SIZE;
|
ptl_size_t size = (1ULL << OMPI_PORTALS4_MAX_MD_SIZE) - 1;
|
||||||
ptl_size_t offset_unit = (1ULL << OMPI_PORTALS4_MAX_MD_SIZE) / 2;
|
ptl_size_t offset_unit = (1ULL << OMPI_PORTALS4_MAX_MD_SIZE) / 2;
|
||||||
|
|
||||||
mca_btl_portals4_module.send_md_hs = malloc(sizeof(ptl_handle_md_t) * num_mds);
|
mca_btl_portals4_module.send_md_hs = malloc(sizeof(ptl_handle_md_t) * num_mds);
|
||||||
@ -439,7 +439,7 @@ static mca_btl_base_module_t** mca_btl_portals4_component_init(int *num_btls,
|
|||||||
md.start = (char*) (offset_unit * i);
|
md.start = (char*) (offset_unit * i);
|
||||||
md.length = (i - 1 == num_mds) ? size / 2 : size;
|
md.length = (i - 1 == num_mds) ? size / 2 : size;
|
||||||
md.options = 0;
|
md.options = 0;
|
||||||
md.eq_handle = mca_btl_portals4_module.send_eq_h;
|
md.eq_handle = mca_btl_portals4_module.recv_eq_h;
|
||||||
md.ct_handle = PTL_CT_NONE;
|
md.ct_handle = PTL_CT_NONE;
|
||||||
|
|
||||||
opal_output_verbose(50, ompi_btl_base_framework.framework_output,
|
opal_output_verbose(50, ompi_btl_base_framework.framework_output,
|
||||||
|
@ -50,7 +50,7 @@ static void
|
|||||||
mca_btl_portals4_frag_eager_destructor(mca_btl_portals4_frag_t* frag)
|
mca_btl_portals4_frag_eager_destructor(mca_btl_portals4_frag_t* frag)
|
||||||
{
|
{
|
||||||
if (PTL_INVALID_HANDLE == frag->me_h) {
|
if (PTL_INVALID_HANDLE == frag->me_h) {
|
||||||
/* PtlMDUnlink(frag->me_h); */
|
PtlMDRelease(frag->me_h);
|
||||||
frag->me_h = PTL_INVALID_HANDLE;
|
frag->me_h = PTL_INVALID_HANDLE;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -307,8 +307,8 @@ portals4_init_query(bool enable_progress_threads,
|
|||||||
{
|
{
|
||||||
int i;
|
int i;
|
||||||
int num_mds = ompi_coll_portals4_get_num_mds();
|
int num_mds = ompi_coll_portals4_get_num_mds();
|
||||||
ptl_size_t size = OMPI_PORTALS4_MAX_MD_SIZE;
|
ptl_size_t size = (1ULL << OMPI_PORTALS4_MAX_MD_SIZE) - 1;
|
||||||
ptl_size_t offset_unit = OMPI_PORTALS4_MAX_MD_SIZE / 2;
|
ptl_size_t offset_unit = (1ULL << OMPI_PORTALS4_MAX_MD_SIZE) / 2;
|
||||||
|
|
||||||
mca_coll_portals4_component.md_hs = malloc(sizeof(ptl_handle_md_t) * num_mds);
|
mca_coll_portals4_component.md_hs = malloc(sizeof(ptl_handle_md_t) * num_mds);
|
||||||
if (NULL == mca_coll_portals4_component.md_hs) {
|
if (NULL == mca_coll_portals4_component.md_hs) {
|
||||||
|
@ -351,7 +351,7 @@ ompi_mtl_portals4_component_init(bool enable_progress_threads,
|
|||||||
{
|
{
|
||||||
int i;
|
int i;
|
||||||
int num_mds = ompi_mtl_portals4_get_num_mds();
|
int num_mds = ompi_mtl_portals4_get_num_mds();
|
||||||
ptl_size_t size = 1ULL << OMPI_PORTALS4_MAX_MD_SIZE;
|
ptl_size_t size = (1ULL << OMPI_PORTALS4_MAX_MD_SIZE) - 1;
|
||||||
ptl_size_t offset_unit = (1ULL << OMPI_PORTALS4_MAX_MD_SIZE) / 2;
|
ptl_size_t offset_unit = (1ULL << OMPI_PORTALS4_MAX_MD_SIZE) / 2;
|
||||||
|
|
||||||
ompi_mtl_portals4.send_md_hs = malloc(sizeof(ptl_handle_md_t) * num_mds);
|
ompi_mtl_portals4.send_md_hs = malloc(sizeof(ptl_handle_md_t) * num_mds);
|
||||||
|
Загрузка…
x
Ссылка в новой задаче
Block a user