Skip to content

AlphaFold

These features are recent. Any issues or requests are welcome via the support form

We provide an adapted version of AlphaFold to better make use of the available compute resources on our systems. This means that the steps to run AlphaFold on Alvis may be different from other places. An example is available at https://github.com/c3se/alvis-intro/tree/main/examples/AlphaFold

AlphaFold inference pipeline, source https://doi.org/10.1038/s41586-021-03819-2

In short running the AlphaFold inference pipeline on Alvis requires three jobs:

  1. Dataset look-up (MSA) on a CPU-only node (-C NOGPU)
  2. Predictions on a GPU (can be parallelized to separate jobs)
  3. A short job ranking the model outputs and doing the final relaxation

Cite

Any publication that discloses findings arising from using this source code or the model parameters should cite the AlphaFold paper and, if applicable, the AlphaFold-Multimer paper.

Patch

The additional patch is adapted from work by Thomas Hoffmann at EMBL Heidelberg. The one used on C3SE systems can be found at /apps/c3se-easyconfigs/AlphaFold-<version>_C3SEpipeline.patch

The new steps are roughly:

  1. Stop pipeline after writing features.pkl in order to allow running this part on CPU nodes.
    1. Reject to run creation of features.pkl, if jax finds GPUs.
  2. Make pipeline resumable. Restore features.pkl or result*.pkl and model*.pdb
  3. New parameter only_model_pred allowing to only predict specified model/pred. Thus, enable running as job array or with workflow manager.
  4. Parallelization of relaxation, if ALPHAFOLD_RELAX_PARALLEL is set, it sets the number of processes used (experimental)