问题标签 [openj9]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
java - OpenJ9 是否支持 sun.misc.Contended 注解?
我创建了一个程序来检查是否@sun.misc.Contended
生效。这个想法是,当@Contended
生效时,注释类中的字段偏移量会更大。
如果我指定了-XX:-RestrictContended
标志,我可以看到 OpenJDK 上偏移量的预期差异。我在 OpenJ9 11 (jdk-11.0.1+13, Eclipse OpenJ9 VM-11.0.1) 上没有看到任何区别。
OpenJDK 输出是
OpenJ9 的输出是
该程序是
openj9 - 我是 OpenJ9 新手,需要在 RCP 应用程序中使用 OpenJ9 分析工具
与 Hotspot JVM 相比,我只是没有找到任何关于如何衡量性能改进的工具。请分享我在哪里可以找到分析工具的详细信息。例如像 JvisualVM 这样的分析工具
asynchronous - OpenJ9 gc 日志是异步的吗?
OpenJ9 是异步写 gc 日志的吗?
在 docker 容器中使用 Eclipse OpenJ9 时,我可以将 gc.log 放入 NFS 或 Ceph 吗?
我读过 OpenJDK write gc log synchronously: Is gc.log writing asynchronous? 将 gc.log 安全地放在 NFS 挂载上?.
java - 如何使用 OpenJ9 Xtrace 选项转储方法参数的内容
背景:
我想在 Eclipse 上记录用户活动,例如,用户克隆了哪些 git 存储库,何时发生合并冲突,等等。
我想出了使用 OpenJ9 -Xtrace 选项。首先,为了测试 OpenJ9 -Xtrace 选项功能,我使用 OpenJ9 做了以下选项: Xtrace Option Builder,并将这些选项添加eclipse.ini
到记录克隆的 git 存储库。
org/eclipse/jgit/api/CloneCommand.setURI()
是一种在 EGit/JGit 中为克隆存储库设置 URI 的方法。org/eclipse/jgit/api/CloneCommand.call()
是一种克隆指定存储库的方法。
然后我使用-clean
选项启动 Eclipse,克隆一个存储库,然后退出 Eclipse。我mytrace.trc
用traceformat
命令转换,并得到这个输出mytrace.trc.fmt
:
此输出显示setURI()
方法有一个参数 ( Ljava/lang/String;
),但没有 JGit 克隆的 URI。
问题:
如何使用 OpenJ9 Xtrace 选项转储方法参数的内容?
jvm - 使用 OpenJ9 的类数据共享时,应该对 JVM 内存的哪个区域影响最大
我正在寻找经验证据来支持使用 Open J9 的类数据共享功能。此功能声称:
在同一主机上运行的多个 Java 虚拟机 (JVM) 之间提供透明和动态的数据共享,从而减少每个 JVM 实例消耗的物理内存量
我正在使用 docker compose 运行同一应用程序的 5 个副本,并使用本地 prometheus 服务器来监控所有 5 个 JVM 中的内存使用情况。
我已经启用并禁用了类数据共享功能,然后我正在查看指标。
- 已加载 jvm 类
- jvm非堆内存
- jvm类存储
- jvm JIT 数据缓存
- 缓冲存储器
它们都通过 Prometheus 执行器端点暴露在 Spring Boot 应用程序中。
我的直觉告诉我,如果某些内存映射文件被用于类存储,我可能会看到类存储量和使用的非堆内存量有所减少。
并不是说我的测试非常科学,但到目前为止,我看到了相反的结果——当我启用该功能时,这两个指标都会略微上升(边际量但根本没有下降)。
真正应该在哪里衡量此功能的影响。从表面上看,鉴于所有 5 个应用程序都是相同的,我觉得它应该产生一些可衡量的影响,这让我觉得我在衡量错误的东西。
openj9 - OpenJ9 性能不是很好?
最近renessaince.dev发布了来自大量实际测试(他们的话)的性能结果。OpenJ9 不好看!
测试人员可能忽略了 OpenJ9 配置是否存在任何问题?
java - 如何在主机中使用 docker-built library&bin
我的问题是如何在主机中使用 docker 容器构建的软件和库。docker 提供的库可能依赖于其他工具/库编译。当我尝试一些开源项目(例如,openj9)时,这个问题就出现了。
例如,我在 docker 容器中构建了一个 openJ9 VM,一个类似于 HotSpot JVM 的 Java VM,遵循(构建指令)。这个过程没问题,但下一个问题是我如何配置容器构建的 jvm,驻留在~/openj9-openjdk-jdk8/build/linux-x86_64-normal-server-release/
容器内部,驻留在主机的 eclipse 中?
我在使用 docker 时可能是错误的方式,感觉会有潜在的冲突,因为容器构建的 jvm 的容器环境可能与主机环境不同。
那么任何人都可以解释在主机中为我的 Eclipse 使用容器构建 jvm 的正确方法吗?谢谢
java - 在 ubuntu 18.04 中安装 OpenJDK OpenJ9 后,我丢失了可执行文件
我最近从https://launchpad.net/~rpardini/+archive/ubuntu/adoptopenjdk在我的 Ubuntu 18.04 机器上安装了 OpenJ9 jvm,并在我的终端中收到了以下通知:
我试过运行 Spring Tool Suite,到目前为止没有出现任何问题。
我应该担心这个吗?如果我能做些什么来修复这些丢失的文件,请教我。我对 jvm 的工作原理知之甚少。先感谢您。
java - 如何使用 Eclipse OpenJ9 进行堆转储?
使用 Oracle 的 Hotspot JVM,它看起来jmap -dump:file=/tmp/dump.txt <pid>
可以用来进行堆转储。
但是,Eclipse OpenJ9 不包含该jmap
工具 - 如果您尝试将常规jmap
与 OpenJ9 的 jvm 一起使用,则会出现异常:
那么,如何使用 OpenJ9 进行堆转储呢?
visualvm - 将 VisualVM 与 AdoptOpenJDK 和 OpenJ9 一起使用
如果我使用适用于 Java8 的 AdoptOpenJDK HotSpot 构建,我可以使用 VisualVM 监控应用程序。如果我使用 OpenJ9 构建,VisualVM 会显示错误“无法检测到本地应用程序”。
有人让 VisualVM 与 OpenJ9 一起工作吗?