jvm-hotspot 相关问题

HotSpot是Oracle和OpenJDK Java运行时环境使用的标准Java虚拟机。

使用UseCompressedOops?

我在应用程序从 32GB 内存切换到 64GB 内存时发现了一些性能问题。 我有以下配置: java.arg.2=-Xms14g java.arg.3=-Xmx54g 从这里 压缩oops支持...

回答 1 投票 0

当通过 and 限制索引范围时,Hotspot 可以消除边界检查吗?

考虑以下函数: int foo(int[] 索引) { int[] 查找 = new int[256]; 填充(查找); // 填充值,未显示 整数总和=0; for (int i : 索引) { 求和 += 查找[i ...

回答 1 投票 0

Java 本机访问冲突不会触发 Windows jit 调试器

我在从 java exe 调用的 C++ 代码中创建了一个空取消引用。 AeDebug 注册表项是使用记事本设置的(用于测试)。但是,应用程序崩溃不会启动记事本。 附上windbg和fo...

回答 1 投票 0

OpenJDK跟踪ReentrantLock加锁与解锁

我正在使用解释器进行运行时检测。 我现在的重点是在任何 ReEntractLock lock() 和unlock() 函数之前添加一个函数调用。 作为参考,这是 Test.java: T 级...

回答 1 投票 0

为什么/tmp中-XX:+LogCompilation下会有多余的日志?

在 -XX:+LogCompilation -XX:LogFile=/path/to/file.log 下运行时记录热点编译时,日志会写入 /path/to/file.log ,这很好,但也不同(很多)更多)日志是

回答 1 投票 0

JDK原生内存使用场景下,为什么调用System.gc后还需要Thread.sleep?

经过研究Java17中System.gc的源码实现细节,我发现System.gc最终会触发两种gc类型: full gc (stop the world),当我们使用 SerialGC、Para...

回答 1 投票 0

HotSpot Serviceability Agent 的 iterateObjectsOfKlass() 太慢

我能够调用ObjectHeap.iterateObjectsOfKlass(在SA的帮助下)来获取属于某个类的所有对象。结果正是我所期望的,但性能却不是......

回答 2 投票 0

Java 性能差异

我正在尝试对一些 Java 代码进行基准测试,我注意到它的性能差异很大。 作为示例,我在下面的代码片段中对函数 copyElements 的性能进行了基准测试: 公共课...

回答 1 投票 0

为什么即使代码缓存已满,代码缓存也没有刷新?

当我们从 Java 17 切换到 Java 21 时,我们经历了编码缓存行为方式的变化。 我们有一些小型服务运行串行 GC 收集器(由 JVM 选择),通常是一个......

回答 1 投票 0

即使启用了 NMT,为什么 JCMD 也会抛出“未启用本机内存跟踪”消息?

我面临着这个奇怪的问题。我想跟踪 JVM 的本机内存使用情况。我按照 Oracle 文档中提供的说明进行操作,添加了 NMT 启用标志并回收了 Tomcat JVM。之后当我尝试...

回答 2 投票 0

Java 热点编译器是否会删除涉及已知最终状态的实例变量的死代码

在下面的代码中,很明显 baa 总是 false。热点编译器会发现这一点并删除 isBaa() 方法调用和包含的代码吗? 公共类 Foo() { 公共最终布尔值...

回答 1 投票 0

如何确定g1gc自动生成的区域大小?

文档说: 启动时,Java 虚拟机 (JVM) 设置区域大小 我如何确定启动时为 g1gc 区域选择的大小?如何获取通知......

回答 1 投票 0

HotSpot中的GC是如何相互配合的

众所周知,HotSpot 中有 Serial、CMS、G1 等七个 GC。我很困惑的是,它们同时全部工作还是只有部分工作?他们是如何配合的...

回答 1 投票 0

关于 HotSpot JVM JIT 的困惑

例如,方法中循环10000次。当运行1000次时,backedge_counter会触发JIT编译。并且解释器继续执行。当循环 4000 次时,JIT

回答 2 投票 0

如何在没有“0x00007fffe0dde513 in ?? ()”的情况下生成有效的JDK9调试版本?

这是我之前的帖子: 使用gdb进行JDK9 Hotspot调试,导致eclipse/Ubuntu终端出现SIGSEGV分段错误 现在我有一个问题 线程 0x7ffff7fc8700 (LWP 74291)“java”

回答 1 投票 0

HotSpot 可以内联 lambda 函数调用吗?

考虑代码: someList.forEach(x -> System.out.format("元素 %s", x)); 理论上,应该可以内联这段代码并消除第一次 inl 的间接函数调用...

回答 2 投票 0

OpenJDK 与 Java HotspotVM

OpenJDK VM 和 Oracle Hotspot VM 仍然是两个不同的 JVM 吗? 我似乎找不到任何有关 OpenJDK VM 的官方文档。甚至在 OpenJDK 主页上也有一个 HotSpot G...

回答 2 投票 0

永久代空间与元空间[重复]

JDK 8 中引入的元空间仍然是 JVM 中运行时数据区域的一部分?除了大小自动增加之外,它与 Permgen 空间有何不同?

回答 1 投票 0

Hotspot VM 是如何生成 String oops 和mirror oops 的?

在openjdk8源代码中,我发现一些java.lang.String oop不经过字节码引擎并由jvm本身分配。正如 hotspot/src/share/vm/classfile/javaClasses.cpp:185 所说: 手柄

回答 1 投票 0

Hotspot JVM - G1GC 堆大小调整问题

我最近正在测试一个并发负载相对较高的演示应用程序。该应用程序是一个 java 应用程序,在 Hotspot JVM (1.8.0_111) 上运行。 我可以获得最大吞吐量...

回答 1 投票 0

© www.soinside.com 2019 - 2024. All rights reserved.