AlphaFold, new flags for resource utilisation#20421
AlphaFold, new flags for resource utilisation#20421VRehnberg wants to merge 2 commits intoeasybuilders:developfrom
Conversation
|
N.B. there is one breaking change. https://github.com/easybuilders/easybuild-easyconfigs/blob/fe59f1b8454c4f81229068858f1269a589c17de9/easybuild/easyconfigs/a/AlphaFold/AlphaFold-2.3.1_add-run_features_only-option.patch adds some logic to not recompute the features.pkl if it exists. This will lead to new behavior now if output_dir is reused with the same fasta name (even if fasta file is reused). Other alternatives:
|
|
Another thing worth thinking about is if this should get a versionsuffix or not. |
We have a similar patch installed at our site. I did not add it to PR #19942 as it changes quite some lines of the original code and adds some other features. Maybe it could be added to be optional. For features we do not use a flag. We check whether features.pkl exists. Furthermore, the pipeline stops after writing features.pkl. Furthermore, we terminate a job, if features.pkl does not exist and the job environment has CUDA_VISIBLE_DEVICES set. |
@ThomasHoffmann77 Is that patch available somewhere? Sure sounds like a great patch. |
@VRehnberg I added AlphaFold-2.3.2_EMBLpipeline002.patch to PR #19942. |
|
Will wait on #19942, adapted patch for C3SE at https://gist.github.com/VRehnberg/6dfe1e83c9fdbb1bdfd519fa685c580b main difference to the one in #19942 are using jax.default_backend to detect GPU and to modify sanity check script to only do msa search. |
AlphaFold computations has two noteable parts in its runtime. An MSA search running utilising only CPUs to create the input features for a specific input and then the prediction part that can utilize GPUs (see e.g. slide 20 from this EUM22 presentation https://easybuild.io/eum22/022_eum22_alphafold.pdf).
Allocating a GPU for the first part of this computation can be considered a waste of resources. This PR tackles this by:
This seems to be what was done here https://www.nsc.liu.se/support/systems/berzelius-software/berzelius-alphafold/ and I am in a similar situation.