RAxML-NG version comparison pipeline

Setup

  1. Download the code:
    git clone https://github.com/tschuelia/RAxML-NG-comparison.git
    
  2. If you don't have miniconda already, install it according to the instructions [here] (https://docs.conda.io/en/latest/miniconda.html#installing)
  3. Solving the environment using conda is very slow, so I recommend you to use [mamba] (https://github.com/mamba-org/mamba) instead. You can install mamba using conda:
    conda install mamba
    
  4. Create a new conda environment using the provided environment.yml file:
    mamba env create -f environment.yml
    
  5. Activate the conda environment:
    conda activate comparison
    
  6. Get all RAxML-NG versions you want to test ready to use.

Running the Pipeline

  1. Adjust the config.yaml file to your needs. The comments in the config.yaml will guide you.

  2. Do a snakemake dry run to make sure everything works as expected:

    snakemake -n -p
    

    This will print all jobs that Snakemake will do.

  3. Run the pipeline

    snakemake --cores [number of cores*] -k -p
    

    * you can either manually set a number of cores, or you can set --cores all and Snakemake will use all cores your system has.

    Running the pipeline on a cluster is a bit more difficult, especially when we want to run it on multiple nodes. You can find detailed instructions on how to setup snakemake on a slurm cluster here.

  4. Once the pipeline ran successfully, you can have a look at the results using an interactive Dash plotting website. You have to start the dash server manually:

    python plots/index.py
    
  5. If you ran the pipeline on you laptop, you can directly open http://127.0.0.1:8050/ in your browser. In case you ran it on a remote server you first have to do port forwarding to view the website:

    ssh -L 8050:localhost:8050 [address of the server]