1
1
This commit was SVN r15953.
Этот коммит содержится в:
George Bosilca 2007-08-23 19:48:04 +00:00
родитель db19f927e8
Коммит daaf5a9bf1

Просмотреть файл

@ -628,6 +628,10 @@ int mqs_image_has_queues (mqs_image *image, char **message)
i_info->ompi_pointer_array_t.offset.number_free = mqs_field_offset(qh_type, "number_free");
i_info->ompi_pointer_array_t.offset.size = mqs_field_offset(qh_type, "size");
i_info->ompi_pointer_array_t.offset.addr = mqs_field_offset(qh_type, "addr");
printf( "ompi_pointer_array_t size %d, offset size %d offset addr %d\n",
i_info->ompi_pointer_array_t.size,
i_info->ompi_pointer_array_t.offset.size,
i_info->ompi_pointer_array_t.offset.addr );
}
{
mqs_type* qh_type = mqs_find_type( image, "ompi_communicator_t", mqs_lang_c );
@ -635,15 +639,18 @@ int mqs_image_has_queues (mqs_image *image, char **message)
missing_in_action = "ompi_communicator_t";
goto type_missing;
}
printf( "ompi_communicator_t type %p\n", (void*)qh_type );
i_info->ompi_communicator_t.size = mqs_sizeof(qh_type);
i_info->ompi_communicator_t.offset.c_name = mqs_field_offset(qh_type, "c_name");
i_info->ompi_communicator_t.offset.c_contextid = mqs_field_offset(qh_type, "c_contextid");
i_info->ompi_communicator_t.offset.c_my_rank = mqs_field_offset(qh_type, "c_my_rank" );
i_info->ompi_communicator_t.offset.c_local_group = mqs_field_offset(qh_type, "c_local_group" );
printf( "Communicator structure size %d, offset c_contextid %d offset c_my_rank %d\n",
printf( "Communicator structure size %d, offset c_contextid %d \n"
" offset c_my_rank %d offset local_group %d\n",
i_info->ompi_communicator_t.size,
i_info->ompi_communicator_t.offset.c_contextid,
i_info->ompi_communicator_t.offset.c_my_rank );
i_info->ompi_communicator_t.offset.c_my_rank,
i_info->ompi_communicator_t.offset.c_local_group );
}
{
mqs_type* qh_type = mqs_find_type( image, "ompi_group_t", mqs_lang_c );
@ -920,8 +927,8 @@ static int rebuild_communicator_list (mqs_process *proc)
commcount++;
/* Now let's grab the data we want from inside */
DEBUG(VERBOSE_GENERAL, ("Retrieve context_id from 0x%llx and local_rank from 0x%llx\n",
comm_ptr + i_info->ompi_communicator_t.offset.c_contextid,
comm_ptr + i_info->ompi_communicator_t.offset.c_my_rank));
(long long)(comm_ptr + i_info->ompi_communicator_t.offset.c_contextid),
(long long)(comm_ptr + i_info->ompi_communicator_t.offset.c_my_rank)));
context_id = fetch_int( proc,
comm_ptr + i_info->ompi_communicator_t.offset.c_contextid,
p_info );
@ -952,8 +959,8 @@ static int rebuild_communicator_list (mqs_process *proc)
}
mqs_fetch_data( proc, comm_ptr + i_info->ompi_communicator_t.offset.c_name,
64, old->comm_info.name );
assert( old->comm_info.unique_id == remote_comm.unique_id);
assert( old->comm_info.local_rank == remote_comm.local_rank);
assert( old->comm_info.unique_id == context_id );
assert( old->comm_info.local_rank == local_rank );
if( NULL != old->group ) {
old->comm_info.size = old->group->entries;
}