Increase JAVA memory beyond 1024?

Help
Peter Hoyt
2011-08-09
2013-05-20
  • Peter Hoyt
    Peter Hoyt
    2011-08-09

    Is it possible to increase the JAVA memory allotment beyond Xmx 1024m?
    I have a Windows server with 32Gb RAM and in other JAVA-Based packages this was possible (for example: "Xmx22000m -Xss512M -Xms22000m <program>.jar".  But I guess there is no "MEV.jar" file.  Any suggestions besides reducing my dataset? I run a Core Facility and I have some really big datasets. 

     
  • Lauro Sumoy
    Lauro Sumoy
    2012-01-17

    We also have this problem. Is there an actual limit to the memory that can be alocated for TMEV? In the documentation FAQ we only see 512, 768 and 1024 as the proposed options. We are using Windows 7 with 16Gb RAM. We are trying to upload a file with 450,000 rows and 48 columns -226MB in size- and get a java heap space memory error. A similar file with 450,000 rows but only 12 colums -43.8 MB in size- uploads fine.
    We also have Linux machines and a cluster with even larger memory so it would be possible to try alternatives. Can you please help?

     
  • sherden
    sherden
    2012-01-30

    Similar issue here.  I have a 33000+ by 8 data set, setting -Xms2048M doesn't provide enough memory to do hierarchical clustering of it, but going higher then -Xms2132M ( a number arrived at by frustrating trial and error) causes a Java heap allocation error.  The computer has 4GB memory though and 64bit Java plus I can set -Xms3G or higher for other Java applications on the same computer (like the program Geneious) so this appears not to be an issue with anything other then the MeV program itself.  I found a computer with 8GB ram and tried again, but now anything above -Xms2145M (again, arrived at by trial and error) produced the same result.  I really need to do clustering on this data set, and theoretically I have the ram to do so, but how to I get this ram to MeV so I can do the clustering with it?

     
  • ElCascador
    ElCascador
    2012-07-25

    Hi,

    I managed to get through this issue on my 16Gb Linux computer. After reading this : http://www.tm4.org/mev/faq
    I just opened my tmev.sh (probably tmev.bat for windows) and change the "java -Xmx1024m" by "java -Xmx4096m"

    No error at lauch, and it was able to perform my hierarchical clustering like a charm.

     
  • sherden
    sherden
    2012-07-25

    @calourftor:  I just tried what you suggested and it isn't working for me at all.  No matter how I adjust -Xmx in the .sh file it has no effect on MeVs maximum memory (whenever I quite, adjust -Xmx, reopen and do a clustering MeV still complains it has too little memory by the same amount as it did before I adjusted -Xmx.)  The ONLY thing for me that seems to effect the amount of memory MeV has is -Xms in the "info.plist" file.  If I adjust -Xms then the amount of memory MeV complains that it is short by does change, but if I go just a few MB over 2GB with -Xms then MeV won't even open.  I have now tried adjusting -Xmx in the .sh file and -Xmx in the info.plist file together (both as one and up and down relative to one another) and it still looks like only -Xms has any effect on memory for me and yet I can't increase it to a point where MeV will both open and have enough memory to cluster the data set I need to cluster even though the computer has more then enough memory (according to MeV).

     
  • sherden
    sherden
    2012-07-25

    @calourftor:  Tried every combination of everything, still the same issues and results as my first post just above yours.

    Two key questions to help me understand your success and hopefully duplicate it:

    1) What version of MeV are you using (maybe newer ones work better)

    2) How high did you set -Xmx?

     
  • Peter Hoyt
    Peter Hoyt
    2012-11-13

    calourftor,
    When you tried everything, did you get the same limits as me? I could not increase the Xmx setting beyond exactly 1544m, and could not increase the Xss setting beyond 2M (but see below). The "m" and "M" are not interchangeable either, i.e. 2M works but 2048m does not for Xss.
    I tried javaw.exe vs. java.exe and got the same results (with different errors). I also tried adjusting some other Java limits including Xms. The following combo did work in the batch file:
    java -Djava.library.path=lib -Xss10M -Xms1500M -Xmx1500M -cp
    But I'm not sure increasing the Xss will really gain much. This really limits what we can do with MEV in a Windows environment.

    Has anyone tried changing settings like:
    -XX:NewSize, -XX:MaxNewSize, or  -XX:SurvivorRatio?

     
  • Peter Hoyt
    Peter Hoyt
    2012-11-13

    Ignore the stupid comments about "The "m" and "M" are not interchangeable either, i.e. 2M works but 2048m does not for Xss." As I meant 2048M but shednu had already addressed this limit above. Further, I don't think going from 1024m to 20M is an increase. Obviously I'm not a JAVA guru.