[Biojava-l] Any memory-optimised blast parser available ?

Andy Yates ayates at ebi.ac.uk
Mon Nov 13 11:28:29 UTC 2006


Have you tried increasing the amount of memory the Java virtual machine 
has available? The problem with Java is that it starts with a default 
memory limit of approx. 128MB which if you've got a memory intensive 
process will not be enough.

When running your program try adding the option


So if my class was called Main.class my command line would be:

java -Xmx256M -cp .:biojava.jar Main

Or if you're running this from ant then there is an attribute maxmemory 
which can be specified in the <java/> task.

Hope that helps


Benoit VARVENNE wrote:
> Hello,
> I'm trying to parse blast result files from a remote blast on NCBI
> databases.
> In order to do so, i'm using biojava XML parser like this :
> -----------
>       InputStream is = new FileInputStream(blastFile);
>       BlastXMLParserFacade parser = new BlastXMLParserFacade();
>       SeqSimilarityAdapter adapter = new SeqSimilarityAdapter();
>       parser.setContentHandler(adapter);
>       List results = new ArrayList();
>       SearchContentHandler builder = new BlastLikeSearchBuilder(results,
>           new DummySequenceDB("queries"), new
> DummySequenceDBInstallation());
>       adapter.setSearchContentHandler(builder);
> // Here is the method that throws 'OutOfMemoryException'
>       parser.parse(new InputSource(is));
> -----------
> While blasting a genomic sequence (i've tried with 50Kb long sequences max),
> I've got an OutOfMemory exception.
> Does anyone know a way to resolve this ? (this aim is not to dividde my
> genomic locus in too many parts, 50Kb is a quarter of my genomic...)
> Thanks,
> Regards,
> Benoit

More information about the Biojava-l mailing list