Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
update doc for asynchronous send
authorAugustin Degomme <degomme@idpann.imag.fr>
Mon, 12 Nov 2012 14:37:54 +0000 (15:37 +0100)
committerAugustin Degomme <degomme@idpann.imag.fr>
Mon, 12 Nov 2012 14:37:54 +0000 (15:37 +0100)
doc/user_guide/doxygen/options.doc
src/msg/msg_mailbox.c

index fc97106..1901e91 100644 (file)
@@ -234,6 +234,18 @@ the same network card through the \b network/sender_gap item. This
 is still under investigation as of writting, and the default value is
 to wait 0 seconds between emissions (no gap applied).
 
+\subsubsection options_model_network_asyncsend Simulating asyncronous send
+
+(this configuration item is experimental and may change or disapear)
+
+It is possible to specify that messages below a certain size will be sent 
+as soon as the call to MPI_Send is issued, without waiting for the 
+correspondant receive. This threshold can be configured through the 
+\b smpi/async_small_thres item. The default value is 0. This behavior can also be 
+manually set for MSG mailboxes, by setting the receiving mode of the mailbox 
+with a call to \ref MSG_mailbox_set_async . For MSG, all messages sent to this 
+mailbox will have this behavior, so consider using two mailboxes if needed. 
+
 \subsubsection options_pls Configuring packet-level pseudo-models
 
 When using the packet-level pseudo-models, several specific
@@ -571,6 +583,7 @@ It can be done by using XBT. Go to \ref XBT_log for more details.
 - \c smpi/running_power: \ref options_smpi_bench
 - \c smpi/display_timing: \ref options_smpi_timing
 - \c smpi/cpu_threshold: \ref options_smpi_bench
+- \c smpi/async_small_thres: \ref options_model_network_asyncsend
 
 - \c path: \ref options_generic_path
 - \c verbose-exit: \ref options_generic_exit
index 1edc135..8461bf9 100644 (file)
@@ -56,6 +56,17 @@ msg_mailbox_t MSG_mailbox_get_by_alias(const char *alias)
   return mailbox;
 }
 
+/** \ingroup msg_mailbox_management
+ * \brief Set the mailbox to receive in asynchronous mode
+ *
+ * All messages sent to this mailbox will be transferred to 
+ * the receiver without waiting for the receive call. 
+ * The receive call will still be necessary to use the received data.
+ * If there is a need to receive some messages asynchronously, and some not, 
+ * two different mailboxes should be used.
+ *
+ * \param alias The name of the mailbox 
+ */
 void MSG_mailbox_set_async(const char *alias){
   msg_mailbox_t mailbox = MSG_mailbox_get_by_alias(alias);