1
1

name changes - starting to implement MPI group functionality.

This commit was SVN r734.
Этот коммит содержится в:
Rich Graham 2004-02-11 22:55:06 +00:00
родитель 76cef2da0e
Коммит fdb0a8a33f
5 изменённых файлов: 17 добавлений и 12 удалений

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

@ -39,7 +39,7 @@ int mca_pml_teg_add_comm(lam_communicator_t* comm)
if (NULL == pml_comm) {
return LAM_ERR_OUT_OF_RESOURCE;
}
mca_pml_ptl_comm_init_size(pml_comm, comm->c_remote_group->g_proc_count);
mca_pml_ptl_comm_init_size(pml_comm, comm->c_remote_group->grp_proc_count);
comm->c_pml_comm = pml_comm;
return LAM_SUCCESS;
}

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

@ -35,13 +35,13 @@ void mca_pml_teg_proc_destruct(mca_pml_proc_t*);
static inline mca_pml_proc_t* mca_pml_teg_proc_lookup_local(lam_communicator_t* comm, int rank)
{
lam_proc_t* proc = comm->c_local_group->g_procs[rank];
lam_proc_t* proc = comm->c_local_group->grp_proc_pointers[rank];
return proc->proc_pml;
}
static inline mca_pml_proc_t* mca_pml_teg_proc_lookup_remote(lam_communicator_t* comm, int rank)
{
lam_proc_t* proc = comm->c_remote_group->g_procs[rank];
lam_proc_t* proc = comm->c_remote_group->grp_proc_pointers[rank];
return proc->proc_pml;
}

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

@ -70,7 +70,7 @@ void mca_ptl_base_recv_request_match_wild(mca_ptl_base_recv_request_t* request)
{
lam_communicator_t *comm = request->super.req_communicator;
mca_pml_comm_t* pml_comm = comm->c_pml_comm;
int proc_count = comm->c_remote_group->g_proc_count;
int proc_count = comm->c_remote_group->grp_proc_count;
int proc;
/*

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

@ -63,12 +63,12 @@ static inline lam_communicator_t *lam_comm_lookup(uint32_t cid)
static inline lam_proc_t* lam_comm_lookup_peer(lam_communicator_t* comm, size_t peer_id)
{
#ifdef LAM_ENABLE_DEBUG
if(peer_id >= comm->c_remote_group->g_proc_count) {
if(peer_id >= comm->c_remote_group->grp_proc_count) {
lam_output(0, "lam_comm_lookup_peer: invalid peer index (%d)", peer_id);
return (lam_proc_t *) NULL;
}
#endif
return comm->c_remote_group->g_procs[peer_id];
return comm->c_remote_group->grp_proc_pointers[peer_id];
}

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

@ -9,12 +9,17 @@
#include "mpi/proc/proc.h"
struct lam_group_t {
char g_name[MPI_MAX_OBJECT_NAME];
/* Processes */
lam_proc_t **g_procs;
size_t g_proc_count;
/* base class */
lam_object_t super;
/* number of processes in group */
int grp_proc_count;
/* rank in group */
int grp_my_rank;
/* index in Fortran <-> C translation array */
int grp_f_to_c_index;
/* list of pointers to lam_proc_t structures for each
* process in the group */
lam_proc_t **grp_proc_pointers;
};
typedef struct lam_group_t lam_group_t;