#342 If Java is 64-bit, allow higher memory allocation

OBO-Edit (271)
Nomi Harris

Marcus has a computer with 6G of RAM, yet the OE installer (and config manager) only let you set the memory allocation to a max of 1860M. However, when he hand-edited oboedit.vmoptions and set it to a higher number, OE worked great (and didn't run out of memory like it did before).
This is because 32-bit JVMs can only handle 1860M. However, newer 64-bit JVMs (which some users have--such as Marcus) can use as much memory as you care to give them.
Is there some way to ask from within a running Java app whether the JVM is 32- or 64-bit? If so, we could set the max memory accordingly. (But might not be able to do that in the installer.)
Heiko investigated and didn't find any easy way to figure it out from inside a Java app--see http://stackoverflow.com/questions/807263/how-do-i-detect-which-kind-of-jre-is-installed-32bit-vs-64bit
Maybe the best solution for now is to add a paragraph to the documentation about how you can set the memory allocation higher IF you have a 64-bit JVM. (If you set it too high and you only have a 32-bit JVM, OE won't start.)
Could also add a note to the error message that complains if you set the value >1860M, and maybe let them set it higher with a warning?


  • Nomi Harris

    Nomi Harris - 2011-05-16

    In 2.1-b13, I have changed the wording of messages in OE and in installer about the fact that memory allocation is limited to 1860M unless you have a 64-bit JVM.
    I didn't see a way to change installer to conditionally allow >1860M if JVM is 64-bit, but at least wording now explains why there's a limit and how you can get around it.

  • Nomi Harris

    Nomi Harris - 2011-09-22
    • status: open --> open-duplicate
  • Nomi Harris

    Nomi Harris - 2011-10-05
    • status: open-duplicate --> closed-duplicate

Log in to post a comment.