Welcome, Guest. Please Login
YaBB - Yet another Bulletin Board
SEGFAULT in TestBranchDNDS.bf with longseq file (Read 1565 times)
YaBB Newbies

I love YaBB 1G - SP1!

Posts: 35
SEGFAULT in TestBranchDNDS.bf with longseq file
May 12th, 2005 at 6:27am

I've come up with this SEGFAULT error:

./HYPHYMP TemplateBatchFiles/TestBranchDNDS.bf <

I have grouped the necessary data/tree/options files to reproduce the bug in Multimedia File Viewing and Clickable Links are available for Registered Members only!!  You need to Login Login

Running HYPHYDebug in gdb I get:

Program received signal SIGSEGV, Segmentation fault.
0x080b8bb5 in _TheTree::ThreadReleafTreeCache (this=0x8799a48, dsf=0x8389278, index=10401, lastIndex=10400,
    startLeaf=0, endLeaf=3, position=657344, offset=0) at calcnode.cpp:7783
7783                                    *(fastIndex++) = *(nodeProbs++);

(gdb) backtrace
#0  0x080b8bb5 in _TheTree::ThreadReleafTreeCache (this=0x8799a48, dsf=0x8389278, index=10401,
    lastIndex=10400, startLeaf=0, endLeaf=3, position=657344, offset=0) at calcnode.cpp:7783
#1  0x080ff751 in _LikelihoodFunction::ComputeBlock (this=0x879b230, index=0, siteRes=0xa34e27f8)
    at likefunc.cpp:7943
#2  0x080eb0bf in _LikelihoodFunction::RecurseCategory (this=0x879b230, blockIndex=0, index=1, dependance=3,
    highestIndex=1, weight=0.071428571429688406) at likefunc.cpp:2375
#3  0x080eaf35 in _LikelihoodFunction::RecurseCategory (this=0x879b230, blockIndex=0, index=0, dependance=3,
    highestIndex=1, weight=1) at likefunc.cpp:2345
#4  0x080e9dae in _LikelihoodFunction::Compute (this=0x879b230) at likefunc.cpp:2037
#5  0x080f8efa in _LikelihoodFunction::ConjugateGradientDescent (this=0x879b230,
    precision=0.050000000000000003, bestVal=@0xbfffb8a0) at likefunc.cpp:5667
#6  0x080f1dda in _LikelihoodFunction:Shockedptimize (this=0x879b230) at likefunc.cpp:3828
#7  0x08077a22 in _ElementaryCommand::Execute (this=0x822d848, chain=@0xbfffe520) at batchlan.cpp:6061
#8  0x080571d7 in _ExecutionList::Execute (this=0xbfffe520) at batchlan.cpp:1092
#9  0x0811c40b in main (argc=2, argv=0xbffff634) at main-unix.cp:779

This is happening with options:

(3):Both synonymous and non-synonymous rate varies across sites via two independent gamma/beta distributions.

How many rate classes should be ([3-8] is a good range, must be >=2)

If I use:

(1):No site-by-site rate variation.

I don't get this error.

Please tell me if I can add anymore info,


Back to top
IP Logged
YaBB Administrator

Datamonkeys are forever...

Posts: 1658
Gender: male
Re: SEGFAULT in TestBranchDNDS.bf with longseq fil
Reply #1 - May 12th, 2005 at 8:37am
Dear Albert,

The analysis was crashing because it was trying to allocate more memory than is addressable by 32 bit machines for cache. Your example file has 147000 unique codon patterns, and a caching scheme in HyPhy wanted to allocate 147000*61*64 (because of 64 rate classes) * 8 (=4591103936) bytes.

By asking for 8 rate classes (each for syn and non-syn) you were also attempting to fit 64 rate classes to 4 sequences - I would recommend 3x3 at most (which would also reduce memory allocation by a factor of 64/9).

If this fails, try including CACHE_SUBTREES=0; at the beginning of TestBranchDNDS.bf. This flag will turn off the caching scheme (and reduce performance a bit).

By playing around with your data, I also discovered some inefficient data filtering code for long codon alignments and fixed it. HyPhy should load and filter the sequences about 10x faster for these types of data.

Back to top
« Last Edit: May 12th, 2005 at 1:29pm by Sergei »  

Associate Professor
Division of Infectious Diseases
Division of Biomedical Informatics
School of Medicine
University of California San Diego
IP Logged