Releases: amkozlov/raxml-ng
RAxML-NG v1.2.2
Bugfixes
--evaluate
: uselh_epsilon=0.1
by default- fix yet another bug with incomplete constraint trees
- improve CPU core count detection in node-sharing scenario
Other
Starting with v1.2.2, we provide a universal macOS binary which should work on both old Intel/x86 and new Apple/Arm chips.
We strongly recommend using this pre-compiled binary on macOS, since alternative installation methods (homebrew, compilation from source) might lead to hard-to-debug errors!
RAxML-NG v1.2.1
Bugfixes
- please see commit history
RAxML-NG v1.2.0
This release introduces multiple performance optimizations which yield 2x
to 5x
speedup for most typical analyses and datasets.
IMPORTANT: Due to change in defaults, the results are not compatible with previous raxml-ng versions. If you need to reproduce the behavior of raxml-ng 1.1.0
, add --extra compat-v11
. Most changes can be also disabled one-by-one, please see instructions below:
New defaults & optimizations
--search1
: use parsimony starting tree by default- bootstrap: use parsimony starting trees by default (add
--extra bs-start-rand
to use random starting trees as before) - faster CLV updates in SPR rounds by @togkousa (#157), add
--extra fastclv-off
to disable - new logLH epsilon defaults by @tschuelia:
eps=1000
for brlen triplet optimization,eps=0.1
for final model optimization,eps=10
everywhere else (details: https://www.biorxiv.org/content/10.1101/2022.07.13.499893v1.full.pdf) - parallelize parsimony starting tree computation (#151)
New features
- new amino-acid replacement matrices: Q.pfam, Q.bird, Q.insect, Q.mammal, Q.plant, Q.yeast (details: https://doi.org/10.1093/sysbio/syab010)
- arm64 support incl. vectorization via sse2neon library (#142)
Bugfixes
- fix regression failure with CATG input (#131)
- do not auto-enable rate scalers with >2000 taxa if
--force
/--force model_rate_scalers
is specified (#133) - partially incorrect TBE support values in
--all
mode --consense
: fix error if result is a star tree (#143)- invalid buffer size which led to failures in some parallel configurations (MPI with multiple workers per rank)
- truncate FASTA sequence names after the first space by default (#90). Alternatively, spaces can be converted to underscores with
--msa-format fasta_longlabels
.
Packaging note
This release is built with pll-modules 0.4.0, and libpll-2 0.4.0, and terraphast-0.1.0.
RAxML-NG v1.1.0
This release introduces several features/bugfixes that improve speed and/or accuracy of constrained tree search, especially in case of an incomplete constraint tree.
Constrained tree search improvements
- switch to a new constraint check approach based on split compatibility (old method still available via
--extra constraint-old
) - allow user and parsimony-based starting trees in combination with topological constraint
- use 10 random + 10 parsimony starting trees by default (previously: 20 random)
--check
/--parse
will check compatibility with constraint if specified (egraxml-ng --check --msa aln.fa --model GTR+G --tree-constraint cons.nw --tree tree2check.nw
)
Other
RAxML-NG v1.0.3
BUGFIXES:
--consense
: fix empty output file prefix set by default--sitelh
: fix slow printing of per-site log-likelihoods- fix issues when compiled without
-D_RAXML_PTHREADS
- coarse-grained: check that number of threads is multiple of the number of workers (#120)
- fix memory corruption in FreeRate optimization
- fix numerical issues due to zero rates in mtMAM matrix
- fix invariant site detection to account for ambiguous states (#121)
RAxML-NG v1.0.2
BUGFIXES:
- check for square brackets in taxon names (not allowed by Newick)
- fix 'LIBPLL-111: memory exhausted' error on very large ladder-like trees
- fix parallel compilation of tests (#108)
- do not print incorrect energy measurements after the latest Linux kernel patch
- coarse-grained parallelization: fix bootstrap failure/hanging in some special cases (eg autoMRE{x} where x<50)
- check for unifurcations in constraint tree (#114)
- improve error message when invalid number of substitution rates is specified
RAxML-NG v1.0.1
BUGFIXES:
- regression: RF computation with multiple files (
--rf tree1,tree2
) reported incorrect, unrealistically high distances (eg >0.8). However,--rf treeset.nw
format was not affected and reported correct values. - load balancing failed in rare edge cases (<=1 sites/core)
RAxML-NG v1.0.0
Major new features
- coarse-grained parallelization across tree searches (
--workers
option) -> see details - adaptive parallelization (
--threads auto{MAX}
,--workers auto
) -> see detais - print per-site log-likelihoods (
--sitelh
command, #26) - alignment column weighting (
--site-weights
option, #51) -> see details
Other features & optimizations
- energy monitoring via RAPL -> see details
- partial loading of RBA alignments (ExaML-style, saves memory for MPI runs on large supermatrices)
- detect CPU core oversubscription to prevent extreme slowdowns -> see details
- collapse short branches (bl=min) into multifurcations (#23)
- write down intermediate results (mlTrees, bootstraps)
- much faster (20x-30x) parsimony starting tree generation
Bugfixes
- asc bias failed under certain circumstances (site repeats disabled and non-DNA data)
- fix zero subst. rates in FLU model (#93)
- out-of-range branch lengths after scaling/normalization (eg #86)
- base frequency optimization sporadically failed when estimates hit the boundaries
Minor
- print CPU model/RAM/core count in logfile
- if
--blmin
is specified, adjust--precision
accordingly - remove BS support + 0.0 brlen at the root
- ensure that min/max brlens are not exceeded in user starting tree
- check that
--msa
file is not empty and not a directory - check if start trees are bifurcating (#96)
- check if partition range has all sites in single-partition case
- check if +BU{} is specified in single-partition case
- do not use word "pattern" if pattern compression is off
RAxML-NG v0.9.0
This is the first RAxML-NG release without "BETA" tag, which means we now consider it stable enough to be used in production analyses. We strongly recommend all RAxML8.x users to upgrade!
More good news: RAxML-NG application note has been accepted in Bioinformatics, so please update your citations!
New features
- consensus tree computation (
--consense
command) - ancestral state reconstruction (
--ancestral
command) - custom DNA substitution models via rate symmetries (eg
--model DNA010010
=--model HKY
)
Minor
RAxML-NG v0.8.1 BETA
Optimizations and extensions
- support model parameters in PAML format (
--model PROTGTR{paml.txt}+G4
) - TBE optimization (>100x faster thanks to @lutteropp)
- safety checks can be disabled one-by-one, eg
--force threads,..
or--force model_overfit
- print trees on a (small) terrace into standard multi-line newick file
- RF distance: accept multiple newick files separated by commas (eg.
--rf tree1.nw,tree2.nw
) - properly handle zero state frequencies via rate matrix reduction trick
Bugfixes
- segfault in load balancing (rare special case)
- fix empirical p-inv computation with pattern compression
- #60: a rare bug in Brent optimization with values close to 0 (reported by @ephofmann)
--loglh
: user-specified brlen scaler values were ignored
Minor
- use 20 random starting trees by default if topological constraint is specified
--evaluate
: save best-scoring tree intobestTree
file- MPI: broadcast random seed