Skip to content

Installation

ProMaya supports multiple execution environments to fit different computational resources, from local workstations to high-performance computing (HPC) clusters.

Prerequisites

  • Python: 3.9 or higher
  • NextFlow (Recommended): version 26.04 or higher (with nf-core)
  • GPU (Recommended): NVIDIA GPU with 16GB+ VRAM (RTX 3090, A100, V100, etc.)
  • Storage: 100GB+ free space for datasets and cached model embeddings (e.g., ProtTrans)

This is the standard installation for a single workstation or a shared HPC login node.

# Clone the repository
cd /path/to/promaya

# Create conda environment from environment.yml
conda env create -f environment.yml

# Activate the environment
conda activate promaya

NVIDIA GPU Support (Linux/Windows)

If you have a compatible NVIDIA GPU, install the GPU overlay to ensure hardware acceleration:

conda env update -n promaya -f environment.gpu.yml

[!NOTE] Skip this step on macOS or CPU-only systems. The base environment.yml is CPU-compatible by default.

Docker provides an isolated, reproducible environment. Build the Docker image from the ProMaya repository root:

docker build -t promaya:latest -f promaya-nextflow/Dockerfile .

To run with GPU support, ensure you have the NVIDIA Container Toolkit installed, then use the --gpus all flag in your docker run commands.

Most HPC clusters use Singularity instead of Docker for security reasons. You can build a Singularity image directly from the Docker container:

singularity build promaya.sif docker-daemon://promaya:latest
# Or if pulling from a registry:
# singularity build promaya.sif docker://<your-registry>/promaya:latest

External Bioinformatics Tools

ProMaya's complete feature extraction pipeline relies on several external structural bioinformatics tools. Depending on your use case, ensure these are installed and available in your PATH:

  1. DSSP: Secondary structure prediction.
    sudo apt-get install dssp
    
  2. PSI-BLAST: For PSSM generation (requires UniRef90 database).
    sudo apt-get install ncbi-blast+
    
  3. FreeSASA: Solvent Accessible Surface Area.
  4. MSMS: Molecular Surface generation.
  5. IUPred2A: Intrinsic Disorder Prediction.

  • Note: If you are using the provided Docker/Singularity image, DSSP and PSI-BLAST are already included.
  • Verification

    You can verify your PyTorch and PyTorch Geometric installation by running:

    python -c "import torch; print(f'PyTorch: {torch.__version__} | CUDA: {torch.cuda.is_available()}')"
    python -c "import torch_geometric; print(f'PyG Version: {torch_geometric.__version__}')"