Open MPI logo

Open MPI Development Mailing List Archives

  |   Home   |   Support   |   FAQ   |   all Development mailing list

Subject: Re: [OMPI devel] RML Send
From: Leonardo Fialho (lfialho_at_[hidden])
Date: 2008-06-17 17:35:58

Hi Ralph,

1) Yes, I'm using ORTE_RML_TAG_DAEMON with a new "command" that I
defined in "odls_types.h".
2) I'm packing and unpacking variables like OPAL_INT, OPAL_SIZE, ...
3) I'm not blocking the "process_commands" function with long code.
4) To know the daemon's vpid and jobid I used the same jobid from the
app (in this solution, I can be changed) and the vpid is ordered
sequentially (0 for mpirun and 1 to N for the orted's).

The problems is: I need to send a buffered data, and I don't know the
type of this data. I'm trying to use OPAL_NULL and OPAL_DATA_VALUE to
send it but I got no success.... :(

Thanks in advance,
Leonardo Fialho

Ralph H Castain escribió:
> I'm not sure exactly how you are trying to do this, but the usual procedure
> would be:
> 1. call opal_dss.pack(*buffer, *data, #data, data_type) for each thing you
> want to put in the buffer. So you might call this to pack a string:
> opal_dss.pack(*buffer, &string, 1, OPAL_STRING);
> 2. once you have everything packed into the buffer, you send the buffer with
> orte_rml.send_buffer(*dest, *buffer, dest_tag, 0);
> What you will need is a tag that the daemon is listening on that won't
> interfere with its normal operations - i.e., what you send won't get held
> forever waiting to get serviced, and your servicing won't block us from
> responding to a ctrl-c. You can probably use ORTE_RML_TAG_DAEMON, but you
> need to ensure you don't block anything.
> BTW: how is the app figuring out the name of the remote daemon? The proc
> will have access to the daemon's vpid (assuming it knows the nodename where
> the daemon is running) in the ESS, but not the jobid - I assume you are
> using some method to compute the daemon jobid from the apps?
> On 6/17/08 12:08 PM, "Leonardo Fialho" <lfialho_at_[hidden]> wrote:
>> Hi All,
>> I´m using RML to send log messages from a PML to a ORTE daemon (located
>> in another node). I got success sending the message header, but now I
>> need to send the message data (buffer). How can I do it? The problem is
>> what data type I need to use for packing/unpacking? I tried
>> OPAL_DATA_VALUE but don´t get success...
>> Thanks,
> _______________________________________________
> devel mailing list
> devel_at_[hidden]

Leonardo Fialho
Computer Architecture and Operating Systems Department - CAOS
Universidad Autonoma de Barcelona - UAB
ETSE, Edifcio Q, QC/3088
Phone: +34-93-581-2888
Fax: +34-93-581-2478