You are viewing a plain text version of this content. The canonical link for it is here.
Posted to user@ignite.apache.org by Gracelin Priya <gp...@kodiakptt.com> on 2017/07/14 07:13:49 UTC

Heap Memory Allocation

Hi,



I am starting gridgain using a java program as given below



        try {

            ignite = Ignition.start("/opt/GridGain/config/default-server.xml");



            } catch (Exception ex) {

            ex.printStackTrace();

        }



The above program is executed using the below command to start the ignite server. In default-server.xml no other configuration is given except IPAddress in TCPDiscoverypi.

====================================================================

/usr/java/jdk1.8.0_121/bin/java  -classpath .:./*:$IGNITE_HOME/libs/*:$IGNITE_HOME/libs/ignite-spring/*:$IGNITE_HOME/libs/ignite-rest-http/*::$IGNITE_HOME/libs/ignite-indexing/* <classfilename>



[12:04:13,973][INFO][main][GridDiscoveryManager] Topology snapshot [ver=1, servers=1, clients=0, CPUs=32, heap=25.0GB] -



How is this 25GB derived? In another machine with lower memory I tried and it is seen it is taking 3 GB there. Can someone please explain how the heap 25GB is taken by default in this system.



Top output from the system for the java process which started the gridgain server is given below



top - 12:13:41 up 1 day, 23:37,  3 users,  load average: 1.12, 1.19, 1.00

Tasks:  24 total,   1 running,  23 sleeping,   0 stopped,   0 zombie

%Cpu(s):  2.1 us,  1.1 sy,  0.0 ni, 96.7 id,  0.0 wa,  0.0 hi,  0.1 si,  0.0 st

KiB Mem : 11741217+total, 10124566+free,  8303980 used,  7862532 buff/cache

KiB Swap:  2097148 total,  2097148 free,        0 used. 10860382+avail Mem



  PID USER      PR  NI    VIRT    RES    SHR S  %CPU %MEM     TIME+ COMMAND

7677 root      20   0 39.875g 462556  14732 S   0.7  0.4   0:16.86 java



-Xmx20G is set in java



/usr/java/jdk1.8.0_121/bin/java -DIGNITE_QUIET=false -verbose:gc -Xmx20g then heap is 18GB.



[12:38:46,153][INFO][main][GridDiscoveryManager] Topology snapshot [ver=1, servers=1, clients=0, CPUs=32, heap=18.0GB]



top - 12:40:08 up 2 days, 3 min,  2 users,  load average: 1.63, 1.33, 1.10

Tasks:  22 total,   1 running,  21 sleeping,   0 stopped,   0 zombie

%Cpu(s):  4.8 us,  1.3 sy,  0.0 ni, 93.7 id,  0.1 wa,  0.0 hi,  0.1 si,  0.0 st

KiB Mem : 11741217+total, 10140552+free,  8137208 used,  7869452 buff/cache

KiB Swap:  2097148 total,  2097148 free,        0 used. 10877128+avail Mem



  PID USER      PR  NI    VIRT    RES    SHR S  %CPU %MEM     TIME+ COMMAND

8097 root      20   0 31.589g 424924  14696 S   1.0  0.4   0:11.64 java






Re: Heap Memory Allocation

Posted by Mikhail Cherkasov <mc...@gridgain.com>.
Hi Gracelin,

Ignite uses Runtime.getRuntime().maxMemory() to show heap size. For -Xmx20g
JVM returns 18GB.
So it depends on the -Xmx that you pass to JVM, but as you can notice it
doesn't absolutlly
equal to what return Runtime.getRuntime().maxMemory().

Thanks,
Mikhail.

On Fri, Jul 14, 2017 at 10:13 AM, Gracelin Priya <gp...@kodiakptt.com>
wrote:

> Hi,
>
>
>
> I am starting gridgain using a java program as given below
>
>
>
>         try {
>
>             ignite = Ignition.start("/opt/GridGain/
> config/default-server.xml");
>
>
>
>             } catch (Exception ex) {
>
>             ex.printStackTrace();
>
>         }
>
>
>
> The above program is executed using the below command to start the ignite
> server. In default-server.xml no other configuration is given except
> IPAddress in TCPDiscoverypi.
>
> ====================================================================
>
> /usr/java/jdk1.8.0_121/bin/java  -classpath .:./*:$IGNITE_HOME/libs/*:$
> IGNITE_HOME/libs/ignite-spring/*:$IGNITE_HOME/libs/
> ignite-rest-http/*::$IGNITE_HOME/libs/ignite-indexing/* <classfilename>
>
>
>
> [12:04:13,973][INFO][main][GridDiscoveryManager] Topology snapshot
> [ver=1, servers=1, clients=0, CPUs=32, heap=25.0GB] –
>
>
>
> How is this 25GB derived? In another machine with lower memory I tried and
> it is seen it is taking 3 GB there. Can someone please explain how the heap
> 25GB is taken by default in this system.
>
>
>
> Top output from the system for the java process which started the gridgain
> server is given below
>
>
>
> top - 12:13:41 up 1 day, 23:37,  3 users,  load average: 1.12, 1.19, 1.00
>
> Tasks:  24 total,   1 running,  23 sleeping,   0 stopped,   0 zombie
>
> %Cpu(s):  2.1 us,  1.1 sy,  0.0 ni, 96.7 id,  0.0 wa,  0.0 hi,  0.1 si,
> 0.0 st
>
> KiB Mem : 11741217+total, 10124566+free,  8303980 used,  7862532 buff/cache
>
> KiB Swap:  2097148 total,  2097148 free,        0 used. 10860382+avail Mem
>
>
>
>   PID USER      PR  NI    VIRT    RES    SHR S  %CPU %MEM     TIME+ COMMAND
>
> 7677 root      20   0 39.875g 462556  14732 S   0.7  0.4   0:16.86 java
>
>
>
> -Xmx20G is set in java
>
>
>
> /usr/java/jdk1.8.0_121/bin/java -DIGNITE_QUIET=false -verbose:gc -Xmx20g
> then heap is 18GB.
>
>
>
> [12:38:46,153][INFO][main][GridDiscoveryManager] Topology snapshot
> [ver=1, servers=1, clients=0, CPUs=32, heap=18.0GB]
>
>
>
> top - 12:40:08 up 2 days, 3 min,  2 users,  load average: 1.63, 1.33, 1.10
>
> Tasks:  22 total,   1 running,  21 sleeping,   0 stopped,   0 zombie
>
> %Cpu(s):  4.8 us,  1.3 sy,  0.0 ni, 93.7 id,  0.1 wa,  0.0 hi,  0.1 si,
> 0.0 st
>
> KiB Mem : 11741217+total, 10140552+free,  8137208 used,  7869452 buff/cache
>
> KiB Swap:  2097148 total,  2097148 free,        0 used. 10877128+avail Mem
>
>
>
>   PID USER      PR  NI    VIRT    RES    SHR S  %CPU %MEM     TIME+ COMMAND
>
> 8097 root      20   0 31.589g 424924  14696 S   1.0  0.4   0:11.64 java
>
>
>
>
>
>
>



-- 
Thanks,
Mikhail.