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.
Этот коммит содержится в:
родитель
80fd24c948
Коммит
4d5fbc5955
@ -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.
|
||||||
*
|
*
|
||||||
|
Загрузка…
x
Ссылка в новой задаче
Block a user