# -------------------------------------------------------------------
# Likelihood analyzer
#
# 'phyml' PhyML is the only supported stable analyzer right now.
# 'raxml' RAxML is not supported yet, but it is in development stage.
# -------------------------------------------------------------------
analyzer=phyml

# ------------------------------------------------------------------
# Phyml Binaries path                                    
#                                                        
# By default, ProtTest will search for the PhyML executables in 
# $PROTTEST_HOME/bin. Users can define a different path, wether 
# absolute (starting with '/' or 'C:\\') or relative to 
# $PROTTEST_HOME directory using exe-dir property.                      
#                                                        
# If an usable version of PhyML is installed system-wide 
# (for example, from the Ubuntu/Debian repositories),    
# the user can set 'global-phyml-exe' property to true   
# and ProtTest will use the global binary instead of   
# local ones.                                            
# ------------------------------------------------------------------
global-phyml-exe    = false
exe-dir	            = bin

# -------------------------------------------------------------------
# Use --no-memory-check argument (only for PhyML)
#
# Latest versions of PhyML support this argument. Without this 
# argument, huge input alignments could crash during the model
# optimization waiting for the user to check the memory requirements.
# However, using this argument the user should be aware of the memory
# that the model optimization process will require in each node 
# (number of processes per node times the memory requirement per 
# single optimization. If not, a single node could run out of memory.
# -------------------------------------------------------------------
no-memory-check=yes

# -------------------------------------------------------------------
# Parallel strategy
#
# if using MPJExpress you can choose the parallel strategy
# to follow:
#
# 'static' by default. It distributes models amongst processors in
# a static way. This is the best choice for a little number
# of processors.
#
# 'dynamic' It does a better distribution of the computation load,
# but the root process doesn't compute any likelihood data, so it will
# be one processor less available to compute.
#
# 'dynamic_improved' Like the dynamic distribution, but there will be
# an extra thread to do the distribution, so the whole group of
# processors will compute the likelihood data.
#
# 'hybrid' An hybrid distribution coupling a distributed memory
# implementation of ProtTest-HPC with a threaded version of the
# likelihood computation.
# -------------------------------------------------------------------
parallel_strategy=dynamic_improved

# -------------------------------------------------------------------
# Thread Scheduling
#
# Uncomment line below to schedule openMP threads among the machine
# cores.
#
# number_of_threads declares the maximum of process elements which
# can be used from each node. If it is commented, the maximum number
# of processors available will be used.
#
# -------------------------------------------------------------------
#phyml_thread_scheduling=true
#number_of_threads=2

# -------------------------------------------------------------------
# Snapshot directory
#
# ProtTestHPC provides fault-tolerance adding checkpointing support.
# This is, being capable of resume a stopped execution just executing
# the application again with the same parameters.
#
# The snapshot directory will be the place where the temporary status
# files will be saved and loaded.
# -------------------------------------------------------------------
snapshot_dir=snapshot/

# -------------------------------------------------------------------
# Logging directory
#
# ProtTestHPC allows automatic logging for the user activity. Every
# execution generates a log file. 
#
# Log level is configurable:
#   'info'    Only general information messages are logged (default)
#   'fine'    General debug information is also logged
#   'finer'   More complex debug information is logged
#   'finest'  All activity is tracked
# -------------------------------------------------------------------
log_dir=log/
log_level=info
