SEQanswers

Go Back   SEQanswers > Bioinformatics > Bioinformatics


Reply
 
Thread Tools
Old 07-13-2009, 01:36 PM   #1
bioinfosm
Senior Member
 
Join Date: Jan 2008
Location: USA
Posts: 363
Default memory requirments of velvet tool (de novo assembly)

Hi,

Does someone have an idea of how much memory would velvet require for a given input of short reads? And how would it possibly scale with more / longer reads?

Also, any other 'large dataset' de novo assembly tools for the illumina reads. SOAP says 100Gb RAM for human sized genomes, are there other options and what would their memory requirements be?

thanks for sharing..
bioinfosm is offline   Reply With Quote
Old 07-14-2009, 08:09 AM   #2
bioinfosm
Senior Member
 
Join Date: Jan 2008
Location: USA
Posts: 363
Default

To answer part of it myself, this is a useful source on velvet mailing-list
http://listserver.ebi.ac.uk/pipermai...ne/000359.html

The gist is,
Ram required for velvetg = -109635 + 18977*ReadSize + 86326*GenomeSize + 233353*NumReads - 51092*K

Gives the answer in kb.

Read size is in bases.
Genome size is in millions of bases (Mb)
Number of reads is in millions
K is the kmer hash value used in velveth
bioinfosm is offline   Reply With Quote
Old 08-04-2009, 06:56 PM   #3
Torst
Senior Member
 
Join Date: Apr 2008
Location: Victorian Bioinformatics Consortium, AUSTRALIA
Posts: 135
Default

The above formula derived by Simon Gladman has a caveat of only being applicable to Velvet when compiled with the default MAXKMERSIZE=31. If you compiled with 63 for example, the memory usage will increase.
Torst is offline   Reply With Quote
Old 01-05-2010, 08:24 PM   #4
KevinLam
Senior Member
 
Join Date: Nov 2009
Location: SEA
Posts: 114
Default

So what happens when the machine doesn't have enough ram?
does it give a error or just proceed very very slowly?

would having a large enough swap partition help?
KevinLam is offline   Reply With Quote
Old 01-06-2010, 06:09 AM   #5
Zigster
Member
 
Join Date: May 2009
Location: Philadelphia, PA
Posts: 86
Default

It will segfault, but sometimes it will lock up a machine so badly you will have to physically pull the plug.

I suggest using ulimit, for example I have a 256gb machine and use
ulimit -v 240000000
before every run
__________________
--
Jeremy Leipzig
Bioinformatics Programmer
--
Standardized Velvet Assembly Report - designed to help Velvet users identify the optimal kmer and cvCut parameters
My blog
FriendFeed
Zigster is offline   Reply With Quote
Old 01-06-2010, 07:20 AM   #6
jgibbons1
Member
 
Join Date: Oct 2009
Location: Nashville, TN
Posts: 36
Default

We've been needing approximately 30g of RAM for velvet assembly with a minimum of 24g depending on the kmer length specified. *This is with single-ended read 36bp Illumina data.

Last edited by jgibbons1; 01-06-2010 at 07:52 AM.
jgibbons1 is offline   Reply With Quote
Old 01-06-2010, 07:50 AM   #7
francesco.vezzi
Member
 
Join Date: Jan 2009
Location: Udine (Italy)
Posts: 48
Default

In order to assmebly a lane of paired reads of length 75 we used 120 giga with a k-mer size of 47.
Obviously the amount of date decrease with a smaller k-mer, but a shorter k-mer implies a higher possibility of mistakes.

I think, this is a my opinion, that with the increasing of the read length tools like velvet will became too memory consuming, and they will became unpractical.
With a read length of 150 an approach like PCAP, ARACNE and EDENA that build an overlap graph and not a de bruijn graph is the only feasible opportunity
francesco.vezzi is offline   Reply With Quote
Old 01-06-2010, 12:52 PM   #8
bioinfosm
Senior Member
 
Join Date: Jan 2008
Location: USA
Posts: 363
Default

Is it human genome you are working on

One approach is to map reads to reference, and assemble the unmapped reads. Though this can yield a pretty fragmented assembly that is hard to use eventually...

Do you usually do things like remove contaminants or low quality reads, take only the unique set of reads.. ? These can certainly reduce the run time, but last I looked, using a redundant set of reads gave slightly different assembly than a non-redundant one.
__________________
--
bioinfosm
bioinfosm is offline   Reply With Quote
Old 01-06-2010, 01:03 PM   #9
jgibbons1
Member
 
Join Date: Oct 2009
Location: Nashville, TN
Posts: 36
Default

Sorry...I replied to the wrong thread.

Last edited by jgibbons1; 01-06-2010 at 02:05 PM. Reason: replied to the wrong thread
jgibbons1 is offline   Reply With Quote
Reply

Tags
assemble, de novo, memory, soap, velvet

Thread Tools

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off




All times are GMT -8. The time now is 07:53 PM.


Powered by vBulletin® Version 3.8.6
Copyright ©2000 - 2010, Jelsoft Enterprises Ltd.