Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
msg now has its own module file ; New doxygenification of the example
authormquinson <mquinson@48e7efb5-ca39-0410-a469-dd3cf9ba447f>
Thu, 28 Apr 2005 00:18:30 +0000 (00:18 +0000)
committermquinson <mquinson@48e7efb5-ca39-0410-a469-dd3cf9ba447f>
Thu, 28 Apr 2005 00:18:30 +0000 (00:18 +0000)
git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/simgrid/simgrid/trunk@1233 48e7efb5-ca39-0410-a469-dd3cf9ba447f

doc/module-msg.doc [new file with mode: 0644]

diff --git a/doc/module-msg.doc b/doc/module-msg.doc
new file mode 100644 (file)
index 0000000..9770083
--- /dev/null
@@ -0,0 +1,136 @@
+/** \addtogroup MSG_API 
+
+  \section MSG_funct Offered functionnalities
+   - \ref m_process_management
+   - \ref m_datatypes_management
+   - \ref m_host_management
+   - \ref m_task_management
+   - \ref msg_gos_functions
+   - \ref m_channel_management
+   - \ref msg_easier_life
+   - \ref msg_simulation
+
+  \section MSG_examples Examples of use
+   - \ref MSG_ex_master_slave
+*/
+
+/**     \addtogroup m_datatypes_management
+        \ingroup MSG_API  */
+/**     \addtogroup m_process_management
+        \ingroup MSG_API  */
+/**     \addtogroup m_host_management
+        \ingroup MSG_API  */
+/**     \addtogroup m_task_management
+        \ingroup MSG_API  */
+/**     \addtogroup msg_gos_functions
+        \ingroup MSG_API  */
+/**     \addtogroup m_channel_management
+        \ingroup MSG_API  */
+/**     \addtogroup msg_easier_life
+        \ingroup MSG_API  */
+/**     \addtogroup msg_simulation
+        \ingroup MSG_API  */
+
+/** \page MSG_ex_master_slave Master/slave application
+
+    <center>[\ref MSG_API]</center>
+    
+    Simulation of a master-slave application using a realistic platform and
+    an external description of the deployment. 
+
+    \section MSG_ex_ms_TOC Table of contents:
+    
+     - \ref MSG_ext_ms_code
+       - \ref MSG_ext_ms_preliminary
+       - \ref MSG_ext_ms_master
+       - \ref MSG_ext_ms_slave
+       - \ref MSG_ext_ms_forwarder
+       - \ref MSG_ext_ms_core
+       - \ref MSG_ext_ms_main
+     - \ref MSG_ext_ms_helping
+       - \ref MSG_ext_ms_application 
+       - \ref MSG_ext_ms_platform
+     
+    <hr> 
+    
+    \dontinclude msg/msg_test.c
+    
+    \section MSG_ext_ms_code Code of the application
+    
+    \subsection MSG_ext_ms_preliminary Preliminary declarations
+    
+    \skip include
+    \until printf
+    \until }
+    
+    \subsection MSG_ext_ms_master Master code
+    
+      This function has to be assigned to a m_process_t that will behave as the master.
+      It should not be called directly but either given as a parameter to
+      #MSG_process_create() or registered as a public function through 
+      #MSG_function_register() and then automatically assigned to a process through
+      #MSG_launch_application().
+      C style arguments (argc/argv) are interpreted as:
+       - the number of tasks to distribute
+       - the computation size of each task
+       - the size of the files associated to each task
+       - a list of host that will accept those tasks.
+
+      Tasks are dumbly sent in a round-robin style.
+      
+      \until end_of_master
+    
+    \subsection MSG_ext_ms_slave Slave code
+    
+      This function has to be assigned to a #m_process_t that has to behave as a slave.
+      Just like #master(), it should not be called directly.
+
+      This function keeps waiting for tasks and executes them as it receives them.
+      
+      \until end_of_slave
+
+   \subsection MSG_ext_ms_forwarder Forwarder code
+   
+      This function has to be assigned to a #m_process_t that has to behave as a forwarder.
+      Just like #master(), it should not be called directly.
+
+      C style arguments (argc/argv) are interpreted as a list of host
+      that will accept those tasks.
+
+      This function keeps waiting for tasks and dispathes them to its slaves.
+
+   \subsection MSG_ext_ms_core Simulation core
+
+      This function is the core of the simulation and is divided only into 3 parts
+      thanks to MSG_create_environment() and MSG_launch_application().
+         -# Simulation settings : MSG_create_environment() creates a realistic 
+            environment
+         -# Application deployment : create the agents on the right locations with  
+            MSG_launch_application()
+         -# The simulation is run with #MSG_main()
+        
+      Its arguments are:
+       - <i>platform_file</i>: the name of a file containing an valid surfxml platform description.
+       - <i>application_file</i>: the name of a file containing a valid surfxml application description
+       
+      \until end_of_test_all
+      
+   \subsection MSG_ext_ms_main Main() function
+   
+      This initializes MSG, runs a simulation, and free all data-structures created by MSG.
+      
+      \until end_of_main
+
+   \section MSG_ext_ms_helping Helping files
+
+   \subsection MSG_ext_ms_application Example of application file
+
+   \include msg/small_deployment.xml
+
+   \subsection MSG_ext_ms_platform Example of platform file
+   
+   \include msg/small_platform.xml
+   
+*/