A new agent called the M is used to manage workflows in the DIET architecture. This agent receives requests from clients containing the description of a workflow in a specific language (the M XML workflow language for DAGs). The role of the M is to determine how to schedule the tasks contained in the workflow in order to follow the precedence constraints between tasks, and how to map the tasks to appropriate ressources in the DIET hierarchy.
The execution of the individual tasks is actually delegated by the M to the client that submitted the workflow. After submitting the workflow, the client is put in a waiting mode and it will receive individual requests from the M to execute each task of the workflow. Therefore all the data transfers are done only from the client to the SeD s and do not transit through the M.
When all tasks are completed, the M will send a release signal to the client which will then retrieve the results if the execution was successful.
To use the M, the client configuration file must include the parameter MADAGNAME with the appropriate name.
When the client uses a functional workflow (in Gwendia language) the DIET client library provides the logic for instanciating the workflow, generating the DAGs and sending them to the M agent. Note that when several DAGs are generated they are usually not independent as some data generated by one DAG may be used by another one.