1
1

Remove unused lock from the ompi_proc_t. This reduce the size of the ompi_proc_t

by 64 bytes.
Remove the useless pml_proc from the PML layer.

This commit was SVN r20157.
Этот коммит содержится в:
George Bosilca 2008-12-19 19:56:27 +00:00
родитель 80fd24c948
Коммит 4d5fbc5955
3 изменённых файлов: 4 добавлений и 24 удалений

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

@ -76,22 +76,6 @@ extern "C" {
typedef uint64_t mca_pml_sequence_t; typedef uint64_t mca_pml_sequence_t;
/**
* Base PML proc structure
*
* Base PML structure for storing proc information.
* Note that the mca_pml_proc_t structure can not be instantiated
* directly, so each PML *must* provide a class that inherits from
* this class and provides the necessary integration logic.
*/
struct mca_pml_proc_t {
opal_list_item_t super;
struct ompi_proc_t *proc_ompi; /**< back-pointer to ompi_proc_t */
opal_mutex_t proc_lock; /**< lock to protect against concurrent access */
};
typedef struct mca_pml_proc_t mca_pml_proc_t;
/** /**
* Base PML endpoint structure * Base PML endpoint structure
* *
@ -105,7 +89,7 @@ typedef struct mca_pml_proc_t mca_pml_proc_t;
* endpoint data during pml_add_procs and pml_del_procs. * endpoint data during pml_add_procs and pml_del_procs.
*/ */
struct mca_pml_endpoint_t; struct mca_pml_endpoint_t;
struct ompi_proc_t;
typedef enum { typedef enum {
MCA_PML_BASE_SEND_SYNCHRONOUS, MCA_PML_BASE_SEND_SYNCHRONOUS,

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

@ -58,7 +58,6 @@ void ompi_proc_construct(ompi_proc_t* proc)
{ {
proc->proc_bml = NULL; proc->proc_bml = NULL;
proc->proc_pml = NULL; proc->proc_pml = NULL;
OBJ_CONSTRUCT(&proc->proc_lock, opal_mutex_t);
/* By default all processors are supposedly having the same architecture as me. Thus, /* By default all processors are supposedly having the same architecture as me. Thus,
* by default we run in a homogeneous environment. Later, when the RTE can tell us * by default we run in a homogeneous environment. Later, when the RTE can tell us
@ -90,7 +89,6 @@ void ompi_proc_destruct(ompi_proc_t* proc)
OPAL_THREAD_LOCK(&ompi_proc_lock); OPAL_THREAD_LOCK(&ompi_proc_lock);
opal_list_remove_item(&ompi_proc_list, (opal_list_item_t*)proc); opal_list_remove_item(&ompi_proc_list, (opal_list_item_t*)proc);
OPAL_THREAD_UNLOCK(&ompi_proc_lock); OPAL_THREAD_UNLOCK(&ompi_proc_lock);
OBJ_DESTRUCT(&proc->proc_lock);
} }

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

@ -60,16 +60,14 @@ struct ompi_proc_t {
struct mca_bml_base_endpoint_t* proc_bml; struct mca_bml_base_endpoint_t* proc_bml;
/** architecture of this process */ /** architecture of this process */
uint32_t proc_arch; uint32_t proc_arch;
/** flags for this proc */
uint8_t proc_flags;
/** Base convertor for the proc described by this process */ /** Base convertor for the proc described by this process */
struct ompi_convertor_t* proc_convertor; struct ompi_convertor_t* proc_convertor;
/** Lock protecting data inside the given ompi_proc_t */
opal_mutex_t proc_lock;
/** A pointer to the name of this host - data is /** A pointer to the name of this host - data is
* actually stored in the RTE * actually stored in the RTE
*/ */
char* proc_hostname; char* proc_hostname;
/** flags for this proc */
uint8_t proc_flags;
}; };
typedef struct ompi_proc_t ompi_proc_t; typedef struct ompi_proc_t ompi_proc_t;
OBJ_CLASS_DECLARATION(ompi_proc_t); OBJ_CLASS_DECLARATION(ompi_proc_t);
@ -304,7 +302,7 @@ OMPI_DECLSPEC int ompi_proc_unpack(opal_buffer_t *buf,
/** /**
* Refresh the OMPI process subsystem * Refresh the OMPI process subsystem
* *
* Refrsh the Open MPI process subsystem. This function will update * Refresh the Open MPI process subsystem. This function will update
* the list of proc instances in the current MPI_COMM_WORLD with * the list of proc instances in the current MPI_COMM_WORLD with
* data from the run-time environemnt. * data from the run-time environemnt.
* *