amkozlov / raxml-ng

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

'std::out_of_range' during ML tree search #120

Closed cErikson closed 3 years ago

cErikson commented 3 years ago

I'm getting the following error. It is related to the number of workers. As when workers is defaulted to 1 it runs. Version 1.0.2 pulled from bioconda

#Error
Starting ML tree search with 24 distinct starting trees

terminate called after throwing an instance of 'std::out_of_range'
terminate called recursively
  what():  vector::_M_range_check: __n (which is 94608461274880) >= this->size() (which is 6)

# Call
raxml-ng --prefix noalign --all --tree rand{12},pars{12} --log DEBUG --msa asv.fasta --model GTR+G --threads 32 --workers 6
amkozlov commented 3 years ago

Hi Christian,

thanks for reporting, could you please post full raxml-ng log and if possible your MSA?

amkozlov commented 3 years ago

OK I guess I know what's going on: in your setup, the number of threads (32) is not a multiple of the number of workers (6). So please use e.g. 4 or 8 workers with 32 threads.

I will add a check and print a clear error message in the next version.

cErikson commented 3 years ago

Whoops, that was it.

amkozlov commented 3 years ago

thanks for the confirmation, this should be fixed now!