JDK has built-in tool to monitor jvm memory usage: jstat
This is a command line tool, which runs like:
$ jstat -gc 17707 5000
where, -gc is the option, 17707 is process ID of the jvm process, 5000 is output frequency: every 5 seconds.
Following is example output:
$ jstat -gc 17707 5000
S0C S1C S0U S1U EC EU OC OU PC PU YGC YGCT FGC FGCT GCT
34944.0 34944.0 0.0 26066.5 279744.0 219021.0 699072.0 250829.1 104640.0 104498.2 47 1.055 16 4.898 5.953
34944.0 34944.0 0.0 26066.5 279744.0 219371.7 699072.0 250829.1 104640.0 104498.3 47 1.055 16 4.898 5.953
34944.0 34944.0 0.0 26066.5 279744.0 232479.2 699072.0 250829.1 104640.0 104498.8 47 1.055 16 4.898 5.953
... ...
34944.0 34944.0 1105.2 0.0 279744.0 216551.2 699072.0 449222.0 104640.0 104587.7 54 1.193 16 4.898 6.090
34944.0 34944.0 1105.2 0.0 279744.0 217444.3 699072.0 449222.0 104640.0 104587.7 54 1.193 16 4.898 6.090
34944.0 34944.0 1105.2 0.0 279744.0 219828.4 699072.0 449222.0 104640.0 104587.7 54 1.193 16 4.898 6.090
34944.0 34944.0 1105.2 0.0 279744.0 220063.1 699072.0 449222.0 104640.0 104587.7 54 1.193 16 4.898 6.090
34944.0 34944.0 1105.2 0.0 279744.0 222029.5 699072.0 449222.0 104640.0 104587.7 54 1.193 16 4.898 6.090
34944.0 34944.0 1105.2 0.0 279744.0 222160.4 699072.0 449222.0 104640.0 104587.7 54 1.193 16 4.898 6.090
34944.0 34944.0 1105.2 0.0 279744.0 222289.1 699072.0 449222.0 104640.0 104587.7 54 1.193 16 4.898 6.090
34944.0 34944.0 1105.2 0.0 279744.0 222417.7 699072.0 449222.0 104640.0 104587.7 54 1.193 16 4.898 6.090
34944.0 34944.0 1105.2 0.0 279744.0 222534.9 699072.0 449222.0 104640.0 104587.7 54 1.193 16 4.898 6.090
34944.0 34944.0 1105.2 0.0 279744.0 222667.3 699072.0 449222.0 104640.0 104587.7 54 1.193 16 4.898 6.090
The output unit is KB.
S0C: Current (allocated) memory size of the survivor 0 -- stores new objects that survived couple of minor GCs
S1C: Current (allocated) memory size of the survivor 1 -- stores new objects that survived couple of minor GCs
S0U: Used memory size of the survivor 0
S1U: Used memory size of the survivor 1
EC: Current (allocated) memory size of the Eden -- when object created, it's put into Eden
EU: Used memory size of the Eden
OC: Current (allocated) memory size of the Old Generation -- stores objects that survived many minor GCs
OU: Used memeory of the Old Generation
PC: Current (allocated) memory size of the Permanent Generation -- stores class meta data and app constants etc
PU: Used memory of the Permanent Generation
YGC: Garbage Collection counter for Young Generation memory -- minor GC
YGT: Time (seconds) used by Garbage Collection for Young Generation memory -- minor GC
FGC: Major Garbage Collection counter for Old Generation memory - major GC
FGCT: Time used by Major Garbage Collection counter for Old Generation memory
GCT: Total time used by all Garbage Collection operations
below is diagram of jvm memory modle:
相关推荐
很久之前就一直在学习JVM,但是一直也没有好好的总结,最近终于有了空闲,将之前学习的内容整理成了一个PPT。PPT也可以在这里下载: https://github.com/hitynsun/docs/tree/master/JVM 也希望大神们可以批评指正...
### 在JVM5.0中调配Garbage Collection #### 1. 简介 Java 2 Platform Standard Edition (J2SE) 平台在多种应用场景中都扮演着重要角色,从桌面应用程序到大型服务器端Web应用均有其身影。自J2SE 1.4.2版本起,...
垃圾收集(Garbage Collection, GC)是这一过程的核心,它负责识别并回收不再使用的内存空间。本篇文章将深入探讨几种常见的垃圾收集算法,以及它们在Java J2EE、C#、ASP.NET以及JVM中的应用。 1. **标记-清除...
jvm memory
垃圾收集的主要类型有四种,虽然在内容中没有具体提到这四种类型,但在JVM中常见的垃圾收集器包括Serial GC、Parallel GC、CMS(Concurrent Mark Sweep)GC和G1(Garbage-First)GC等。这些垃圾收集器有不同的特性,...
"03 GarbageCollection.zip"这个压缩包文件,其标题暗示了我们将探讨的是垃圾收集(Garbage Collection, GC)这一核心概念,特别是在数据结构和算法的学习中,理解GC的工作原理对于优化程序性能至关重要。...
4. **垃圾收集器类型**:Java虚拟机(JVM)提供了多种垃圾收集器,如Serial、Parallel、Parallel Old、CMS(Concurrent Mark Sweep)、G1(Garbage-First)和ZGC(Zing Garbage Collector)。每种收集器有其特定的...
"JVM Memory View"工具,版本号为0.93.162,就是针对这一需求而设计的JVM调试内存查看器,专为Android Studio用户提供了一个直观、高效的内存分析解决方案。 一、JVM内存概述 Java虚拟机内存主要分为以下几个区域...
It begins with a general introduction to JVM and the features common to the JVM languages, helping you keep abreast of its concepts. It then dives into explaining languages such as Java, Scala, ...
【IBM Pattern Modeling and Analysis Tool for Java Garbage Collector】是一款针对Java虚拟机(JVM)垃圾收集器进行性能分析和建模的专业工具。该工具由IBM开发,主要用于帮助开发者和系统管理员深入理解Java应用...
代码如下:failed to create jvm error code -4 这一般应是内存不够用所致,解决方法参考如下。 打开 Android Studio 安装目录下的bin目录,查找并打开文件 studio.exe.vmoptions,修改代码: 代码如下:-Xmx512m 为...
垃圾收集(Garbage Collection, GC)是Java虚拟机的一项重要功能,它负责自动管理内存,识别并回收不再使用的对象,以避免内存泄漏。HotSpot虚拟机提供了多种不同的垃圾收集器,每种都有其特定的性能特性和适用场景...
IBM Pattern Modeling and Analysis Tool for Java Garbage Collector 是一个专门针对Java虚拟机(JVM)垃圾收集器进行性能分析和模式识别的工具。该工具旨在帮助开发者和系统管理员深入理解垃圾收集器的工作机制,...
《Plumbr Java垃圾回收手册》(2015年英文版)是一本详细介绍了Java虚拟机(JVM)中垃圾回收机制的经典指南。该手册由Nikita Salnikov-Tarnovski和Gleb Smirnov撰写,他们都是在JVM性能监控领域有着丰富经验的专业人士...
总结而言,《The Java Garbage Collection Mini Book》涵盖了JVM垃圾回收机制的广泛知识,不仅包括了理论基础,还有针对具体收集器的深入分析,为读者提供了一个全面的学习资源。对于那些希望深入理解Java内存管理的...
《Plumbr Handbook Java Garbage Collection》是一本专注于Java垃圾收集机制的详细指南,旨在帮助读者理解并优化Java应用程序中的内存管理。本手册由Plumbr的联合创始人撰写,Plumbr是一家专注于JVM性能监控的产品...
本文档是一份详细探讨Java垃圾回收机制及其影响的白皮书,标题为《Understanding Java Garbage Collection v4.pdf》,旨在帮助Java开发者和架构师理解垃圾回收器的应用行为、特性和机制,并在Java平台上选择和调整...
Memory Analyzer Tool,简称MAT,是Oracle公司开发的一款强大的Java内存分析工具,专用于诊断和优化Java应用的内存使用情况。MAT独立版为Mac用户提供了在操作系统环境下独立运行的版本,方便开发者对Mac平台上的Java...
正常安装和配置JDK后,IntelliJ IDEA 2019.3.1 x64 启动仍然报 Failed to load JVM DLL 路径\jvm.dll if you already have a 64-bit JDK installed, define a JAVA_HOME variable in 系统 ... 必须用管理员才能打开...