diff --git a/docs/exercise1.rst b/docs/exercise1.rst index dcebb8a807c788bf94b2e282afd66539730eadb8..5a7436cc5dfcdbd2b511fe04c6f38fb77e280f1b 100644 --- a/docs/exercise1.rst +++ b/docs/exercise1.rst @@ -15,18 +15,18 @@ For example, if you decide to use YAML:: cp ../../problems/1_control_flow/*.yaml . -One by one, check the three sequential workflows **f1_pitstop_seq_wrong_1.yaml**, -**f1_pitstop_seq_wrong_2.yaml**, and **f1_pitstop_seq_wrong_3.yaml** for errors, -and then find and correct the errors. +Then, for each sequential workflow (**f1_pitstop_seq_wrong_1.yaml**, +**f1_pitstop_seq_wrong_2.yaml**, and **f1_pitstop_seq_wrong_3.yaml**) carry out +the following steps: -Add the workflow to the LaunchPad and query its state. - -Execute the workflow with the command:: - - rlaunch singleshot - -i.e. run one Firework at a time. After running every Firework, monitor the -output and the states of the Fireworks until the workflow is completed. +* Inspect the workflow for errors and correct the errors +* Add the workflow to the LaunchPad checking again for errors +* Create a workflow graph and make sure it is correct; delete the workflow if + necessary, correct it in the workflow file and add it again to launchpad +* Query the workflow state +* Execute the workflow in *singleshot* mode, i.e. run one Firework at a time. + After running every Firework, monitor the output and the states of the Fireworks + until the workflow is completed. Problem 1.2 @@ -34,4 +34,13 @@ Problem 1.2 Repeat the steps of **Problem 1.1** for the parallel version of the workflow: **f1_pitstop_par_wrong_1.json**, **f1_pitstop_par_wrong_2.json** and -**f1_pitstop_par_wrong_3.json**. +**f1_pitstop_par_wrong_3.json**. Try different modes to launch the workflows: + +* ``rlaunch singleshot``: launch one firework from launchpad +* ``rlaunch rapidfire``: launch many fireworks in a sequence +* ``rlaunch multi <N>``: launch N fireworks in parallel, choose N from [2, 3, 4] + +Add the flag *--help* to each of the launch modes to see all available options. +For the multi mode, try to find N and the parameters nlaunches, sleep and timeout +for which the best speedup can be achieved using the command:: + time rlaunch multi <N> --nlaunches <L> --sleep <sec> --timeout <sec> \ No newline at end of file