amkozlov / raxml-ng

RAxML Next Generation: faster, easier-to-use and more flexible
GNU Affero General Public License v3.0
374 stars 62 forks source link

Assertion failed: (new_loglikeliAssertion failed:... #149

Open LemoAlex opened 1 year ago

LemoAlex commented 1 year ago

Dear raxml-ng users,

I am trying to compile a tree based on the core-genes of 20 bacterial strains. However, I am running into several issues along the way. My input file is a .msa fasta file compiled through ppanggolin pan-genome software (https://github.com/labgem/PPanGGOLiN).

I first started by running Modeltest-ng on the dataset, and it ran without issue. Then, when running:

raxml-ng --msa input.msa --model TIM1+I+G4

I obtained the error :

c++abi: terminating with uncaught exception of type std::runtime_error: ERROR in SPR round (LIBPLL-2240): BL opt converged to a worse likelihood score by -9821673.723147086799145 units

I then saw on previous post that this error could be cicumvented by adding the --blopt nr_safe parameter, so :

raxml-ng --minput.msa --model TIM1+I+G4 --blopt nr_safe

but this time, I get the error mentioned in the title, i.e. :

Assertion failed: (new_loglikeliAssertion failed: (new_loglikeliAssertion failed: (new_loglikelihood - loglikelihood > new_logliAssertion failed: (new_loglikeliAssertion failed: (new_loglikelihood - loglikelihood > new_loglikelihood BETTER_LL_TRESHOLD), function pllmod_opt_optimize_branch_lengths_local_multi, file pll_optimize.c, line 1903. Assertion failed: (new_loglikeliAssertion failed: (new_loglikelihood - loglikelihood > new_loglihood - loglikelihood > new_loglikelihood BETTER_LL_TRESHOLD), function pllmod_opt_optimize_branch_lengths_local_multi, file pll_optimize.c, line 1903.

Do you have any idea of what is happening? I am running raxml-ng v1.1 on a macos M1 computer. The program runs fine with other datasets, so it theoretically should not be a version or compatibility issue. The log file (attached) doesn seem to have any issue, as far as I understand.

core_genome_alignment.aln.raxml.log

Thank you for your help,

Best Regards,

Alexandre

amkozlov commented 1 year ago

Hi Alexandre,

at the first glance, I don't see anything suspicious in the log file. Could you please check if you get the same error on a x86 system? Also please post / send your alignment file.

Best, Alexey

LemoAlex commented 1 year ago

Hello Alexey,

Thank you for the prompt response. Here is the alignment file, it was pretty big so I gzipped it.

input.msa.gz

I will try it on another computer asap. However, I am not sure to understand why it would then have worked on this computer with another dataset?

Thanks for the help,

Best, Alexandre

amkozlov commented 1 year ago

well I just tested it on x86 Intel machine and it works. are you running the native M1 version or in x86 emulation mode?

LemoAlex commented 1 year ago

Hello Alexey,

I was running it on the native "experimental" M1 binary. It seems that you were right and that the error comes from this. Actually, I managed to run the program with the exact same dataset and options on both a linux (ubuntu, desktop computer) environment, and also on HPC (raxml-ng-mpi) environment. So somthing is going on with the M1 binary apparently.

Thanks a lot for your help !

Best, Alexandre