This is a test version of Biostars. For the public version, visit https://www.biostars.org.
Kallisto quant error "std::bad_alloc"
  • Windows 10
  • Running in Terminal

I'm working on a non-model organism. I concatenated two samples raw reads (larval and adult), and used Galaxy Trinity to assemble the concatenated forward and reverse strands.

I then ran kallisto index on the fasta file (~107,500 KB)

kallisto index -i I.f_concat_Trinity_assembled.index I.f_concat_Trinity_assembled.fasta

This generates a file (size 1,186,659 KB) with the following log

[build] loading fasta file I.fasciola_109A1_67B8_concat_Trinity_assembled.fasta
[build] k-mer length: 31
[build] warning: clipped off poly-A tail (longer than 10)
        from 78 target sequences
[build] counting k-mers ... done.
[build] building target de Bruijn graph ...  done 
[build] creating equivalence classes ...  done
[build] target de Bruijn graph has 512211 contigs and contains 54818622 k-mers

When I run kallisto quant using the index file

kallisto quant \
-i I.f_concat_Trinity_assembled.index \
-o 67B6 \
-t 4 \
67B6_1.fq.gz \
67B6_2.fq.gz \
&> 67B6.log

I get the following log and error message

[quant] fragment length distribution will be estimated from the data
[index] k-mer length: 31
[index] number of targets: 175,677
[index] number of k-mers: 54,818,622
[index] number of equivalence classes: 65,536
terminate called after throwing an instance of 'std::bad_alloc'
  what():  std::bad_alloc

I have no idea how to fix this problem. I have run kallisto using practise human files and it worked so I can't quite work out what's going wrong. Googling tells me I may not have enough memory, but I have over 100 GB storage free, and 16 GB RAM. The human index I generated and aligned to was 2,445,321 KB (over twice the size), so really size shouldn't be a problem.

What is std::bad_alloc? How do I fix it?

rna-seq kallisto quant

Fixed it - switched computer off for 20 minutes, turned it back on, reran the kallisto index on the original FASTA to generate a new index, and ran quant against then new index - worked flawlessly.

To quote the IT crowd

Have you tried turning it off and on again?

0 answers

No answers yet.

Log in to answer this question.