Difference between revisions of "GARLI"

From UFRC
Jump to navigation Jump to search
 
(19 intermediate revisions by 3 users not shown)
Line 1: Line 1:
 
__NOTOC__
 
__NOTOC__
 
__NOEDITSECTION__
 
__NOEDITSECTION__
[[Category:Software]]
+
[[Category:Software]][[Category:Phylogenetics]][[Category:Biology]]
<!-- ########  Template Configuration ######## -->
+
{|<!--Main settings - REQUIRED-->
<!--Edit definitions of the variables used in template calls
 
Required variables:
 
app - lowercase name of the application e.g. "amber"
 
url - url of the software page (project, company product, etc) - e.g. "http://ambermd.org/"
 
Optional variables:
 
INTEL - Version of the Intel Compiler e.g. "11.1"
 
MPI - MPI Implementation and version e.g. "openmpi/1.3.4"
 
-->
 
{|
 
<!--Main settings - REQUIRED-->
 
 
|{{#vardefine:app|garli}}
 
|{{#vardefine:app|garli}}
 
|{{#vardefine:url|https://www.nescent.org/wg_garli/Main_Page}}
 
|{{#vardefine:url|https://www.nescent.org/wg_garli/Main_Page}}
<!--Compiler and MPI settings - OPTIONAL -->
+
|{{#vardefine:exe|1}} <!--Present manual instructions for running the software -->
|{{#vardefine:intel|}} <!-- E.g. "11.1" -->
 
|{{#vardefine:mpi|}} <!-- E.g. "openmpi/1.3.4" -->
 
<!--Choose sections to enable - OPTIONAL-->
 
|{{#vardefine:mod|1}} <!--Present instructions for running the software with modules -->
 
|{{#vardefine:exe|}} <!--Present manual instructions for running the software -->
 
 
|{{#vardefine:conf|}} <!--Enable config wiki page link - {{#vardefine:conf|1}} = ON/conf|}} = OFF-->
 
|{{#vardefine:conf|}} <!--Enable config wiki page link - {{#vardefine:conf|1}} = ON/conf|}} = OFF-->
 
|{{#vardefine:pbs|}} <!--Enable PBS script wiki page link-->
 
|{{#vardefine:pbs|}} <!--Enable PBS script wiki page link-->
Line 31: Line 16:
 
<!--Description-->
 
<!--Description-->
 
{{#if: {{#var: url}}|
 
{{#if: {{#var: url}}|
{{App_Description|app={{#var:app}}|url={{#var:url}}}}|}}
+
{{App_Description|app={{#var:app}}|url={{#var:url}}|name={{#var:app}}}}|}}
 +
 
 
GARLI is a program that performs phylogenetic inference using the maximum-likelihood criterion. Several sequence types are supported, including nucleotide, amino acid and codon. Version 2.0 adds support for partitioned models and morphology-like datatypes.  
 
GARLI is a program that performs phylogenetic inference using the maximum-likelihood criterion. Several sequence types are supported, including nucleotide, amino acid and codon. Version 2.0 adds support for partitioned models and morphology-like datatypes.  
<!--Location-->
+
<!--Modules-->
{{App_Location|app={{#var:app}}|{{#var:ver}}}}
+
==Required Modules==
Garli 2.0 is installed in /apps/garli/2.0
+
[[Modules|modules documentation]]
<!-- -->
+
===Serial===
{{#if: {{#var: mod}}|==Running the application using modules==
+
*{{#var:app}}
{{App_Module|app={{#var:app}}|intel={{#var:intel}}|mpi={{#var:mpi}}}}|}}
+
===Parallel (OpenMP)===
{{#if: {{#var: exe}}|==How To Run==
+
*intel
WRITE INSTRUCTIONS ON RUNNING THE ACTUAL BINARY|}}
+
*{{#var:app}}
 +
===Parallel (MPI)===
 +
*intel
 +
*openmpi
 +
*{{#var:app}}
 +
<!--Additional-->
 +
{{#if: {{#var: exe}}|==Additional Information==
 +
See [https://molevol.mbl.edu/index.php/Garli_FAQ Garli FAQ]
 +
While the garli module provides the serial version of Garli there is a garli/2.0-mp module that provides both the multithreaded (OpenMP) and an MPI (OpenMPI) versions of Garli.
 +
 
 +
To use the OpenMP version of Garli, you must set the environment variables '''OMP_NUM_THREADS''' and '''OMP_THREAD_LIMIT''' to the appropriate values based on the core number request in your submission script. For example if you use #SBATCH --cpus-per-task=8 in your script, also include export OMP_NUM_THREADS=7; export OMP_THREAD_LIMIT=8 (for a bash script) in the script itself. To decide whether the performance gain with the multithreaded version is worth it for your particular job see the  [https://molevol.mbl.edu/index.php/Garli_FAQ#Should_I_use_a_multi-threaded_.28openMP.29_version_of_GARLI_if_I.E2.80.99m_using_a_computer_with_multiple_processors.2Fcores.3F Garli FAQ on using the OpenMP version].
 +
 
 +
The MPI version of Garli is discussed in the [https://molevol.mbl.edu/index.php/Garli_FAQ#What_is_the_parallel_MPI_version_of_GARLI.3F_Should_I_use_it.3F Garli FAQ]. See the FAQ entry help to decide whether it is appropriate to use the MPI version of Garli for your job. If you decide to use the MPI version of Garli, use the <code>mpiexec</code> MPI wrapper to run it. For example,
 +
mpiexec Garli-mpi 12
 +
|}}
 
{{#if: {{#var: conf}}|==Configuration==
 
{{#if: {{#var: conf}}|==Configuration==
 
See the [[{{PAGENAME}}_Configuration]] page for {{#var: app}} configuration details.|}}
 
See the [[{{PAGENAME}}_Configuration]] page for {{#var: app}} configuration details.|}}
 
{{#if: {{#var: pbs}}|==PBS Script Examples==
 
{{#if: {{#var: pbs}}|==PBS Script Examples==
 
See the [[{{PAGENAME}}_PBS]] page for {{#var: app}} PBS script examples.|}}
 
See the [[{{PAGENAME}}_PBS]] page for {{#var: app}} PBS script examples.|}}
{{#if: {{#var: policy}}|==Usage policy==
+
{{#if: {{#var: policy}}|==Usage Policy==
 
WRITE USAGE POLICY HERE (perhaps templates for a couple of main licensing schemes can be used)|}}
 
WRITE USAGE POLICY HERE (perhaps templates for a couple of main licensing schemes can be used)|}}
 
{{#if: {{#var: testing}}|==Performance==
 
{{#if: {{#var: testing}}|==Performance==

Latest revision as of 16:53, 15 August 2022

Description

garli website  

GARLI is a program that performs phylogenetic inference using the maximum-likelihood criterion. Several sequence types are supported, including nucleotide, amino acid and codon. Version 2.0 adds support for partitioned models and morphology-like datatypes.

Required Modules

modules documentation

Serial

  • garli

Parallel (OpenMP)

  • intel
  • garli

Parallel (MPI)

  • intel
  • openmpi
  • garli

Additional Information

See Garli FAQ While the garli module provides the serial version of Garli there is a garli/2.0-mp module that provides both the multithreaded (OpenMP) and an MPI (OpenMPI) versions of Garli.

To use the OpenMP version of Garli, you must set the environment variables OMP_NUM_THREADS and OMP_THREAD_LIMIT to the appropriate values based on the core number request in your submission script. For example if you use #SBATCH --cpus-per-task=8 in your script, also include export OMP_NUM_THREADS=7; export OMP_THREAD_LIMIT=8 (for a bash script) in the script itself. To decide whether the performance gain with the multithreaded version is worth it for your particular job see the Garli FAQ on using the OpenMP version.

The MPI version of Garli is discussed in the Garli FAQ. See the FAQ entry help to decide whether it is appropriate to use the MPI version of Garli for your job. If you decide to use the MPI version of Garli, use the mpiexec MPI wrapper to run it. For example,

mpiexec Garli-mpi 12