dump java heap,GPU,Lint

简介: Heap Dump 也被称为 堆转储文件,是一个Java进程在某个时间点上的内存快照。Heap Dump是有着多种类型的。不过总体上heap dump在触发快照的时候都保存了java对象和类的信息。通常在写heap dump文件前会触发一次FullGC,所以heap dump文件中保存的是FullGC后留下的对象信息。

Heap Dump是什么?


Heap Dump 也被称为 堆转储文件,是一个Java进程在某个时间点上的内存快照。Heap Dump是有着多种类型的。不过总体上heap dump在触发快照的时候都保存了java对象和类的信息。通常在写heap dump文件前会触发一次FullGC,所以heap dump文件中保存的是FullGC后留下的对象信息。


堆转储文件是诊断内存相关问题的重要信息来源,例如内存泄漏,垃圾收集问题 和 java.lang.OutOfMemoryError,同时它也是优化内存消耗的重要依据。


  • Allocations:堆中的实例数。
  • Shallow Size:此堆中所有实例的总大小(以字节为单位)。其实算是比较真实的java堆内存
  • Retained Size:为此类的所有实例而保留的内存总大小(以字节为单位)。这个解释并不准

  • Depth:从任意 GC 根到所选实例的最短 hop 数。
  • Shallow Size:此实例的大小。
  • Retained Size:此实例支配的内存大小(根据 dominator 树)。


hallow Size基本能真是反应Java堆内存,而Retained Size却明显要高出不少, 因为Retained Size统计总内存的时候,基本不能避免重复统计的问题


总结



  • 总体Java内存使用看shallow size
  • retained size只是个参考,不准确,存在各种重复统计问题
  • FinalizerReference retained size 大小极其不准确,而且其强引用的对象并没有被算进去,不过finilize确实可能导致内存泄漏
  • native size再8.0之后,对Bitmap的观测有帮助。


be72cfaae2514295b63da0c0d0ea39c2_tplv-k3u1fbpfcp-zoom-in-crop-mark_4536_0_0_0.png


GPU:www.jianshu.com/p/310c41c2e…


在手机设置,开发者选项,打开gpu绘制,手机就能看到图像, 红色是应该是 三层,再多也是红色。


Lint:www.jianshu.com/p/d6068542b…


d9aa6746b3d548d18f3e052f35204f8c_tplv-k3u1fbpfcp-zoom-in-crop-mark_4536_0_0_0.png


de43ba1f96064846a01d5e4491776a76_tplv-k3u1fbpfcp-zoom-in-crop-mark_4536_0_0_0.png


相关实践学习
部署Stable Diffusion玩转AI绘画(GPU云服务器)
本实验通过在ECS上从零开始部署Stable Diffusion来进行AI绘画创作,开启AIGC盲盒。
目录
相关文章
|
7月前
|
Java
java dump文件分析
java dump文件分析
79 0
|
26天前
|
分布式计算 Java MaxCompute
ODPS MR节点跑graph连通分量计算代码报错java heap space如何解决
任务启动命令:jar -resources odps-graph-connect-family-2.0-SNAPSHOT.jar -classpath ./odps-graph-connect-family-2.0-SNAPSHOT.jar ConnectFamily 若是设置参数该如何设置
|
5月前
|
Java 关系型数据库 数据库
实时计算 Flink版操作报错合集之拉取全量数据时,如何解决Checkpoint失败并且报错为 "java.lang.OutOfMemoryError: Java heap space"
在使用实时计算Flink版过程中,可能会遇到各种错误,了解这些错误的原因及解决方法对于高效排错至关重要。针对具体问题,查看Flink的日志是关键,它们通常会提供更详细的错误信息和堆栈跟踪,有助于定位问题。此外,Flink社区文档和官方论坛也是寻求帮助的好去处。以下是一些常见的操作报错及其可能的原因与解决策略。
|
5月前
|
存储 Java 对象存储
Java虚拟机(JVM)中的栈(Stack)和堆(Heap)
在Java虚拟机(JVM)中,栈(Stack)和堆(Heap)是存储数据的两个关键区域。它们在内存管理中扮演着非常重要的角色,但各自的用途和特点有所不同。
54 0
|
6月前
|
Arthas 存储 监控
性能监控之常见 Java Heap Dump 方法
【6月更文挑战8天】性能监控之常见 Java Heap Dump 方法
177 7
|
7月前
|
缓存 Java
8 种 Java 内存溢出之一:Java Heap Space
8 种 Java 内存溢出之一:Java Heap Space
|
7月前
|
监控 Java 流计算
Java Thread dump和Head dump 文件分析
Java Thread dump和Head dump 文件分析
95 0
|
7月前
|
消息中间件 监控 Java
一次线上Flink 背压情况分析之重新认识java dump 文件
一次线上Flink 背压情况分析之重新认识java dump 文件
213 0
|
Arthas 监控 Java
【Java基础】- JVM之Dump文件详解
【Java基础】- JVM之Dump文件详解
2577 3
【Java基础】- JVM之Dump文件详解
|
Java Android开发
Java Heap Space: Understanding and Resolving Memory Issues
Java Heap Space: Understanding and Resolving Memory Issues