OpenMPI
0.1.1
|
RML Framework maintenence interface. More...
#include "orte_config.h"
#include "opal/mca/mca.h"
#include "orte/mca/rml/rml.h"
#include "opal/dss/dss_types.h"
Go to the source code of this file.
Macros | |
#define | RML_SELECT_WRAPPER_PRIORITY -128 |
Functions | |
BEGIN_C_DECLS ORTE_DECLSPEC int | orte_rml_base_open (void) |
Open the RML framework. More... | |
ORTE_DECLSPEC int | orte_rml_base_select (void) |
Select an active RML component. More... | |
ORTE_DECLSPEC int | orte_rml_base_close (void) |
Close the RML framework. More... | |
ORTE_DECLSPEC int | orte_rml_base_comm_start (void) |
Post receive to get updates regarding contact information. More... | |
ORTE_DECLSPEC int | orte_rml_base_comm_stop (void) |
Stop receiving contact information updates. More... | |
int | orte_rml_base_null_send (struct orte_process_name_t *peer, struct iovec *msg, int count, int tag, int flags) |
int | orte_rml_base_null_send_nb (struct orte_process_name_t *peer, struct iovec *msg, int count, orte_rml_tag_t tag, int flags, orte_rml_callback_fn_t cbfunc, void *cbdata) |
int | orte_rml_base_null_send_buffer (struct orte_process_name_t *peer, struct opal_buffer_t *buffer, orte_rml_tag_t tag, int flags) |
int | orte_rml_base_null_send_buffer_nb (struct orte_process_name_t *peer, struct opal_buffer_t *buffer, orte_rml_tag_t tag, int flags, orte_rml_buffer_callback_fn_t cbfunc, void *cbdata) |
int | orte_rml_base_null_recv (struct orte_process_name_t *peer, struct iovec *msg, int count, orte_rml_tag_t tag, int flags) |
int | orte_rml_base_null_recv_nb (struct orte_process_name_t *peer, struct iovec *msg, int count, orte_rml_tag_t tag, int flags, orte_rml_callback_fn_t cbfunc, void *cbdata) |
int | orte_rml_base_null_recv_buffer (struct orte_process_name_t *peer, struct opal_buffer_t *buf, orte_rml_tag_t tag, int flags) |
int | orte_rml_base_null_recv_buffer_nb (struct orte_process_name_t *peer, orte_rml_tag_t tag, int flags, orte_rml_buffer_callback_fn_t cbfunc, void *cbdata) |
int | orte_rml_base_null_recv_cancel (orte_process_name_t *peer, orte_rml_tag_t tag) |
Variables | |
ORTE_DECLSPEC int | orte_rml_base_output |
Output stream for RML debugging. More... | |
ORTE_DECLSPEC opal_list_t | orte_rml_base_components |
List of components that are available to the RML. More... | |
ORTE_DECLSPEC orte_rml_component_t * | orte_rml_component |
Component structure for the selected RML component. More... | |
RML Framework maintenence interface.
Interface for starting / stopping / controlling the RML framework, as well as support for modifying RML datatypes.
ORTE_DECLSPEC int orte_rml_base_close | ( | void | ) |
Close the RML framework.
Close the RML framework, releasing all resources associated with the framework interface. Also closes the active component used during the application.
ORTE_SUCCESS | Framework successfully shut down |
References OBJ_DESTRUCT, and orte_rml_base_output.
ORTE_DECLSPEC int orte_rml_base_comm_start | ( | void | ) |
Post receive to get updates regarding contact information.
Post a non-blocking receive (likely during orte_init()) to receive updated contact information from the HNP when it becomes available. This should be called in any process that needs such updates, and the receive will continue to get update callbacks until orte_rml_base_comm_stop() is called.
ORTE_SUCCESS | Receive successfully started |
ORTE_ERROR | An unknown error occurred |
References orte_rml, ORTE_RML_NON_PERSISTENT, and orte_rml_module_t::recv_buffer_nb.
ORTE_DECLSPEC int orte_rml_base_comm_stop | ( | void | ) |
Stop receiving contact information updates.
Shut down the receive posted during orte_rml_base_comm_start(), likely during orte_finalize().
ORTE_SUCCESS | Receive succesffully cancelled. |
References orte_rml, and orte_rml_module_t::recv_cancel.
BEGIN_C_DECLS ORTE_DECLSPEC int orte_rml_base_open | ( | void | ) |
Open the RML framework.
Open the RML framework. Loads all available RML components and runs their open functions.
ORTE_SUCCESS | Components successfully loaded |
ORTE_ERROR | An unknown error occurred |
References mca_base_param_reg_string_name(), OBJ_CONSTRUCT, opal_output_open(), and orte_rml_base_output.
Referenced by orte_ess_base_orted_setup().
ORTE_DECLSPEC int orte_rml_base_select | ( | void | ) |
Select an active RML component.
Select an RML component from the list of frameworks that were opened during orte_rml_base_open(). The orte_rml_base_select() function will fill in the orte_rml structure so that all functions in the interface exist. Note that there are still calling restrictions at that point (see the documentation for orte_rml_component_init_fn_t).
All components that are not selected will be closed during this call.
ORTE_SUCCESS | Components successfully selected |
ORTE_ERROR | An unknown error occurred |
References orte_rml_module_t::finalize, mca_base_param_reg_string_name(), mca_base_component_2_0_0_t::mca_component_name, mca_base_component_2_0_0_t::mca_type_name, OBJ_RELEASE, opal_list_get_end(), opal_list_get_first(), opal_list_get_next, opal_list_remove_item(), opal_output_verbose(), and orte_rml_base_output.
Referenced by orte_ess_base_orted_setup().
ORTE_DECLSPEC opal_list_t orte_rml_base_components |
List of components that are available to the RML.
List of components that are currently available to the RML framework. Useable between calls to orte_rml_base_open() and orte_rml_base_close().
ORTE_DECLSPEC int orte_rml_base_output |
Output stream for RML debugging.
Output stream for the opal_output() code intended for RML output. It will be have its verbosity set according to the MCA parameter rml_base_verbose. Useable between call to orte_rml_base_open() and orte_rml_base_close().
Referenced by orte_rml_base_close(), orte_rml_base_open(), orte_rml_base_select(), and orte_rml_base_update_contact_info().
ORTE_DECLSPEC orte_rml_component_t* orte_rml_component |
Component structure for the selected RML component.
Component structure pointer for the currently selected RML component. Useable between calls to orte_rml_base_select() and orte_rml_base_close().