Automate OpenFold & VizFold-Foundation HPC Setup (Fixes #5)#68
Automate OpenFold & VizFold-Foundation HPC Setup (Fixes #5)#68JeevanandanRamasamy wants to merge 1 commit into
Conversation
Adds install.py and install.ipynb to automate OpenFold and VizFold-Foundation setup on PACE ICE (RHEL 9, CUDA 12.4, H100). Key features: - Pre-flight checks for GPU, conda, disk space, and AlphaFold data - PACE ICE-compatible environment.yml (PyTorch 2.5.1, CUDA 12.4) - libmamba solver for faster dependency resolution - System GCC 12.3.0 + CUDA_HOME=$CONDA_PREFIX to avoid compiler and CUDA version mismatches during OpenFold build - Safe re-runs: skips git clone and symlink creation if already done - Post-install verification of PyTorch+CUDA, OpenFold, viz tools - Updated README documenting both install methods and prerequisites
|
I think this PR does a good job of making the setup process more usable instead of just adding a long list of dependencies. One thing I liked is that it supports both an interactive Python installer and a notebook-based installer, which makes the workflow more flexible depending on how someone is working on the cluster. I also thought the pre-checks and post-install validation were a strong addition, since those make it much easier to catch environment issues before someone spends a lot of time debugging later. One thing I would still suggest checking is how portable the environment file is outside this exact system setup. Since a lot of the changes seem tailored to PACE ICE, it might help to separate what is strictly required from what is mainly cluster-specific, and maybe include one short “minimum validation” step showing the first few commands a user should run after setup to confirm the environment is working correctly. |
Automate HPC Environment Setup & Dependency Resolution for PACE ICE (Fixes #5)
Context
This PR provides a reproducible, automated environment setup for the PACE ICE cluster. It handles the complex dependency resolution and CUDA extension builds required for OpenFold.
What's Included
install.py(for interactive SLURM jobs) andinstall.ipynb(for JupyterLab) to automate the full environment setup, repository cloning, and dependency installation.libmambasolver for faster Conda dependency resolution and configures the environment specifically for PACE ICE compatibility.Notes
This does not close every single requirement of Issue #5, but it resolves the core blocker of achieving reproducible environment setups on the ICE cluster.