Fixes trac:4143
After IM with Nathan, apply patch from ticket after verification by Paul Hargrove that it fixes the problem on non-x86 32-bit platforms Verified by Paul, RM-approved cmr=v1.7.4:reviewer=ompi-gk1.7 This commit was SVN r30411. The following Trac tickets were found above: Ticket 4143 --> https://svn.open-mpi.org/trac/ompi/ticket/4143
Этот коммит содержится в:
родитель
c6c10f47b8
Коммит
b32556e6dc
@ -1,6 +1,8 @@
|
||||
/*
|
||||
* Copyright (c) 2009-2012 Oak Ridge National Laboratory. All rights reserved.
|
||||
* Copyright (c) 2009-2012 Mellanox Technologies. All rights reserved.
|
||||
* Copyright (c) 2014 Los Alamos National Security, LLC. All rights
|
||||
* reserved.
|
||||
* $COPYRIGHT$
|
||||
*
|
||||
* Additional copyrights may follow
|
||||
@ -23,7 +25,7 @@
|
||||
int bcol_basesmuma_progress(void)
|
||||
{
|
||||
/* local variables */
|
||||
volatile int64_t *cntr;
|
||||
volatile int32_t *cntr;
|
||||
mca_bcol_basesmuma_component_t *cs = &mca_bcol_basesmuma_component;
|
||||
|
||||
/* check to see if release of memory blocks needs to be done */
|
||||
@ -54,12 +56,12 @@ int bcol_basesmuma_progress(void)
|
||||
ctl_buffs_mgmt[index].bank_gen_counter);
|
||||
*/
|
||||
|
||||
cntr= (volatile int64_t *) &(item_ptr->coll_buff->
|
||||
cntr= (volatile int32_t *) &(item_ptr->coll_buff->
|
||||
ctl_buffs_mgmt[index].bank_gen_counter);
|
||||
item_ptr=(sm_nbbar_desc_t*)opal_list_remove_item((opal_list_t *)list,
|
||||
( opal_list_item_t *)item_ptr);
|
||||
/* increment the generation number */
|
||||
OPAL_THREAD_ADD64(cntr,1);
|
||||
OPAL_THREAD_ADD32(cntr,1);
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -401,7 +401,7 @@ struct mca_coll_ml_descriptor_t {
|
||||
ompi_request_t super; /*base request*/
|
||||
struct ompi_datatype_t *datatype; /*ompi datatype*/
|
||||
size_t count; /*count of user datatype elements*/
|
||||
uint64_t sequence_num; /*sequence number for collective operation*/
|
||||
uint32_t sequence_num; /*sequence number for collective operation*/
|
||||
size_t frags_limit; /*upper limit on # of fragments*/
|
||||
size_t frags_start; /*number of fragments started*/
|
||||
|
||||
@ -679,10 +679,10 @@ struct mca_coll_ml_module_t {
|
||||
int max_fn_calls;
|
||||
|
||||
/* collective sequence number - unique id for barrier type operations */
|
||||
int64_t no_data_collective_sequence_num;
|
||||
int32_t no_data_collective_sequence_num;
|
||||
|
||||
/* collective sequence number - unique id for each collective */
|
||||
int64_t collective_sequence_num;
|
||||
int32_t collective_sequence_num;
|
||||
|
||||
/** ompi free list of full message descriptors **/
|
||||
ompi_free_list_t message_descriptors;
|
||||
@ -994,7 +994,7 @@ void mca_coll_ml_abort_ml(char *message);
|
||||
s_offset, r_offset, frag_len, buf) \
|
||||
do { \
|
||||
op->variable_fn_params.sequence_num = \
|
||||
OPAL_THREAD_ADD64(&((ml)->collective_sequence_num), 1); \
|
||||
OPAL_THREAD_ADD32(&((ml)->collective_sequence_num), 1); \
|
||||
op->variable_fn_params.count = cnt; \
|
||||
op->variable_fn_params.dtype = datatype; \
|
||||
op->variable_fn_params.buffer_index = (b_desc)->buffer_index; \
|
||||
|
@ -65,7 +65,7 @@ static int mca_coll_ml_barrier_launch(mca_coll_ml_module_t *ml_module,
|
||||
coll_op->variable_fn_params.buffer_index = src_buffer_desc->buffer_index;
|
||||
|
||||
coll_op->variable_fn_params.sequence_num =
|
||||
OPAL_THREAD_ADD64(&(ml_module->collective_sequence_num), 1);
|
||||
OPAL_THREAD_ADD32(&(ml_module->collective_sequence_num), 1);
|
||||
|
||||
/* Pointer to a coll finalize function */
|
||||
coll_op->process_fn = NULL;
|
||||
|
@ -773,7 +773,7 @@ int mca_coll_ml_bcast_sequential_root(void *buf, int count, struct ompi_datatype
|
||||
|
||||
/* Fill in the function arguments */
|
||||
coll_op->variable_fn_params.sequence_num =
|
||||
OPAL_THREAD_ADD64(&(ml_module->collective_sequence_num), 1);
|
||||
OPAL_THREAD_ADD32(&(ml_module->collective_sequence_num), 1);
|
||||
coll_op->variable_fn_params.count = count;
|
||||
coll_op->variable_fn_params.dtype = dtype;
|
||||
|
||||
|
Загрузка…
x
Ссылка в новой задаче
Block a user