首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Java优化范式

Java优化范式
EN

Stack Overflow用户
提问于 2016-07-27 13:28:54
回答 1查看 72关注 0票数 1

我目前正在做一些Java优化。评估我的进度的最好方法似乎是重复运行并使用System.nanoTime收集运行时统计数据。

我的大部分背景都与嵌入式DSP应用程序有关。在我的嵌入式开发中,我可以访问CPU周期计数器(这是一个很好的优化方法)。JRE就像一个合成CPU,有没有办法获得执行的指令数或JRE时钟等价物的信息?

提前感谢您的任何提示。J.R.

EN

回答 1

Stack Overflow用户

发布于 2016-07-27 19:08:48

几乎可以肯定,字节码计数对您想要的东西毫无用处。就运行时的性能而言,它们完全是虚拟的/虚构的。唯一重要的是已经预热的代码的运行时间。

我建议您看看JMH,以便对您的代码进行微基准测试。http://openjdk.java.net/projects/code-tools/jmh/

如果您来自DSP/实时背景,我建议您查看延迟分布并最小化您的分配率。

注意: JVM在指令之间插入“安全点”,以检查线程是否需要停止,例如执行垃圾收集。垃圾收集可能需要几秒钟的时间。然而,安全点通常会被优化,以避免降低程序的运行速度。

简而言之,这意味着指令之间的时间可能是零,可能是什么,可能是几秒钟,甚至几分钟,所以我不会费心去计算它们。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/38604407

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档