diff --git a/esmvaltool/utils/recipe_test_workflow/doc/source/user_guide/adding_a_recipe.rst b/esmvaltool/utils/recipe_test_workflow/doc/source/user_guide/adding_a_recipe.rst index 31b7b9a47d..4f2e5f414d 100644 --- a/esmvaltool/utils/recipe_test_workflow/doc/source/user_guide/adding_a_recipe.rst +++ b/esmvaltool/utils/recipe_test_workflow/doc/source/user_guide/adding_a_recipe.rst @@ -7,12 +7,40 @@ Adding a recipe to the Recipe Test Workflow (|RTW|) cylc stop "a_running_recipe_test_workflow" -#. Run your recipe with ESMValTool on your compute server for your site. You should - be able to find this in your site specific ``.cylc`` file in the site directory. +#. Locate your local .cylc file, found in (recipe_test_workflow/site). - cylc vip -O +#. Open it in your preferred code editor. -#. If the ``process`` task in the workflow has failed, then follow the next steps:: +#. Locate the `COMPUTE` section, it should look something like this:: + + [[COMPUTE]] + platform = + execution time limit = PT2M + [[[directives]]] + --wckey = RTW + --ntasks = {{ MAX_PARALLEL_TASKS }} + --mem = 2G + +#. Run your recipe with ESMValTool on your compute server for your site. + +#. If the recipe takes less than 10 minutes to run then it should be added as a + "fast" recipe in the ``flow.cylc`` file within the ``[task parameters]`` section. + If it takes longer than ten minutes it should be included in "medium". + +#. If either of the memory readings from your run are larger than the + values specified in the `COMPUTE` section, you need to add your recipe as + another `process` similar to:: + + [[process]] + # Actual: 0m31s, 2.5 GB on 2024-04-08. + execution time limit = PT2M + [[[directives]]] + --mem = 3G + +#. Run the recipe test workflow. + +#. The ``compare`` task will fail. These next steps should fix it, +and even if the ``compare`` task has passed, they must still be completed. #. Locate the workflow run folder of the workflow you just completed. @@ -42,54 +70,7 @@ Adding a recipe to the Recipe Test Workflow (|RTW|) cylc vip -O -#. The ``process`` task should now pass. If the ``compare`` task fails, these next steps should fix it, -and even if the ``compare`` task has passed, they must still be completed. - -#. Take note of how long the ``process`` step took to complete on cylc review. -This can be found in the ``job.time`` section of the task listed as ``process_``. - -#. Locate your local .cylc file, found in (recipe_test_workflow/site). - -#. Open it in your preferred code editor. - -#. Locate the `COMPUTE` section, it should look something like this:: - - [[COMPUTE]] - platform = - execution time limit = PT2M - [[[directives]]] - --wckey = RTW - --ntasks = {{ MAX_PARALLEL_TASKS }} - --mem = 2G - -#. Compare the `execution time limit` and --mem (memory) units here with the - readings you took locally. If your local readings do not exceed these, then - you have successfully added the recipe to the workflow, and can now commit - and push your changes. - - -#. If either of the time/memory readings from your local run are larger than the - values specified in the `COMPUTE` section, you need to add your recipe as - another `process` similar to:: - - [[process]] - # Actual: 0m31s, 2.5 GB on 2024-04-08. - execution time limit = PT2M - [[[directives]]] - --mem = 3G - -#. If the recipe takes less than 10 minutes to run then it should be added as a fast recipe. - If it takes longer than ten minutes it should be included in `medium`. - -#. The commented "Actual" reading should be the time/memory - reading you recorded from cylc review. - -#. Adjust the values for `execution_time` and `--mem` to be larger than the - values you recorded from cylc review. - -#. Stop any running workflows. -#. Run the recipe test workflow again. #. If the workflow succeeds then your recipe has successfully been added to the workflow. You can now commit your changes and push them onto GitHub.