memory error message: std::bad_alloc (after the MCMC)

52 views
Skip to first unread message

Susana Freitas

unread,
Sep 2, 2016, 8:06:03 AM9/2/16
to BUCKy users
Dear all,
I am running Bucky with 54 taxa and different sets of markers (130, 300, 600). So far, I keep having the same error when writting the concordance file.

terminate called after throwing an instance of 'std::bad_alloc'
  what():  std::bad_alloc
/var/spool/sge/node108/job_scripts/302925: line 18:  3670 Aborted                 /home/bo1sdf/softwares/bucky-1.4.4/src/bucky -o 136randseqs --calculate-pairs --create-joint-file --create-single-file --use-update-groups *.in

The out file finishes like this:

54   Dval5_____ 136  
Read 136 genes with a total of 217872 different sampled tree topologies
Writing input file names to file 136randseqs.input....done.
Sorting trees by average posterior probability....done.
Writing single gene posterior distribution table to file 136randseqs.single....done.
Initializing random number generator....done.
Initializing gene information....done.
Initializing splits counts (found 1338027 distinct splits)....done.
Setting initial MCMC state....done.
Initializing MCMCMC acceptance counters and pairwise counters....done.
MCMC initiated at Wed Aug 31 14:43:48 2016


Beginning burn-in with 10000 updates (10% extra of desired updates)...
0   10   20   30   40   50   60   70   80   90   100
+----+----+----+----+----+----+----+----+----+----+
***************************************************
 ....done.
Initializing summary tables...done.
Beginning 100000 MCMC updates...
0   10   20   30   40   50   60   70   80   90   100
+----+----+----+----+----+----+----+----+----+----+
***************************************************
 ....done.
Writing joint posterior table to file 136randseqs.joint....done.
Writing cluster summary to file 136randseqs.cluster....done.
Writing concordance factors to 136randseqs.concordance....

So the memory error happens after the MCMC, and not before (all messages in this forum with this error showed it before the MCMC).

I am running my data in an external server with 10G memory and ilimited time. This time, it took 12 days to abort with this error message... It is the second time already and I don't know what the error could be.
I have seen I can use the --opt-space. However, I am going to re-start the run and since this will take even more time I wanted to ask you if you have any suggestion that would help me stop having this issue.

Should I increase the memory allowed? Is there any other option or tweak I could use?

Thanks in advance!!

Susana

Cécile Ané

unread,
Sep 2, 2016, 12:19:40 PM9/2/16
to BUCKy users
It's the same problem as in this earlier post, for which a solution was provided in version 1.4.3. This problem occurs when the number of taxa is too high for the machine's memory. 
You remove the issue by turning off the calculation of the population tree: use the option: –no-population-tree .
You will get the concordance tree, but not the population tree (which uses quartets, and the number of quartets grows fast, like n^4, with the number of taxa n, hence memory issues).

Susana Freitas

unread,
Sep 2, 2016, 12:29:19 PM9/2/16
to bucky...@googlegroups.com
Ah! that's great! I will try that, and sorry for missing that post.

Thanks!
Susana

--
You received this message because you are subscribed to a topic in the Google Groups "BUCKy users" group.
To unsubscribe from this topic, visit https://groups.google.com/d/topic/bucky-users/VnW8hIVpQtQ/unsubscribe.
To unsubscribe from this group and all its topics, send an email to bucky-users+unsubscribe@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Susana Freitas

unread,
Sep 2, 2016, 3:12:50 PM9/2/16
to bucky...@googlegroups.com
Just a small note, it should be --no-population-tree (with -no-population-tree won't work). I think in the manual only has one '-'

Thanks again for the help
Cheers
Susana
Reply all
Reply to author
Forward
0 new messages