Why is my java process using much more heap space than specified?reduce memory footprint of java virtual machineWhat resource limit is Java encountering on my Solaris server?Performance impact of Win32 + PAE on a JVMCan the JVM(Oracle) run into an OutOfMemory error if the heap size is below the max?Large virtual memory size of ElasticSearch JVMNon-heap memory leak JVMwhen is the jvm heap allocated by the OSHow can I verify the heap size startup arguments for an active JVM that's running as a Windows service and loading JVM params from registry?java.lang.OutOfMemoryError: Java heap spaceJava crash due to native memory allocation map failure, despite n

Asking bank to reduce APR instead of increasing credit limit

The term for the person/group a political party aligns themselves with to appear concerned about the general public

Working in the USA for living expenses only; allowed on VWP?

Future enhancements for the finite element method

How can I grammatically understand "Wir über uns"?

Bringing Food from Hometown for Out-of-Town Interview?

Looking after a wayward brother in mother's will

What does the behaviour of water on the skin of an aircraft in flight tell us?

Is there any Biblical Basis for 400 years of silence between Old and New Testament?

What does it mean by "d-ism of Leibniz" and "dotage of Newton" in simple English?

Creating Fictional Slavic Place Names

Does a component pouch automatically contain components?

How can I offer a test ride while selling a bike?

How do I get a list of only the files (not the directories) from a package?

Beginner's snake game using PyGame

The deliberate use of misleading terminology

Why does the UK have more political parties than the US?

Is there a rule that prohibits us from using 2 possessives in a row?

Strange math syntax in old basic listing

Rotated Position of Integers

Can a helicopter mask itself from Radar?

Is there an evolutionary advantage to having two heads?

Estimate related to the Möbius function

Is the world in Game of Thrones spherical or flat?



Why is my java process using much more heap space than specified?


reduce memory footprint of java virtual machineWhat resource limit is Java encountering on my Solaris server?Performance impact of Win32 + PAE on a JVMCan the JVM(Oracle) run into an OutOfMemory error if the heap size is below the max?Large virtual memory size of ElasticSearch JVMNon-heap memory leak JVMwhen is the jvm heap allocated by the OSHow can I verify the heap size startup arguments for an active JVM that's running as a Windows service and loading JVM params from registry?java.lang.OutOfMemoryError: Java heap spaceJava crash due to native memory allocation map failure, despite n






.everyoneloves__top-leaderboard:empty,.everyoneloves__mid-leaderboard:empty,.everyoneloves__bot-mid-leaderboard:empty height:90px;width:728px;box-sizing:border-box;








0















I'm running a Java application on Solaris using the -Xmx256M switch. When I connect via JMX, the JVM tells me the application is using about 50Mb of heap, and correctly states the maximum heap size is around 250Mb.



However, Solaris is telling me a very different story. When running pmap, for example, I get:



 ~ > pmap -S 10124 | grep heap

0002C000 3920 3920 rwx-- [ heap ]
00400000 815104 815104 rwx-- [ heap ]


Showing an incredible 800Mb of memory being used for heap space.



ps confirms the memory usage:



ps -eo vsz,rss,pid,args | sort -n

939368 925576 10124 /apps/../java -Xmx256M xxxx


I've read https://plumbr.eu/blog/why-does-my-java-process-consume-more-memory-than-xmx, but the article describes JVM using memory other than heap (i.e. stack, native libraries and threads) - but in my case, the JVM is actually using much more heap than specified.



My java version is:



java version "1.6.0_31"
Java(TM) SE Runtime Environment (build 1.6.0_31-b04)
Java HotSpot(TM) Server VM (build 20.6-b01, mixed mode)


To add to the mystery, I have other Java applications running on the same box, using the same JVM with the same settings, that behave perfectly fine. What makes this application "special" is that it connects to an external third party application (RET LBN, if that helps). It does not run any JNI or native code - so why is the third party library not respecting the JVM's startup parameters?



I'm at my wits end - any help or pointers will be greatly appreciated.










share|improve this question




























    0















    I'm running a Java application on Solaris using the -Xmx256M switch. When I connect via JMX, the JVM tells me the application is using about 50Mb of heap, and correctly states the maximum heap size is around 250Mb.



    However, Solaris is telling me a very different story. When running pmap, for example, I get:



     ~ > pmap -S 10124 | grep heap

    0002C000 3920 3920 rwx-- [ heap ]
    00400000 815104 815104 rwx-- [ heap ]


    Showing an incredible 800Mb of memory being used for heap space.



    ps confirms the memory usage:



    ps -eo vsz,rss,pid,args | sort -n

    939368 925576 10124 /apps/../java -Xmx256M xxxx


    I've read https://plumbr.eu/blog/why-does-my-java-process-consume-more-memory-than-xmx, but the article describes JVM using memory other than heap (i.e. stack, native libraries and threads) - but in my case, the JVM is actually using much more heap than specified.



    My java version is:



    java version "1.6.0_31"
    Java(TM) SE Runtime Environment (build 1.6.0_31-b04)
    Java HotSpot(TM) Server VM (build 20.6-b01, mixed mode)


    To add to the mystery, I have other Java applications running on the same box, using the same JVM with the same settings, that behave perfectly fine. What makes this application "special" is that it connects to an external third party application (RET LBN, if that helps). It does not run any JNI or native code - so why is the third party library not respecting the JVM's startup parameters?



    I'm at my wits end - any help or pointers will be greatly appreciated.










    share|improve this question
























      0












      0








      0








      I'm running a Java application on Solaris using the -Xmx256M switch. When I connect via JMX, the JVM tells me the application is using about 50Mb of heap, and correctly states the maximum heap size is around 250Mb.



      However, Solaris is telling me a very different story. When running pmap, for example, I get:



       ~ > pmap -S 10124 | grep heap

      0002C000 3920 3920 rwx-- [ heap ]
      00400000 815104 815104 rwx-- [ heap ]


      Showing an incredible 800Mb of memory being used for heap space.



      ps confirms the memory usage:



      ps -eo vsz,rss,pid,args | sort -n

      939368 925576 10124 /apps/../java -Xmx256M xxxx


      I've read https://plumbr.eu/blog/why-does-my-java-process-consume-more-memory-than-xmx, but the article describes JVM using memory other than heap (i.e. stack, native libraries and threads) - but in my case, the JVM is actually using much more heap than specified.



      My java version is:



      java version "1.6.0_31"
      Java(TM) SE Runtime Environment (build 1.6.0_31-b04)
      Java HotSpot(TM) Server VM (build 20.6-b01, mixed mode)


      To add to the mystery, I have other Java applications running on the same box, using the same JVM with the same settings, that behave perfectly fine. What makes this application "special" is that it connects to an external third party application (RET LBN, if that helps). It does not run any JNI or native code - so why is the third party library not respecting the JVM's startup parameters?



      I'm at my wits end - any help or pointers will be greatly appreciated.










      share|improve this question














      I'm running a Java application on Solaris using the -Xmx256M switch. When I connect via JMX, the JVM tells me the application is using about 50Mb of heap, and correctly states the maximum heap size is around 250Mb.



      However, Solaris is telling me a very different story. When running pmap, for example, I get:



       ~ > pmap -S 10124 | grep heap

      0002C000 3920 3920 rwx-- [ heap ]
      00400000 815104 815104 rwx-- [ heap ]


      Showing an incredible 800Mb of memory being used for heap space.



      ps confirms the memory usage:



      ps -eo vsz,rss,pid,args | sort -n

      939368 925576 10124 /apps/../java -Xmx256M xxxx


      I've read https://plumbr.eu/blog/why-does-my-java-process-consume-more-memory-than-xmx, but the article describes JVM using memory other than heap (i.e. stack, native libraries and threads) - but in my case, the JVM is actually using much more heap than specified.



      My java version is:



      java version "1.6.0_31"
      Java(TM) SE Runtime Environment (build 1.6.0_31-b04)
      Java HotSpot(TM) Server VM (build 20.6-b01, mixed mode)


      To add to the mystery, I have other Java applications running on the same box, using the same JVM with the same settings, that behave perfectly fine. What makes this application "special" is that it connects to an external third party application (RET LBN, if that helps). It does not run any JNI or native code - so why is the third party library not respecting the JVM's startup parameters?



      I'm at my wits end - any help or pointers will be greatly appreciated.







      java solaris memory-usage






      share|improve this question













      share|improve this question











      share|improve this question




      share|improve this question










      asked Feb 6 '15 at 10:20









      notdazedbutconfusednotdazedbutconfused

      23114




      23114




















          1 Answer
          1






          active

          oldest

          votes


















          0














          The Java heap is a block of memory that holds java objects.



          "pmap" shows the Operating System process heap. This is the memory used to run the java process. This includes all the java code, plus all the C code that makes up the java run time environment.



          To show the java heap try Memory tab of jconsole, or jmap or jstat.






          share|improve this answer























          • Thanks Sean. I have done exactly that, and jconsole reports the maximum heap size to be 256Mb as expected. The question is really, why is the OS process using so much additional heap space? Any ideas on how I can find this out?

            – notdazedbutconfused
            Feb 10 '15 at 17:11












          • I would expect rss to be much closer to the Xmx setting. . Look at the output of pmap PID. You might see a .so file using a lot of memory. If it's making standard C library calls it might be more difficult to spot than if it's calling a custom shared library.

            – Sean McEligot
            Mar 18 '15 at 13:52












          Your Answer








          StackExchange.ready(function()
          var channelOptions =
          tags: "".split(" "),
          id: "2"
          ;
          initTagRenderer("".split(" "), "".split(" "), channelOptions);

          StackExchange.using("externalEditor", function()
          // Have to fire editor after snippets, if snippets enabled
          if (StackExchange.settings.snippets.snippetsEnabled)
          StackExchange.using("snippets", function()
          createEditor();
          );

          else
          createEditor();

          );

          function createEditor()
          StackExchange.prepareEditor(
          heartbeatType: 'answer',
          autoActivateHeartbeat: false,
          convertImagesToLinks: true,
          noModals: true,
          showLowRepImageUploadWarning: true,
          reputationToPostImages: 10,
          bindNavPrevention: true,
          postfix: "",
          imageUploader:
          brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
          contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
          allowUrls: true
          ,
          onDemand: true,
          discardSelector: ".discard-answer"
          ,immediatelyShowMarkdownHelp:true
          );



          );













          draft saved

          draft discarded


















          StackExchange.ready(
          function ()
          StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fserverfault.com%2fquestions%2f665503%2fwhy-is-my-java-process-using-much-more-heap-space-than-specified%23new-answer', 'question_page');

          );

          Post as a guest















          Required, but never shown

























          1 Answer
          1






          active

          oldest

          votes








          1 Answer
          1






          active

          oldest

          votes









          active

          oldest

          votes






          active

          oldest

          votes









          0














          The Java heap is a block of memory that holds java objects.



          "pmap" shows the Operating System process heap. This is the memory used to run the java process. This includes all the java code, plus all the C code that makes up the java run time environment.



          To show the java heap try Memory tab of jconsole, or jmap or jstat.






          share|improve this answer























          • Thanks Sean. I have done exactly that, and jconsole reports the maximum heap size to be 256Mb as expected. The question is really, why is the OS process using so much additional heap space? Any ideas on how I can find this out?

            – notdazedbutconfused
            Feb 10 '15 at 17:11












          • I would expect rss to be much closer to the Xmx setting. . Look at the output of pmap PID. You might see a .so file using a lot of memory. If it's making standard C library calls it might be more difficult to spot than if it's calling a custom shared library.

            – Sean McEligot
            Mar 18 '15 at 13:52
















          0














          The Java heap is a block of memory that holds java objects.



          "pmap" shows the Operating System process heap. This is the memory used to run the java process. This includes all the java code, plus all the C code that makes up the java run time environment.



          To show the java heap try Memory tab of jconsole, or jmap or jstat.






          share|improve this answer























          • Thanks Sean. I have done exactly that, and jconsole reports the maximum heap size to be 256Mb as expected. The question is really, why is the OS process using so much additional heap space? Any ideas on how I can find this out?

            – notdazedbutconfused
            Feb 10 '15 at 17:11












          • I would expect rss to be much closer to the Xmx setting. . Look at the output of pmap PID. You might see a .so file using a lot of memory. If it's making standard C library calls it might be more difficult to spot than if it's calling a custom shared library.

            – Sean McEligot
            Mar 18 '15 at 13:52














          0












          0








          0







          The Java heap is a block of memory that holds java objects.



          "pmap" shows the Operating System process heap. This is the memory used to run the java process. This includes all the java code, plus all the C code that makes up the java run time environment.



          To show the java heap try Memory tab of jconsole, or jmap or jstat.






          share|improve this answer













          The Java heap is a block of memory that holds java objects.



          "pmap" shows the Operating System process heap. This is the memory used to run the java process. This includes all the java code, plus all the C code that makes up the java run time environment.



          To show the java heap try Memory tab of jconsole, or jmap or jstat.







          share|improve this answer












          share|improve this answer



          share|improve this answer










          answered Feb 10 '15 at 16:25









          Sean McEligotSean McEligot

          112




          112












          • Thanks Sean. I have done exactly that, and jconsole reports the maximum heap size to be 256Mb as expected. The question is really, why is the OS process using so much additional heap space? Any ideas on how I can find this out?

            – notdazedbutconfused
            Feb 10 '15 at 17:11












          • I would expect rss to be much closer to the Xmx setting. . Look at the output of pmap PID. You might see a .so file using a lot of memory. If it's making standard C library calls it might be more difficult to spot than if it's calling a custom shared library.

            – Sean McEligot
            Mar 18 '15 at 13:52


















          • Thanks Sean. I have done exactly that, and jconsole reports the maximum heap size to be 256Mb as expected. The question is really, why is the OS process using so much additional heap space? Any ideas on how I can find this out?

            – notdazedbutconfused
            Feb 10 '15 at 17:11












          • I would expect rss to be much closer to the Xmx setting. . Look at the output of pmap PID. You might see a .so file using a lot of memory. If it's making standard C library calls it might be more difficult to spot than if it's calling a custom shared library.

            – Sean McEligot
            Mar 18 '15 at 13:52

















          Thanks Sean. I have done exactly that, and jconsole reports the maximum heap size to be 256Mb as expected. The question is really, why is the OS process using so much additional heap space? Any ideas on how I can find this out?

          – notdazedbutconfused
          Feb 10 '15 at 17:11






          Thanks Sean. I have done exactly that, and jconsole reports the maximum heap size to be 256Mb as expected. The question is really, why is the OS process using so much additional heap space? Any ideas on how I can find this out?

          – notdazedbutconfused
          Feb 10 '15 at 17:11














          I would expect rss to be much closer to the Xmx setting. . Look at the output of pmap PID. You might see a .so file using a lot of memory. If it's making standard C library calls it might be more difficult to spot than if it's calling a custom shared library.

          – Sean McEligot
          Mar 18 '15 at 13:52






          I would expect rss to be much closer to the Xmx setting. . Look at the output of pmap PID. You might see a .so file using a lot of memory. If it's making standard C library calls it might be more difficult to spot than if it's calling a custom shared library.

          – Sean McEligot
          Mar 18 '15 at 13:52


















          draft saved

          draft discarded
















































          Thanks for contributing an answer to Server Fault!


          • Please be sure to answer the question. Provide details and share your research!

          But avoid


          • Asking for help, clarification, or responding to other answers.

          • Making statements based on opinion; back them up with references or personal experience.

          To learn more, see our tips on writing great answers.




          draft saved


          draft discarded














          StackExchange.ready(
          function ()
          StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fserverfault.com%2fquestions%2f665503%2fwhy-is-my-java-process-using-much-more-heap-space-than-specified%23new-answer', 'question_page');

          );

          Post as a guest















          Required, but never shown





















































          Required, but never shown














          Required, but never shown












          Required, but never shown







          Required, but never shown

































          Required, but never shown














          Required, but never shown












          Required, but never shown







          Required, but never shown







          Popular posts from this blog

          Wikipedia:Vital articles Мазмуну Biography - Өмүр баян Philosophy and psychology - Философия жана психология Religion - Дин Social sciences - Коомдук илимдер Language and literature - Тил жана адабият Science - Илим Technology - Технология Arts and recreation - Искусство жана эс алуу History and geography - Тарых жана география Навигация менюсу

          Bruxelas-Capital Índice Historia | Composición | Situación lingüística | Clima | Cidades irmandadas | Notas | Véxase tamén | Menú de navegacióneO uso das linguas en Bruxelas e a situación do neerlandés"Rexión de Bruxelas Capital"o orixinalSitio da rexiónPáxina de Bruselas no sitio da Oficina de Promoción Turística de Valonia e BruxelasMapa Interactivo da Rexión de Bruxelas-CapitaleeWorldCat332144929079854441105155190212ID28008674080552-90000 0001 0666 3698n94104302ID540940339365017018237

          What should I write in an apology letter, since I have decided not to join a company after accepting an offer letterShould I keep looking after accepting a job offer?What should I do when I've been verbally told I would get an offer letter, but still haven't gotten one after 4 weeks?Do I accept an offer from a company that I am not likely to join?New job hasn't confirmed starting date and I want to give current employer as much notice as possibleHow should I address my manager in my resignation letter?HR delayed background verification, now jobless as resignedNo email communication after accepting a formal written offer. How should I phrase the call?What should I do if after receiving a verbal offer letter I am informed that my written job offer is put on hold due to some internal issues?Should I inform the current employer that I am about to resign within 1-2 weeks since I have signed the offer letter and waiting for visa?What company will do, if I send their offer letter to another company