RAxML-Sapelo2: Difference between revisions

From Research Computing Center Wiki
Jump to navigation Jump to search
No edit summary
 
(18 intermediate revisions by 2 users not shown)
Line 1: Line 1:
[[Category:Sapelo2]][[Category:Software]][[Category:Bioinformatics]]   
[[Category:Sapelo2]][[Category:Software]][[Category:Bioinformatics]]   
=== Category ===
=== Category ===
Bioinformatics
Bioinformatics  
=== Program On ===
=== Program On ===
Sapelo2
Sapelo2
=== Version ===
=== Version ===
8.2.11 8.2.12
8.2.12
===Author / Distributor===
===Author / Distributor===
A. Stamatakis, please see http://sco.h-its.org/exelixis/web/software/raxml/index.html
A. Stamatakis, please see http://sco.h-its.org/exelixis/web/software/raxml/index.html
Line 25: Line 25:
'''RAxML'''
'''RAxML'''


RAxML 8.2.11 and 8.2.12 are installed in /apps/eb/RAxML
There are two versions of RAxML installed in /apps/eb/RAxML. Which one you use depends on what sort of work you are doing.


To use the latest version of RaxML, please first load the module with
From https://cme.h-its.org/exelixis/resource/download/NewManual.pdf
 
 
 
The MPI version is for executing really large production runs (i.e. 100 or 1,000 bootstraps) on a Linux cluster. You can also perform multiple inferences on larger datasets in parallel to find a best known ML tree for your dataset. Finally, the rapid BS algorithm and the associated ML search have also been parallelized with MPI.
 
Normally, you would expect a parallel program to become faster as you increase the number of cores/processors you are using. This is however not generally true. For recommendations on how many threads to use, see page 5 in the manual linked above.
 
 
 
 
To use the non MPI version of RaxML, please first load the module with
<pre class="gscript">
module load RAxML/8.2.12-foss-2022a-pthreads-avx
</pre>
 
Keep in mind that because this version doesn't use MPI, the job cannot be run on multiple nodes.
 
'''Running the hybrid MPI version:'''
 
To use the hybrid MPI version of RaxML, please first load the module with
<pre class="gscript">
<pre class="gscript">
module load RAxML/8.2.12-intel-2019b-hybrid-avx2
module load RAxML/8.2.12-gompi-2022a-hybrid-avx
</pre>  
</pre>  


Warning: Make sure to specify less than the exact number of CPUs available on your system via the ­-T
option. If you start more threads than you have cores available, there will be a significant performance decrease. The --cpus-per-task option should also be set to match the -T value.


'''Running the MPI version:'''
The current MPI version only works properly if you specify the ­# option, since it has been designed to do multiple
RAxML can run sequentially,or in parallel using either MPI. This is intended for executing really large production runs (i.e. 100 or 1,000 bootstraps). It has been designed to do multiple searches in parallel.
inferences or rapid/standard BS (bootstrap) searches in parallel.


In the example below the name of the alignment data file in PHYLIP format is primates.phy.  
Note that this version was compiled with AVX2 optimization, which is not supported on the AMD Opteron nodes, but it is support on all nodes that have the EDR node feature. Therefore, please add the option --constraint=EDR, as shown in the sample job submission below, when using this version.


Example of shell script (submpi.sh) to run the MPI version in the batch queue, using 16 MPI processes:
The example below will show how to set the -T and -# values. The name of the alignment data file in PHYLIP format is primates.phy.
 
Example of shell script (submpi.sh) to run the MPI version in the batch queue, using 32 MPI processes:


<div class="gscript2">
<div class="gscript2">
Line 46: Line 70:
<nowiki>#</nowiki>SBATCH --mail-type=ALL<br>  
<nowiki>#</nowiki>SBATCH --mail-type=ALL<br>  
<nowiki>#</nowiki>SBATCH --mail-user=<u>username@uga.edu</u><br>   
<nowiki>#</nowiki>SBATCH --mail-user=<u>username@uga.edu</u><br>   
<nowiki>#</nowiki>SBATCH --ntasks=<u>16</u><br>  
<nowiki>#</nowiki>SBATCH --ntasks=<u>32</u><br>  
<nowiki>#</nowiki>SBATCH --cpus-per-task=<u>1</u><br>             
<nowiki>#</nowiki>SBATCH --cpus-per-task=<u>2</u> #this needs to be the same as the -T option below!<br>             
<nowiki>#</nowiki>SBATCH --nodes=<u>2</u><br>               
<nowiki>#</nowiki>SBATCH --nodes=<u>2</u><br>               
<nowiki>#</nowiki>SBATCH --ntasks-per-node=<u>8</u><br>             
<nowiki>#</nowiki>SBATCH --ntasks-per-node=<u>16</u><br>             
<nowiki>#</nowiki>SBATCH --mem-per-cpu=<u>2000mb</u><br>       
<nowiki>#</nowiki>SBATCH --mem-per-cpu=<u>2000mb</u><br>       
<nowiki>#</nowiki>SBATCH --time=<u>08:00:00</u><br>   
<nowiki>#</nowiki>SBATCH --time=<u>08:00:00</u><br>   
<nowiki>#</nowiki>SBATCH --output=RAxML.%j.out<br>
<nowiki>#</nowiki>SBATCH --output=RAxML.%j.out<br>
<nowiki>#</nowiki>SBATCH --error=RAxML.%j.err<br>
<nowiki>#</nowiki>SBATCH --error=RAxML.%j.err<br>
<nowiki>#</nowiki>SBATCH --constraint=EDR<br>
 
 
cd $SLURM_SUBMIT_DIR<br>
cd $SLURM_SUBMIT_DIR<br>
ml RAxML/8.2.11-foss-2016b-mpi-sse3<br>     
ml RAxML/8.2.12-intel-2019b-hybrid-avx2<br>    srun raxmlHPC -T 2 -s primates.phy -n testrun -m GTRGAMMA -p 1234 -#100 > job_${SLURM_JOB_ID}.log<br>   
mpirun raxmlHPC-MPI-SSE3 -s primates.phy -n testrun -m GTRGAMMA -p 1234 -#1000<br>   
</div>
</div>
In the real submission script, at least all the above underlined values need to be reviewed or to be replaced by the proper values. 
Please refer to [[Running_Jobs_on_the_teaching_cluster]], [[Running_Jobs_on_the_teaching_cluster#Running_an_X-windows_application | Run X window Jobs]] and [[Running_Jobs_on_the_teaching_cluster#How_to_open_an_interactive_session | Run interactive Jobs]] for more details of running jobs at Teaching cluster.




In the real submission script, at least all the above underlined values need to be reviewed or to be replaced by the proper values. 


Please refer to [[Running Jobs on Sapelo2]].


=== Documentation ===
=== Documentation ===
Line 71: Line 95:
http://sco.h-its.org/exelixis/web/software/raxml/index.html#documentation
http://sco.h-its.org/exelixis/web/software/raxml/index.html#documentation


A user manual is available in /usr/local/apps/raxml/8.1.20/manual/NewManual.pdf
<pre class="gcommand">


<pre class="gcommand">
ml RAxML/8.2.12-intel-2019b-hybrid-avx2
raxmlHPC  -help
 
 
 
This is RAxML MPI Process Number: 0


ml RAxML/8.2.11-foss-2016b-pthreads-avx
raxmlHPC-PTHREADS-AVX -help


This is RAxML version 8.2.11 released by Alexandros Stamatakis on June 2017.
This is RAxML version 8.2.12 released by Alexandros Stamatakis on May 2018.


With greatly appreciated code contributions by:
With greatly appreciated code contributions by:
Line 118: Line 145:
       [-x rapidBootstrapRandomNumberSeed] [-X] [-y] [-Y quartetGroupingFileName|ancestralSequenceCandidatesFileName]
       [-x rapidBootstrapRandomNumberSeed] [-X] [-y] [-Y quartetGroupingFileName|ancestralSequenceCandidatesFileName]
       [-z multipleTreesFile] [-#|-N numberOfRuns|autoFC|autoMR|autoMRE|autoMRE_IGN]
       [-z multipleTreesFile] [-#|-N numberOfRuns|autoFC|autoMR|autoMRE|autoMRE_IGN]
       [--mesquite][--silent][--no-seq-check][--no-bfgs]
       [--silent][--no-seq-check][--no-bfgs]
       [--asc-corr=stamatakis|felsenstein|lewis]
       [--asc-corr=stamatakis|felsenstein|lewis]
       [--flag-check][--auto-prot=ml|bic|aic|aicc]
       [--flag-check][--auto-prot=ml|bic|aic|aicc]
Line 124: Line 151:
       [--epa-prob-threshold=threshold]
       [--epa-prob-threshold=threshold]
       [--JC69][--K80][--HKY85]
       [--JC69][--K80][--HKY85]
      [--set-thread-affinity]
       [--bootstop-perms=number]
       [--bootstop-perms=number]


Line 564: Line 592:


               DEFAULT: 1 single analysis
               DEFAULT: 1 single analysis
      --mesquite Print output files that can be parsed by Mesquite.
              DEFAULT: Off


       --silent Disables printout of warnings related to identical sequences and entirely undetermined sites in the alignment
       --silent Disables printout of warnings related to identical sequences and entirely undetermined sites in the alignment
Line 624: Line 648:


       --HKY85 specify that all DNA partitions will evolve under the HKY85 model, this overrides all other model specifications for DNA partitions.
       --HKY85 specify that all DNA partitions will evolve under the HKY85 model, this overrides all other model specifications for DNA partitions.
                  DEFAULT: Off
      --set-thread-affinity specify that thread-to-core affinity shall be set by RAxML for the hybrid MPI-PThreads version


                   DEFAULT: Off
                   DEFAULT: Off
Line 641: Line 670:


                   DEFAULT: identical sequences will also be removed in the .reduced file
                   DEFAULT: identical sequences will also be removed in the .reduced file


</pre>
</pre>

Latest revision as of 07:39, 14 May 2024

Category

Bioinformatics

Program On

Sapelo2

Version

8.2.12

Author / Distributor

A. Stamatakis, please see http://sco.h-its.org/exelixis/web/software/raxml/index.html

Description

From http://sco.h-its.org/exelixis/web/software/raxml/index.html: "RAxML - Randomized Axelerated Maximum Likelihood" RAxML search algorithm for maximum likelihood based inference of phylogenetic trees.

When using RAxML please cite the following paper: A. Stamatakis: "RAxML Version 8: A tool for Phylogenetic Analysis and Post-Analysis of Large Phylogenies". In Bioinformatics, 2014


Running Program

Also refer to Running Jobs on Sapelo2

For more information on Environment Modules on Sapelo2 please see the Lmod page.


RAxML

There are two versions of RAxML installed in /apps/eb/RAxML. Which one you use depends on what sort of work you are doing.

From https://cme.h-its.org/exelixis/resource/download/NewManual.pdf


The MPI version is for executing really large production runs (i.e. 100 or 1,000 bootstraps) on a Linux cluster. You can also perform multiple inferences on larger datasets in parallel to find a best known ML tree for your dataset. Finally, the rapid BS algorithm and the associated ML search have also been parallelized with MPI.

Normally, you would expect a parallel program to become faster as you increase the number of cores/processors you are using. This is however not generally true. For recommendations on how many threads to use, see page 5 in the manual linked above.



To use the non MPI version of RaxML, please first load the module with

module load RAxML/8.2.12-foss-2022a-pthreads-avx

Keep in mind that because this version doesn't use MPI, the job cannot be run on multiple nodes.

Running the hybrid MPI version:

To use the hybrid MPI version of RaxML, please first load the module with

module load RAxML/8.2.12-gompi-2022a-hybrid-avx

Warning: Make sure to specify less than the exact number of CPUs available on your system via the ­-T option. If you start more threads than you have cores available, there will be a significant performance decrease. The --cpus-per-task option should also be set to match the -T value.

The current MPI version only works properly if you specify the ­# option, since it has been designed to do multiple inferences or rapid/standard BS (bootstrap) searches in parallel.

Note that this version was compiled with AVX2 optimization, which is not supported on the AMD Opteron nodes, but it is support on all nodes that have the EDR node feature. Therefore, please add the option --constraint=EDR, as shown in the sample job submission below, when using this version.

The example below will show how to set the -T and -# values. The name of the alignment data file in PHYLIP format is primates.phy.

Example of shell script (submpi.sh) to run the MPI version in the batch queue, using 32 MPI processes:

#!/bin/bash
#SBATCH --job-name=j_RAxML
#SBATCH --partition=batch
#SBATCH --mail-type=ALL
#SBATCH --mail-user=username@uga.edu
#SBATCH --ntasks=32
#SBATCH --cpus-per-task=2 #this needs to be the same as the -T option below!
#SBATCH --nodes=2
#SBATCH --ntasks-per-node=16
#SBATCH --mem-per-cpu=2000mb
#SBATCH --time=08:00:00
#SBATCH --output=RAxML.%j.out
#SBATCH --error=RAxML.%j.err
#SBATCH --constraint=EDR


cd $SLURM_SUBMIT_DIR
ml RAxML/8.2.12-intel-2019b-hybrid-avx2
srun raxmlHPC -T 2 -s primates.phy -n testrun -m GTRGAMMA -p 1234 -#100 > job_${SLURM_JOB_ID}.log


In the real submission script, at least all the above underlined values need to be reviewed or to be replaced by the proper values.

Please refer to Running Jobs on Sapelo2.

Documentation

Please see links from http://sco.h-its.org/exelixis/web/software/raxml/index.html#documentation


ml RAxML/8.2.12-intel-2019b-hybrid-avx2
raxmlHPC  -help



This is RAxML MPI Process Number: 0


This is RAxML version 8.2.12 released by Alexandros Stamatakis on May 2018.

With greatly appreciated code contributions by:
Andre Aberer      (HITS)
Simon Berger      (HITS)
Alexey Kozlov     (HITS)
Kassian Kobert    (HITS)
David Dao         (KIT and HITS)
Sarah Lutteropp   (KIT and HITS)
Nick Pattengale   (Sandia)
Wayne Pfeiffer    (SDSC)
Akifumi S. Tanabe (NRIFS)
Charlie Taylor    (UF)


Please also consult the RAxML-manual

Please report bugs via the RAxML google group!
Please send us all input files, the exact invocation, details of the HW and operating system,
as well as all error messages printed to screen.


raxmlHPC[-SSE3|-AVX|-PTHREADS|-PTHREADS-SSE3|-PTHREADS-AVX|-HYBRID|-HYBRID-SSE3|HYBRID-AVX]
      -s sequenceFileName -n outputFileName -m substitutionModel
      [-a weightFileName] [-A secondaryStructureSubstModel]
      [-b bootstrapRandomNumberSeed] [-B wcCriterionThreshold]
      [-c numberOfCategories] [-C] [-d] [-D]
      [-e likelihoodEpsilon] [-E excludeFileName]
      [-f a|A|b|B|c|C|d|D|e|E|F|g|G|h|H|i|I|j|J|k|m|n|N|o|p|P|q|r|R|s|S|t|T|u|v|V|w|W|x|y] [-F]
      [-g groupingFileName] [-G placementThreshold] [-h] [-H]
      [-i initialRearrangementSetting] [-I autoFC|autoMR|autoMRE|autoMRE_IGN]
      [-j] [-J MR|MR_DROP|MRE|STRICT|STRICT_DROP|T_<PERCENT>] [-k] [-K] 
      [-L MR|MRE|T_<PERCENT>] [-M]
      [-o outGroupName1[,outGroupName2[,...]]][-O]
      [-p parsimonyRandomSeed] [-P proteinModel]
      [-q multipleModelFileName] [-r binaryConstraintTree]
      [-R binaryModelParamFile] [-S secondaryStructureFile] [-t userStartingTree]
      [-T numberOfThreads] [-u] [-U] [-v] [-V] [-w outputDirectory] [-W slidingWindowSize]
      [-x rapidBootstrapRandomNumberSeed] [-X] [-y] [-Y quartetGroupingFileName|ancestralSequenceCandidatesFileName]
      [-z multipleTreesFile] [-#|-N numberOfRuns|autoFC|autoMR|autoMRE|autoMRE_IGN]
      [--silent][--no-seq-check][--no-bfgs]
      [--asc-corr=stamatakis|felsenstein|lewis]
      [--flag-check][--auto-prot=ml|bic|aic|aicc]
      [--epa-keep-placements=number][--epa-accumulated-threshold=threshold]
      [--epa-prob-threshold=threshold]
      [--JC69][--K80][--HKY85]
      [--set-thread-affinity]
      [--bootstop-perms=number]

      [--quartets-without-replacement]

      [---without-replacement]

      [--print-identical-sequences]

      -a      Specify a column weight file name to assign individual weights to each column of 
              the alignment. Those weights must be integers separated by any type and number 
              of whitespaces whithin a separate file, see file "example_weights" for an example.

      -A      Specify one of the secondary structure substitution models implemented in RAxML.
              The same nomenclature as in the PHASE manual is used, available models: 
              S6A, S6B, S6C, S6D, S6E, S7A, S7B, S7C, S7D, S7E, S7F, S16, S16A, S16B

              DEFAULT: 16-state GTR model (S16)

      -b      Specify an integer number (random seed) and turn on bootstrapping

              DEFAULT: OFF

      -B      specify a floating point number between 0.0 and 1.0 that will be used as cutoff threshold 
              for the MR-based bootstopping criteria. The recommended setting is 0.03.

              DEFAULT: 0.03 (recommended empirically determined setting)

      -c      Specify number of distinct rate catgories for RAxML when model of rate heterogeneity
              is set to CAT
              Individual per-site rates are categorized into numberOfCategories rate 
              categories to accelerate computations. 

              DEFAULT: 25

      -C      Enable verbose output for the "-L" and "-f i" options. This will produce more, as well as more verbose output files

              DEFAULT: OFF

      -d      start ML optimization from random starting tree 

              DEFAULT: OFF

      -D      ML search convergence criterion. This will break off ML searches if the relative 
              Robinson-Foulds distance between the trees obtained from two consecutive lazy SPR cycles
              is smaller or equal to 1%. Usage recommended for very large datasets in terms of taxa.
              On trees with more than 500 taxa this will yield execution time improvements of approximately 50%
              While yielding only slightly worse trees.

              DEFAULT: OFF

      -e      set model optimization precision in log likelihood units for final
              optimization of tree topology

              DEFAULT: 0.1   for models not using proportion of invariant sites estimate
                       0.001 for models using proportion of invariant sites estimate

      -E      specify an exclude file name, that contains a specification of alignment positions you wish to exclude.
              Format is similar to Nexus, the file shall contain entries like "100-200 300-400", to exclude a
              single column write, e.g., "100-100", if you use a mixed model, an appropriately adapted model file
              will be written.

      -f      select algorithm:

              "-f a": rapid Bootstrap analysis and search for best-scoring ML tree in one program run
              "-f A": compute marginal ancestral states on a ROOTED reference tree provided with "-t"
              "-f b": draw bipartition information on a tree provided with "-t" based on multiple trees
                      (e.g., from a bootstrap) in a file specified by "-z"
              "-f B": optimize br-len scaler and other model parameters (GTR, alpha, etc.) on a tree provided with "-t".
                      The tree needs to contain branch lengths. The branch lengths will not be optimized, just scaled by a single common value.
              "-f c": check if the alignment can be properly read by RAxML
              "-f C": ancestral sequence test for Jiajie, users will also need to provide a list of taxon names via -Y separated by whitespaces
              "-f d": new rapid hill-climbing 
                      DEFAULT: ON
              "-f D": rapid hill-climbing with RELL bootstraps
              "-f e": optimize model+branch lengths for given input tree under GAMMA/GAMMAI only
              "-f E": execute very fast experimental tree search, at present only for testing
              "-f F": execute fast experimental tree search, at present only for testing
              "-f g": compute per site log Likelihoods for one or more trees passed via
                      "-z" and write them to a file that can be read by CONSEL
                      The model parameters will be estimated on the first tree only!
              "-f G": compute per site log Likelihoods for one or more trees passed via
                      "-z" and write them to a file that can be read by CONSEL.
                      The model parameters will be re-estimated for each tree
              "-f h": compute log likelihood test (SH-test) between best tree passed via "-t"
                      and a bunch of other trees passed via "-z" 
                      The model parameters will be estimated on the first tree only!
              "-f H": compute log likelihood test (SH-test) between best tree passed via "-t"
                      and a bunch of other trees passed via "-z" 
                      The model parameters will be re-estimated for each tree
              "-f i": calculate IC and TC scores (Salichos and Rokas 2013) on a tree provided with "-t" based on multiple trees
                      (e.g., from a bootstrap) in a file specified by "-z"
              "-f I": a simple tree rooting algorithm for unrooted trees.
                      It roots the tree by rooting it at the branch that best balances the subtree lengths
                      (sum over branches in the subtrees) of the left and right subtree.
                      A branch with an optimal balance does not always exist!
                      You need to specify the tree you want to root via "-t".
              "-f j": generate a bunch of bootstrapped alignment files from an original alignemnt file.
                      You need to specify a seed with "-b" and the number of replicates with "-#" 
              "-f J": Compute SH-like support values on a given tree passed via "-t".
              "-f k": Fix long branch lengths in partitioned data sets with missing data using the
                      branch length stealing algorithm.
                      This option only works in conjunction with "-t", "-M", and "-q".
                      It will print out a tree with shorter branch lengths, but having the same likelihood score.
              "-f m": compare bipartitions between two bunches of trees passed via "-t" and "-z" 
                      respectively. This will return the Pearson correlation between all bipartitions found
                      in the two tree files. A file called RAxML_bipartitionFrequencies.outpuFileName
                      will be printed that contains the pair-wise bipartition frequencies of the two sets
              "-f n": compute the log likelihood score of all trees contained in a tree file provided by
                      "-z" under GAMMA or GAMMA+P-Invar
                      The model parameters will be estimated on the first tree only!
              "-f N": compute the log likelihood score of all trees contained in a tree file provided by
                      "-z" under GAMMA or GAMMA+P-Invar
                      The model parameters will be re-estimated for each tree
              "-f o": old and slower rapid hill-climbing without heuristic cutoff
              "-f p": perform pure stepwise MP addition of new sequences to an incomplete starting tree and exit
              "-f P": perform a phylogenetic placement of sub trees specified in a file passed via "-z" into a given reference tree
                      in which these subtrees are contained that is passed via "-t" using the evolutionary placement algorithm.
              "-f q": fast quartet calculator
              "-f r": compute pairwise Robinson-Foulds (RF) distances between all pairs of trees in a tree file passed via "-z" 
                      if the trees have node labales represented as integer support values the program will also compute two flavors of
                      the weighted Robinson-Foulds (WRF) distance
              "-f R": compute all pairwise Robinson-Foulds (RF) distances between a large reference tree  passed via "-t" 
                      and many smaller trees (that must have a subset of the taxa of the large tree) passed via "-z".
                      This option is intended for checking the plausibility of very large phylogenies that can not be inspected
                      visually any more.
              "-f s": split up a multi-gene partitioned alignment into the respective subalignments 
              "-f S": compute site-specific placement bias using a leave one out test inspired by the evolutionary placement algorithm
              "-f t": do randomized tree searches on one fixed starting tree
              "-f T": do final thorough optimization of ML tree from rapid bootstrap search in stand-alone mode
              "-f u": execute morphological weight calibration using maximum likelihood, this will return a weight vector.
                      you need to provide a morphological alignment and a reference tree via "-t" 
              "-f v": classify a bunch of environmental sequences into a reference tree using thorough read insertions
                      you will need to start RAxML with a non-comprehensive reference tree and an alignment containing all sequences (reference + query)
              "-f V": classify a bunch of environmental sequences into a reference tree using thorough read insertions
                      you will need to start RAxML with a non-comprehensive reference tree and an alignment containing all sequences (reference + query)
                      WARNING: this is a test implementation for more efficient handling of multi-gene/whole-genome datasets!
              "-f w": compute ELW test on a bunch of trees passed via "-z" 
                      The model parameters will be estimated on the first tree only!
              "-f W": compute ELW test on a bunch of trees passed via "-z" 
                      The model parameters will be re-estimated for each tree
              "-f x": compute pair-wise ML distances, ML model parameters will be estimated on an MP 
                      starting tree or a user-defined tree passed via "-t", only allowed for GAMMA-based
                      models of rate heterogeneity
              "-f y": classify a bunch of environmental sequences into a reference tree using parsimony
                      you will need to start RAxML with a non-comprehensive reference tree and an alignment containing all sequences (reference + query)

              DEFAULT for "-f": new rapid hill climbing


      -F      enable ML tree searches under CAT model for very large trees without switching to 
              GAMMA in the end (saves memory).
              This option can also be used with the GAMMA models in order to avoid the thorough optimization 
              of the best-scoring ML tree in the end.

              DEFAULT: OFF

      -g      specify the file name of a multifurcating constraint tree
              this tree does not need to be comprehensive, i.e. must not contain all taxa

      -G      enable the ML-based evolutionary placement algorithm heuristics
              by specifiyng a threshold value (fraction of insertion branches to be evaluated
              using slow insertions under ML).

      -h      Display this help message.

      -H      Disable pattern compression.

              DEFAULT: ON

      -i      Initial rearrangement setting for the subsequent application of topological 
              changes phase

      -I      a posteriori bootstopping analysis. Use:
             "-I autoFC" for the frequency-based criterion
             "-I autoMR" for the majority-rule consensus tree criterion
             "-I autoMRE" for the extended majority-rule consensus tree criterion
             "-I autoMRE_IGN" for metrics similar to MRE, but include bipartitions under the threshold whether they are compatible
                              or not. This emulates MRE but is faster to compute.
              You also need to pass a tree file containg several bootstrap replicates via "-z" 

      -j      Specifies that intermediate tree files shall be written to file during the standard ML and BS tree searches.

              DEFAULT: OFF

      -J      Compute majority rule consensus tree with "-J MR" or extended majority rule consensus tree with "-J MRE"
              or strict consensus tree with "-J STRICT". For a custom consensus threshold >= 50%, specify T_<NUM>, where 100 >= NUM >= 50.
              Options "-J STRICT_DROP" and "-J MR_DROP" will execute an algorithm that identifies dropsets which contain
              rogue taxa as proposed by Pattengale et al. in the paper "Uncovering hidden phylogenetic consensus".
              You will also need to provide a tree file containing several UNROOTED trees via "-z"

      -k      Specifies that bootstrapped trees should be printed with branch lengths.
              The bootstraps will run a bit longer, because model parameters will be optimized
              at the end of each run under GAMMA or GAMMA+P-Invar respectively.

              DEFAULT: OFF

      -K      Specify one of the multi-state substitution models (max 32 states) implemented in RAxML.
              Available models are: ORDERED, MK, GTR

              DEFAULT: GTR model 

      -L     Compute consensus trees labelled by IC supports and the overall TC value as proposed in Salichos and Rokas 2013.
             Compute a majority rule consensus tree with "-L MR" or an extended majority rule consensus tree with "-L MRE".
             For a custom consensus threshold >= 50%, specify "-L T_<NUM>", where 100 >= NUM >= 50.
             You will of course also need to provide a tree file containing several UNROOTED trees via "-z"!

      -m      Model of Binary (Morphological), Nucleotide, Multi-State, or Amino Acid Substitution: 

              BINARY:

                "-m BINCAT[X]"       : Optimization of site-specific
                                       evolutionary rates which are categorized into numberOfCategories distinct 
                                       rate categories for greater computational efficiency. Final tree might be evaluated
                                       automatically under BINGAMMA, depending on the tree search option.
                                       With the optional "X" appendix you can specify a ML estimate of base frequencies.
                "-m BINCATI[X]"      : Optimization of site-specific
                                       evolutionary rates which are categorized into numberOfCategories distinct 
                                       rate categories for greater computational efficiency. Final tree might be evaluated
                                       automatically under BINGAMMAI, depending on the tree search option.
                                       With the optional "X" appendix you can specify a ML estimate of base frequencies.
                "-m ASC_BINCAT[X]"   : Optimization of site-specific
                                       evolutionary rates which are categorized into numberOfCategories distinct 
                                       rate categories for greater computational efficiency. Final tree might be evaluated
                                       automatically under BINGAMMA, depending on the tree search option.
                                       With the optional "X" appendix you can specify a ML estimate of base frequencies.
                                       The ASC prefix willl correct the likelihood for ascertainment bias.
                "-m BINGAMMA[X]"     : GAMMA model of rate heterogeneity (alpha parameter will be estimated).
                                       With the optional "X" appendix you can specify a ML estimate of base frequencies.
                "-m ASC_BINGAMMA[X]" : GAMMA model of rate heterogeneity (alpha parameter will be estimated).
                                       The ASC prefix willl correct the likelihood for ascertainment bias.
                                       With the optional "X" appendix you can specify a ML estimate of base frequencies.
                "-m BINGAMMAI[X]"    : Same as BINGAMMA, but with estimate of proportion of invariable sites.
                                       With the optional "X" appendix you can specify a ML estimate of base frequencies.

              NUCLEOTIDES:

                "-m GTRCAT[X]"       : GTR + Optimization of substitution rates + Optimization of site-specific
                                       evolutionary rates which are categorized into numberOfCategories distinct 
                                       rate categories for greater computational efficiency.  Final tree might be evaluated
                                       under GTRGAMMA, depending on the tree search option.
                                       With the optional "X" appendix you can specify a ML estimate of base frequencies.
                "-m GTRCATI[X]"      : GTR + Optimization of substitution rates + Optimization of site-specific
                                       evolutionary rates which are categorized into numberOfCategories distinct 
                                       rate categories for greater computational efficiency.  Final tree might be evaluated
                                       under GTRGAMMAI, depending on the tree search option.
                                       With the optional "X" appendix you can specify a ML estimate of base frequencies.
                "-m ASC_GTRCAT[X]"   : GTR + Optimization of substitution rates + Optimization of site-specific
                                       evolutionary rates which are categorized into numberOfCategories distinct 
                                       rate categories for greater computational efficiency.  Final tree might be evaluated
                                       under GTRGAMMA, depending on the tree search option.
                                       With the optional "X" appendix you can specify a ML estimate of base frequencies.
                                       The ASC prefix willl correct the likelihood for ascertainment bias.
                "-m GTRGAMMA[X]"     : GTR + Optimization of substitution rates + GAMMA model of rate 
                                       heterogeneity (alpha parameter will be estimated).
                                       With the optional "X" appendix you can specify a ML estimate of base frequencies.
                "-m ASC_GTRGAMMA[X]" : GTR + Optimization of substitution rates + GAMMA model of rate 
                                       heterogeneity (alpha parameter will be estimated).
                                       The ASC prefix willl correct the likelihood for ascertainment bias.
                                       With the optional "X" appendix you can specify a ML estimate of base frequencies.
                "-m GTRGAMMAI[X]"    : Same as GTRGAMMA, but with estimate of proportion of invariable sites.
                                       With the optional "X" appendix you can specify a ML estimate of base frequencies.

              MULTI-STATE:

                "-m MULTICAT[X]"       : Optimization of site-specific
                                         evolutionary rates which are categorized into numberOfCategories distinct 
                                         rate categories for greater computational efficiency. Final tree might be evaluated
                                         automatically under MULTIGAMMA, depending on the tree search option.
                                         With the optional "X" appendix you can specify a ML estimate of base frequencies.
                "-m MULTICATI[X]"      : Optimization of site-specific
                                         evolutionary rates which are categorized into numberOfCategories distinct 
                                         rate categories for greater computational efficiency. Final tree might be evaluated
                                         automatically under MULTIGAMMAI, depending on the tree search option.
                                         With the optional "X" appendix you can specify a ML estimate of base frequencies.
                "-m ASC_MULTICAT[X]"   : Optimization of site-specific
                                         evolutionary rates which are categorized into numberOfCategories distinct 
                                         rate categories for greater computational efficiency. Final tree might be evaluated
                                         automatically under MULTIGAMMA, depending on the tree search option.
                                         With the optional "X" appendix you can specify a ML estimate of base frequencies.
                                         The ASC prefix willl correct the likelihood for ascertainment bias.
                "-m MULTIGAMMA[X]"     : GAMMA model of rate heterogeneity (alpha parameter will be estimated).
                                         With the optional "X" appendix you can specify a ML estimate of base frequencies.
                "-m ASC_MULTIGAMMA[X]" : GAMMA model of rate heterogeneity (alpha parameter will be estimated).
                                         The ASC prefix willl correct the likelihood for ascertainment bias.
                                         With the optional "X" appendix you can specify a ML estimate of base frequencies.
                "-m MULTIGAMMAI[X]"    : Same as MULTIGAMMA, but with estimate of proportion of invariable sites.
                                         With the optional "X" appendix you can specify a ML estimate of base frequencies.

                You can use up to 32 distinct character states to encode multi-state regions, they must be used in the following order:
                0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R, S, T, U, V
                i.e., if you have 6 distinct character states you would use 0, 1, 2, 3, 4, 5 to encode these.
                The substitution model for the multi-state regions can be selected via the "-K" option

              AMINO ACIDS:

                "-m PROTCATmatrixName[F|X]"       : specified AA matrix + Optimization of substitution rates + Optimization of site-specific
                                                    evolutionary rates which are categorized into numberOfCategories distinct 
                                                    rate categories for greater computational efficiency.   Final tree might be evaluated
                                                    automatically under PROTGAMMAmatrixName[F|X], depending on the tree search option.
                                                    With the optional "X" appendix you can specify a ML estimate of base frequencies.
                "-m PROTCATImatrixName[F|X]"      : specified AA matrix + Optimization of substitution rates + Optimization of site-specific
                                                    evolutionary rates which are categorized into numberOfCategories distinct 
                                                    rate categories for greater computational efficiency.   Final tree might be evaluated
                                                    automatically under PROTGAMMAImatrixName[F|X], depending on the tree search option.
                                                    With the optional "X" appendix you can specify a ML estimate of base frequencies.
                "-m ASC_PROTCATmatrixName[F|X]"   : specified AA matrix + Optimization of substitution rates + Optimization of site-specific
                                                    evolutionary rates which are categorized into numberOfCategories distinct 
                                                    rate categories for greater computational efficiency.   Final tree might be evaluated
                                                    automatically under PROTGAMMAmatrixName[F|X], depending on the tree search option.
                                                    With the optional "X" appendix you can specify a ML estimate of base frequencies.
                                                    The ASC prefix willl correct the likelihood for ascertainment bias.
                "-m PROTGAMMAmatrixName[F|X]"     : specified AA matrix + Optimization of substitution rates + GAMMA model of rate 
                                                    heterogeneity (alpha parameter will be estimated).
                                                    With the optional "X" appendix you can specify a ML estimate of base frequencies.
                "-m ASC_PROTGAMMAmatrixName[F|X]" : specified AA matrix + Optimization of substitution rates + GAMMA model of rate 
                                                    heterogeneity (alpha parameter will be estimated).
                                                    The ASC prefix willl correct the likelihood for ascertainment bias.
                                                    With the optional "X" appendix you can specify a ML estimate of base frequencies.
                "-m PROTGAMMAImatrixName[F|X]"    : Same as PROTGAMMAmatrixName[F|X], but with estimate of proportion of invariable sites.
                                                    With the optional "X" appendix you can specify a ML estimate of base frequencies.

                Available AA substitution models:
                DAYHOFF, DCMUT, JTT, MTREV, WAG, RTREV, CPREV, VT, 
                BLOSUM62, MTMAM, LG, MTART, MTZOA, PMB, HIVB, HIVW, 
                JTTDCMUT, FLU, STMTREV, DUMMY, DUMMY2, AUTO, LG4M, LG4X, 
                PROT_FILE, GTR_UNLINKED, GTR
                With the optional "F" appendix you can specify if you want to use empirical base frequencies.
                AUTOF and AUTOX are not supported any more, if you specify AUTO it will test prot subst. models with and without empirical
                base frequencies now!
                Please note that for partitioned models you can in addition specify the per-gene AA model in
                the partition file (see manual for details). Also note that if you estimate AA GTR parameters on a partitioned
                dataset, they will be linked (estimated jointly) across all partitions to avoid over-parametrization

      -M      Switch on estimation of individual per-partition branch lengths. Only has effect when used in combination with "-q"
              Branch lengths for individual partitions will be printed to separate files
              A weighted average of the branch lengths is computed by using the respective partition lengths

              DEFAULT: OFF

      -n      Specifies the name of the output file.

      -o      Specify the name of a single outgroup or a comma-separated list of outgroups, eg "-o Rat" 
              or "-o Rat,Mouse", in case that multiple outgroups are not monophyletic the first name 
              in the list will be selected as outgroup, don't leave spaces between taxon names!

      -O      Disable check for completely undetermined sequence in alignment.
              The program will not exit with an error message when "-O" is specified.

              DEFAULT: check enabled

      -p      Specify a random number seed for the parsimony inferences. This allows you to reproduce your results
              and will help me debug the program.

      -P      Specify the file name of a user-defined AA (Protein) substitution model. This file must contain
              420 entries, the first 400 being the AA substitution rates (this must be a symmetric matrix) and the
              last 20 are the empirical base frequencies

      -q      Specify the file name which contains the assignment of models to alignment
              partitions for multiple models of substitution. For the syntax of this file
              please consult the manual.

      -r      Specify the file name of a binary constraint tree.
              this tree does not need to be comprehensive, i.e. must not contain all taxa

      -R      Specify the file name of a binary model parameter file that has previously been generated
              with RAxML using the -f e tree evaluation option. The file name should be: 
              RAxML_binaryModelParameters.runID

      -s      Specify the name of the alignment data file in PHYLIP format

      -S      Specify the name of a secondary structure file. The file can contain "." for 
              alignment columns that do not form part of a stem and characters "()<>[]{}" to define 
              stem regions and pseudoknots

      -t      Specify a user starting tree file name in Newick format

      -T      PTHREADS VERSION ONLY! Specify the number of threads you want to run.
              Make sure to set "-T" to at most the number of CPUs you have on your machine,
              otherwise, there will be a huge performance decrease!

      -u      use the median for the discrete approximation of the GAMMA model of rate heterogeneity

              DEFAULT: OFF

      -U      Try to save memory by using SEV-based implementation for gap columns on large gappy alignments
              The technique is described here: http://www.biomedcentral.com/1471-2105/12/470
              This will only work for DNA and/or PROTEIN data and only with the SSE3 or AVX-vextorized version of the code.

      -v      Display version information

      -V      Disable rate heterogeneity among sites model and use one without rate heterogeneity instead.
              Only works if you specify the CAT model of rate heterogeneity.

              DEFAULT: use rate heterogeneity

      -w      FULL (!) path to the directory into which RAxML shall write its output files

              DEFAULT: current directory

      -W      Sliding window size for leave-one-out site-specific placement bias algorithm
              only effective when used in combination with "-f S" 

              DEFAULT: 100 sites

      -x      Specify an integer number (random seed) and turn on rapid bootstrapping
              CAUTION: unlike in version 7.0.4 RAxML will conduct rapid BS replicates under 
              the model of rate heterogeneity you specified via "-m" and not by default under CAT

      -X      Same as the "-y" option below, however the parsimony search is more superficial.
              RAxML will only do a randomized stepwise addition order parsimony tree reconstruction
              without performing any additional SPRs.
              This may be helpful for very broad whole-genome datasets, since this can generate topologically
              more different starting trees.

              DEFAULT: OFF

      -y      If you want to only compute a parsimony starting tree with RAxML specify "-y",
              the program will exit after computation of the starting tree

              DEFAULT: OFF

      -Y      Pass a quartet grouping file name defining four groups from which to draw quartets
              The file input format must contain 4 groups in the following form:
              (Chicken, Human, Loach), (Cow, Carp), (Mouse, Rat, Seal), (Whale, Frog);
              Only works in combination with -f q !

      -z      Specify the file name of a file containing multiple trees e.g. from a bootstrap
              that shall be used to draw bipartition values onto a tree provided with "-t",
              It can also be used to compute per site log likelihoods in combination with "-f g"
              and to read a bunch of trees for a couple of other options ("-f h", "-f m", "-f n").

      -#|-N   Specify the number of alternative runs on distinct starting trees
              In combination with the "-b" option, this will invoke a multiple boostrap analysis
              Note that "-N" has been added as an alternative since "-#" sometimes caused problems
              with certain MPI job submission systems, since "-#" is often used to start comments.
              If you want to use the bootstopping criteria specify "-# autoMR" or "-# autoMRE" or "-# autoMRE_IGN"
              for the majority-rule tree based criteria (see -I option) or "-# autoFC" for the frequency-based criterion.
              Bootstopping will only work in combination with "-x" or "-b"

              DEFAULT: 1 single analysis

      --silent Disables printout of warnings related to identical sequences and entirely undetermined sites in the alignment

              DEFAULT: Off

      --no-seq-check Disables checking the input MSA for identical sequences and entirely undetermined sites.
                     Enabling this option may save time, in particular for large phylogenomic alignments.
                     Before using this, make sure to check the alignment using the "-f c" option!

              DEFAULT: Off 

      --no-bfgs Disables automatic usage of BFGS method to optimize GTR rates on unpartitioned DNA datasets

              DEFAULT: BFGS on

      --asc-corr Allows to specify the type of ascertainment bias correction you wish to use. There are 3
                 types available:
                 --asc-corr=lewis: the standard correction by Paul Lewis
                 --asc-corr=felsenstein: a correction introduced by Joe Felsenstein that allows to explicitely specify
                                         the number of invariable sites (if known) one wants to correct for.
                 --asc-corr=stamatakis: a correction introduced by myself that allows to explicitely specify
                                        the number of invariable sites for each character (if known) one wants to correct for.

      --flag-check When using this option, RAxML will only check if all command line flags specifed are available and then exit
                   with a message listing all invalid command line flags or with a message stating that all flags are valid.

      --auto-prot=ml|bic|aic|aicc When using automatic protein model selection you can chose the criterion for selecting these models.
                  RAxML will test all available prot subst. models except for LG4M, LG4X and GTR-based models, with and without empirical base frequencies.
                  You can chose between ML score based selection and the BIC, AIC, and AICc criteria.

                  DEFAULT: ml

      --epa-keep-placements=number specify the number of potential placements you want to keep for each read in the EPA algorithm.
                  Note that, the actual values printed will also depend on the settings for --epa-prob-threshold=threshold !

                  DEFAULT: 7

      --epa-prob-threshold=threshold specify a percent threshold for including potential placements of a read depending on the 
                  maximum placement weight for this read. If you set this value to 0.01 placements that have a placement weight of 1 per cent of
                  the maximum placement will still be printed to file if the setting of --epa-keep-placements allows for it

                  DEFAULT: 0.01

      --epa-accumulated-threshold=threshold specify an accumulated likelihood weight threshold for which different placements of read are printed
                  to file. Placements for a read will be printed until the sum of their placement weights has reached the threshold value.
                  Note that, this option can neither be used in combination with --epa-prob-threshold nor with --epa-keep-placements!

      --JC69 specify that all DNA partitions will evolve under the Jukes-Cantor model, this overrides all other model specifications for DNA partitions.

                  DEFAULT: Off

      --K80 specify that all DNA partitions will evolve under the K80 model, this overrides all other model specifications for DNA partitions.

                  DEFAULT: Off

      --HKY85 specify that all DNA partitions will evolve under the HKY85 model, this overrides all other model specifications for DNA partitions.

                  DEFAULT: Off


      --set-thread-affinity specify that thread-to-core affinity shall be set by RAxML for the hybrid MPI-PThreads version

                  DEFAULT: Off


      --bootstop-perms=number specify the number of permutations to be conducted for the bootstopping/bootstrap convergence test.
                  The allowed minimum number is 100!

                  DEFAULT: 100

      --quartets-without-replacement specify that quartets are randomly subsampled, but without replacement.

                  DEFAULT: random sampling with replacements

      --print-identical-sequences specify that RAxML shall automatically generate a .reduced alignment with all
                  undetermined columns removed, but without removing exactly identical sequences

                  DEFAULT: identical sequences will also be removed in the .reduced file





Installation

Source code for RAxML 8.2.12 downloaded from githhub and compiled with intel-2019b compilers and intel MPI.

System

64-bit Linux