Skip to content

Releases: amkozlov/raxml-ng

RAxML-NG v1.2.2

30 Apr 21:08
Compare
Choose a tag to compare

Bugfixes

  • --evaluate: use lh_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

22 Dec 15:48
Compare
Choose a tag to compare

Bugfixes

RAxML-NG v1.2.0

09 May 19:52
Compare
Choose a tag to compare

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

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

29 Nov 18:48
Compare
Choose a tag to compare

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 (eg raxml-ng --check --msa aln.fa --model GTR+G --tree-constraint cons.nw --tree tree2check.nw)

Other

  • add --bs-write-msa flag to write out bootstrap MSAs from main inference run (PR #125, thanks to @harmsm)
  • fix assertion when rooting a multifurcating tree (#130)

RAxML-NG v1.0.3

21 Jul 14:22
Compare
Choose a tag to compare

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

22 Feb 18:22
Compare
Choose a tag to compare

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

21 Sep 17:34
Compare
Choose a tag to compare

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

08 Aug 01:23
Compare
Choose a tag to compare

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

20 May 16:49
Compare
Choose a tag to compare

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

  • more accurate autodetection of CPU core number (in particular, for AWS instances)
  • improve file vs. number autodetection in --bs-trees option (#64)
  • add CMake install target (#66)
  • fix small memory leaks in libpll

RAxML-NG v0.8.1 BETA

05 Mar 17:41
Compare
Choose a tag to compare

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 into bestTree file
  • MPI: broadcast random seed