当前位置: 首页 > news >正文

如何在linux上做Java基准测试工具JMH测试(2)

以前我们有一篇文章专门介绍过如何在linux上做Java基准测试工具JMH测试,由于gradle 版本的更新和需求的变化,原先的文章已经不能满足需求,所以今天又写下一篇总结。
目前使用的gradle 版本如下:

gradle -v------------------------------------------------------------
Gradle 8.14.2
------------------------------------------------------------Build time:    2025-06-05 13:32:01 UTC
Revision:      30db2a3bdfffa9f8b40e798095675f9dab990a9aKotlin:        2.0.21
Groovy:        3.0.24
Ant:           Apache Ant(TM) version 1.10.15 compiled on August 25 2024
Launcher JVM:  21.0.7 (Tencent 21.0.7+1-LTS)
Daemon JVM:    D:\Program Files (x86)\java\TencentKona-21.0.7.b1 (no JDK specified, using current Java home)
OS:            Windows 11 10.0 amd64

我们需要引入 gradle jmh 插件: jmh-gradle-plugin, 这里记住我们的gradle 版本为8.14.2 ,对应插件版本为0.7.0,但jmh可以升级到最高版本1.37,插件的官网在这里:https://github.com/melix/jmh-gradle-plugin

buildscript {repositories {maven {url = uri("https://plugins.gradle.org/m2/")}}dependencies {classpath("me.champeau.jmh:jmh-gradle-plugin:0.7.3")}
}subprojects {apply plugin: "me.champeau.jmh"jmh {zip64 = true// 可以指定特定的基准测试类includes = ['.*NavmeshBenchMark.*']jvmArgs = ['-Dfile.encoding=UTF-8', '-server', '-Xms4g', '-Xmx4g']humanOutputFile = rootProject.layout.buildDirectory.file("reports/jmh/human.txt").get().asFileresultsFile = rootProject.layout.buildDirectory.file("reports/jmh/results.json").get().asFileresultFormat="JSON"verbosity = 'NORMAL'}
}

其中 includes = ['.*NavmeshBenchMark.*']意思是要包含NavmeshBenchMark关键词的类,
然后,在命令行执行:

gradle :game:jmh

等命令执行完成,就会在根目录`build/reports/jmh/生成两个报告,一个是生成的明细和结果human.txt,一个只包含结果result.txt。

Benchmark                                             Mode  Cnt        Score        Error  Units
NativeNavmeshBenchMark.testFindNearestWalkablePoint  thrpt   10  4960958.578 ± 264752.403  ops/s
NativeNavmeshBenchMark.testIsNoCollision             thrpt   10  3998607.075 ± 191662.288  ops/s
NativeNavmeshBenchMark.testPointWalkable             thrpt   10  5164636.933 ± 279201.965  ops/s
NativeNavmeshBenchMark.testSearchPath                thrpt   10    44970.674 ±   1834.446  ops/s
NavmeshBenchMark.testFindNearestWalkablePoint        thrpt   10  4129492.137 ± 162828.284  ops/s
NavmeshBenchMark.testIsNoCollision                   thrpt   10  2496494.104 ±  80616.840  ops/s
NavmeshBenchMark.testPointWalkable                   thrpt   10  4187051.891 ± 124505.527  ops/s
NavmeshBenchMark.testSearchPath                      thrpt   10    13665.673 ±   1585.468  ops/s
http://www.dtcms.com/a/492147.html

相关文章:

  • 毕业设计网站最容易做什莫类型wordpress社区
  • YOLOV1与YOLOV2
  • 什么是python中的functools.partial
  • 旅游网站的市场需求怎么做介绍asp网站后台管理系统密码破解
  • 做网站公司 陕西渭南网站建设上机课
  • 苍穹外卖-购物车部分
  • 《深入浅出数据分析》笔记
  • Docker 完整指南:从入门到企业实战
  • LLM入门笔记:注意力机制与输出预测
  • 网站开发网站开发设计网站建设收费明细
  • 西南能矿建设工程公司网站贵阳网站建设-中国互联
  • 网站建设策划书封面网站做seo有什么作用
  • 网站建设前需求调研表知名网站建设定制
  • 沧州网站seo公司安徽住房与城乡建设门户网站
  • idea2025社区版设置打开的多个文件展示在工具栏下方
  • PCIe协议之 flit 模式 之 速率 vs flit/non-flit vs 编码方式对比汇总
  • JSON_数据传输命名问题
  • 网站网页文案怎么写页面网站建设
  • VS code定时任务设置(mac os)
  • asp.net mvc5 网站开发实践sever2012做网站
  • Java 设计模式——适配器模式:从原理到3种实战的完整指南
  • ios wordpress连接站点wordpress带会员中心
  • 区域气象-大气化学在线耦合模式(WRF-Chem)在大气环境领域实践
  • 廊坊网站建设方案策划asp.net 做网站实例
  • 阿里云购买网站登录docker wordpress安装目录
  • 静态网站添加到织梦手机上编程软件
  • windows文件夹显示不了的解决
  • 北京网站设计知名乐云seo企业邮箱和个人邮箱区别
  • Google提示词白皮书总结(1)
  • aspcms建站视频教学网站cms