-
Notifications
You must be signed in to change notification settings - Fork 134
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
feat: choose worker recipes by depth level (#950)
In an attempt to try a more efficient process for doing bulk builds, I added an option `--subdag-depth` (int, default: None) that will only assign recipes with a certain dependency depth to the bulk workers. Only nodes of a certain depth will be built (i.e., 0: only root nodes, 1: only nodes with parents that are root nodes, etc.). The idea is to allow someone to build all recipes that have no dependencies in the DAG, then remove those from the DAG and build the new "root" recipes. The existing behavior will still work if `--subdag-depth` is not included. Currently, manual intervention is needed to do the Bioconductor bulk update because the recipes are assigned unevenly to the workers and some child nodes are dependent on recipes being built on a different worker. This new approach also requires manual intervention to increment `--subdag-depth` after the previous depth level is done building, but hopefully will result in fewer failures from the chain of dependencies and less time spent with one worker building while the rest sit idle. Example of the behavior without (left) and with (right) `--subdag-depth`: ![image](https://github.com/bioconda/bioconda-utils/assets/108547992/0128cc85-a16c-49a6-a595-18d75f0aa988) Tested on https://github.com/bioconda/bioconda-recipes/tree/bulk-performance-testing branch (action: https://github.com/bioconda/bioconda-recipes/actions/workflows/Bulk.yml).
- Loading branch information
1 parent
869577a
commit 4c51ae3
Showing
2 changed files
with
29 additions
and
7 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters