Hi Paul, If you want you can turn off the SEQRES to ATOM alignment part and reduce memory requirements a bit. You can do this with PdbFileParser.setAlignSeqRes(false); ...
Andreas On Wed, Mar 11, 2009 at 1:06 PM, Paul B <[email protected]> wrote: > Sorry, I sent this earlier and then I read that attaching a file can cause > spam problems. So here is my netbeans.conf file inline showing 1024 Mg ram > to be used for heap size: > > # ${HOME} will be replaced by JVM user.home system property > # netbeans_default_userdir="${HOME}/.netbeans/6.5" > # Options used by NetBeans launcher by default, can be overridden by explicit > # command line switches: > netbeans_default_options="-J-Dorg.glassfish.v3.installRoot=\"C:\Program > Files\glassfish-v3-prelude\" -J-Dcom.sun.aas.installRoot=\"C:\Program > Files\glassfish-v2ur2\" -J-client -J-Xverify:none -J-Xss2m -J-Xms32m > -J-XX:PermSize=32m -J-XX:MaxPermSize=200m -J-Dapple.laf.useScreenMenuBar=true > -J-Dsun.java2d.noddraw=true" > # Note that a default -Xmx is selected for you automatically. > # You can find this value in var/log/messages.log file in your userdir. > # The automatically selected value can be overridden by specifying -J-Xmx here > # or on the command line. > # command line switches > netbeans_default_options="-J-Xms32m -J-Xmx1024m -J-XX:PermSize=32m > -J-XX:MaxPermSize=96m -J-Xverify:none -J-Dapple.laf.useScreenMenuBar=true > -J-XX:+UseConcMarkSweepGC -J-XX:+CMSClassUnloadingEnabled > -J-XX:+CMSPermGenSweepingEnabled -J-XX:+UseParNewGC" > # If you specify the heap size (-Xmx) explicitely, you may also want to enable > # Concurrent Mark & Sweep garbage collector. In such case add the following > # options to the netbeans_default_options: > # -J-XX:+UseConcMarkSweepGC -J-XX:+CMSClassUnloadingEnabled > -J-XX:+CMSPermGenSweepingEnabled > # -J-XX:+UseParNewGC > # (see http://wiki.netbeans.org/wiki/view/FaqGCPauses) > # Default location of JDK, can be overridden by using --jdkhome <dir>: > netbeans_jdkhome="C:\Program Files\Java\jdk1.6.0_06" > # Additional module clusters, using ${path.separator} (';' on Windows or ':' > on Unix): > #netbeans_extraclusters="/absolute/path/to/cluster1:/absolute/path/to/cluster2" > # If you have some problems with detect of proxy settings, you may want to > enable > # detect the proxy settings provided by JDK5 or higher. > # In such case add -J-Djava.net.useSystemProxies=true to the > netbeans_default_options. > > > --- On Wed, 3/11/09, Paul B <[email protected]> wrote: > > > From: Paul B <[email protected]> > Subject: Out of heap space during structure parsing. > To: [email protected] > Date: Wednesday, March 11, 2009, 8:51 AM > > > > > > > > Hi, > > I am using BioJava 1.6.1 to parse PDB files. My machine has 2GB of RAM. I am > using Netbeans 6.5 as my development environment with Java 1.6. My > user-specific netbeans.conf file is attached, with a heap space of 1GB. The > relevant BioJava code is below: > > try { > pdbreader = new PDBFileReader(); > pdbreader.setPath(localFilePath); > pdbreader.setAutoFetch(true); > struc = pdbreader.getStructureById(pdbCode); > ... > > Using this code, I had successfully parsed smaller PDB files like 2BEG and > 1Q80. Then I tried to parse a slightly larger file 1FFK and received this > message on the 'struc =' line: > > Exception in thread "main" java.lang.OutOfMemoryError: Java heap space > at > org.biojava.bio.alignment.NeedlemanWunsch.pairwiseAlignment(NeedlemanWunsch.java:411) > at > org.biojava.bio.alignment.NeedlemanWunsch.getAlignment(NeedlemanWunsch.java:315) > at > org.biojava.bio.structure.io.SeqRes2AtomAligner.align(SeqRes2AtomAligner.java:220) > at > org.biojava.bio.structure.io.SeqRes2AtomAligner.align(SeqRes2AtomAligner.java:140) > at > org.biojava.bio.structure.io.PDBFileParser.triggerEndFileChecks(PDBFileParser.java:2249) > at > org.biojava.bio.structure.io.PDBFileParser.parsePDBFile(PDBFileParser.java:2155) > at > org.biojava.bio.structure.io.PDBFileParser.parsePDBFile(PDBFileParser.java:2013) > at > org.biojava.bio.structure.io.PDBFileReader.getStructureById(PDBFileReader.java:439) > at biojavatest.PdbDemo.grabPdbFileStruc(PdbDemo.java:105) > at biojavatest.PdbDemo.runTest(PdbDemo.java:67) > at biojavatest.PdbDemo.main(PdbDemo.java:58) > > Any suggestions? Is the problem specific to some deviation in 1FFK, or in > BioJava's parser implementation? > > By the way, I am using BioJava simply as a parser, and I am then dumping the > data into class objects of my own design and persisting them to a SQL Server > database. As such, I don't need all the ATOM information held in memory. > Perhaps there is a way to lazy load that information upon request? > > Is there a development version of BioJava that's downloadable and offers a > more memory efficient way of grabbing data? > Thanks, > > Paul > _______________________________________________ > Biojava-l mailing list - [email protected] > http://lists.open-bio.org/mailman/listinfo/biojava-l > _______________________________________________ Biojava-l mailing list - [email protected] http://lists.open-bio.org/mailman/listinfo/biojava-l
