1
1

Change it so that different components in orte use unique rml tags

This commit was SVN r15881.
Этот коммит содержится в:
Tim Prins 2007-08-16 14:02:35 +00:00
родитель 4b7a6cd922
Коммит 5a795128af
5 изменённых файлов: 17 добавлений и 13 удалений

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

@ -758,12 +758,12 @@ static int ompi_comm_allreduce_intra_oob (int *inbuf, int *outbuf,
}
if ( send_first ) {
rc = orte_rml.send_buffer(remote_leader, sbuf, 0, 0);
rc = orte_rml.recv_buffer(remote_leader, rbuf, 0, 0);
rc = orte_rml.send_buffer(remote_leader, sbuf, ORTE_RML_TAG_COMM_CID_INTRA, 0);
rc = orte_rml.recv_buffer(remote_leader, rbuf, ORTE_RML_TAG_COMM_CID_INTRA, 0);
}
else {
rc = orte_rml.recv_buffer(remote_leader, rbuf, 0, 0);
rc = orte_rml.send_buffer(remote_leader, sbuf, 0, 0);
rc = orte_rml.recv_buffer(remote_leader, rbuf, ORTE_RML_TAG_COMM_CID_INTRA, 0);
rc = orte_rml.send_buffer(remote_leader, sbuf, ORTE_RML_TAG_COMM_CID_INTRA, 0);
}
if (ORTE_SUCCESS != (rc = orte_dss.unpack(rbuf, outbuf, &size_count, ORTE_INT))) {

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

@ -322,7 +322,7 @@ static int mca_btl_mvapi_endpoint_send_connect_data(mca_btl_base_endpoint_t* end
}
/* send to endpoint */
rc = orte_rml.send_buffer_nb(&endpoint->endpoint_proc->proc_guid, buffer, ORTE_RML_TAG_DYNAMIC-1, 0,
rc = orte_rml.send_buffer_nb(&endpoint->endpoint_proc->proc_guid, buffer, ORTE_RML_TAG_MVAPI, 0,
mca_btl_mvapi_endpoint_send_cb, NULL);
@ -694,7 +694,7 @@ void mca_btl_mvapi_post_recv()
{
orte_rml.recv_buffer_nb(
ORTE_NAME_WILDCARD,
ORTE_RML_TAG_DYNAMIC-1,
ORTE_RML_TAG_MVAPI,
ORTE_RML_PERSISTENT,
mca_btl_mvapi_endpoint_recv,
NULL);

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

@ -39,8 +39,6 @@ typedef enum {
ENDPOINT_CONNECT_ACK
} connect_message_type_t;
#define OOB_TAG (ORTE_RML_TAG_DYNAMIC - 1)
static int oob_init(void);
static int oob_start_connect(mca_btl_base_endpoint_t *e);
static int oob_finalize(void);
@ -87,7 +85,7 @@ static int oob_init(void)
int rc;
rc = orte_rml.recv_buffer_nb(ORTE_NAME_WILDCARD,
OOB_TAG,
ORTE_RML_TAG_OPENIB,
ORTE_RML_PERSISTENT,
rml_recv_cb,
NULL);
@ -124,7 +122,7 @@ static int oob_start_connect(mca_btl_base_endpoint_t *endpoint)
*/
static int oob_finalize(void)
{
orte_rml.recv_cancel(ORTE_NAME_WILDCARD, OOB_TAG);
orte_rml.recv_cancel(ORTE_NAME_WILDCARD, ORTE_RML_TAG_OPENIB);
return OMPI_SUCCESS;
}
@ -465,7 +463,7 @@ static int send_connect_data(mca_btl_base_endpoint_t* endpoint,
/* send to remote endpoint */
rc = orte_rml.send_buffer_nb(&endpoint->endpoint_proc->proc_guid,
buffer, OOB_TAG, 0,
buffer, ORTE_RML_TAG_OPENIB, 0,
rml_send_cb, NULL);
if (ORTE_SUCCESS != rc) {
ORTE_ERROR_LOG(rc);

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

@ -491,7 +491,7 @@ static int mca_btl_udapl_start_connect(mca_btl_base_endpoint_t* endpoint)
/* Send the buffer */
rc = orte_rml.send_buffer_nb(&endpoint->endpoint_proc->proc_guid, buf,
ORTE_RML_TAG_DYNAMIC - 1, 0, mca_btl_udapl_endpoint_send_cb, NULL);
ORTE_RML_TAG_UDAPL, 0, mca_btl_udapl_endpoint_send_cb, NULL);
if(0 > rc) {
ORTE_ERROR_LOG(rc);
return rc;
@ -558,7 +558,7 @@ void mca_btl_udapl_endpoint_recv(int status, orte_process_name_t* endpoint,
void mca_btl_udapl_endpoint_post_oob_recv(void)
{
orte_rml.recv_buffer_nb(ORTE_NAME_WILDCARD, ORTE_RML_TAG_DYNAMIC-1,
orte_rml.recv_buffer_nb(ORTE_NAME_WILDCARD, ORTE_RML_TAG_UDAPL,
ORTE_RML_PERSISTENT, mca_btl_udapl_endpoint_recv, NULL);
}

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

@ -80,6 +80,12 @@ BEGIN_C_DECLS
#define ORTE_RML_TAG_RML_ROUTE 24
#define ORTE_RML_TAG_UDAPL 25
#define ORTE_RML_TAG_OPENIB 26
#define ORTE_RML_TAG_MVAPI 27
#define ORTE_RML_TAG_COMM_CID_INTRA 28
/* For CRCP Coord Component */
#define OMPI_CRCP_COORD_BOOKMARK_TAG 4242