This is a test version of Biostars. For the public version, visit https://www.biostars.org.
diamond seems to run out of memory

Hi, I ran diamond on a 128GB ram computer with a 2.8Gb genome. However, it appears it ran out of memory. Would there be a way to reduce the amount of memory?

$ diamond makedb --in GenbankAA.fasta --db diamond -p 8
$ diamond blastx --threads 1 -q genome.softmasked.fasta --db diamond -o diamond.matches.tab -e 1e-10 -k 0 --more-sensitive -f 6 sseqid slen sstart send qseqid qlen qstart qend pident length evalue score qcovhsp qframe
...
Searching alignments...  [0.602s]
Deallocating buffers...  [0s]
Clearing query masking...  [0.247s]
Computing alignments... Error: std::bad_alloc

Thank you in advance

alignment gene

1 answer

Diamond is limited in processing that long of a query sequence in blastx mode. One thing you can try is to use the frameshift mode (option -F 15). Otherwise, you probably should extract ORFs from the genome and search those.

  1. Thank you, -F 15 worked. What does frameshift mode mean and why 15 has been chosen?
  2. How would you extract ORFs from the genome?

You will need to predict genes and then extract the sequences.

Thank you.

  1. This mode is able to compute alignments that contain a change in the reading frame. 15 is the penalty and only a recommended value. The mode was also designed to handle longer sequences.
  2. There are tools for doing this, I'm sure google can help.

I created for each of the 19 chromosomes a FASTA file. Each of the 19 FASTA files is around 150Mb. Is frameshift mode (option -F 15) a good value?

I have not tested it on this kind of data but you can surely try.

Log in to answer this question.