首页 > 其他分享 >JMH- benchmark基准测试

JMH- benchmark基准测试

时间:2024-10-10 10:02:56浏览次数:1  
标签:Java openjdk benchmark JMH jmh org 基准

JMH- benchmark基准测试

介绍

Java 提供了一个强大的工具包:Java Microbenchmark Harness (JMH)。JMH 是专门用于Java基准测试的工具,适合微基准,因为它可以应对JVM的各种优化。

pom中引入

<dependency>
    <groupId>org.openjdk.jmh</groupId>
    <artifactId>jmh-core</artifactId>
    <version>1.36</version>
</dependency>
<dependency>
    <groupId>org.openjdk.jmh</groupId>
    <artifactId>jmh-generator-annprocess</artifactId>
    <version>1.36</version>
    <scope>provided</scope>
</dependency>

<!-- 打包插件 -->
<build>
    <plugins>
        <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-compiler-plugin</artifactId>
            <version>3.8.1</version>
            <configuration>
                <annotationProcessorPaths>
                    <path>
                        <groupId>org.openjdk.jmh</groupId>
                        <artifactId>jmh-generator-annprocess</artifactId>
                        <version>1.36</version>
                    </path>
                </annotationProcessorPaths>
            </configuration>
        </plugin>
    </plugins>
</build>

安装插件

jmt 插件安装到idea中

编写代码

import org.openjdk.jmh.annotations.*;

import java.util.concurrent.TimeUnit;

@BenchmarkMode(Mode.AverageTime)
@OutputTimeUnit(TimeUnit.MILLISECONDS)
@State(Scope.Thread)
public class MyBenchmark {

    @Benchmark
    public void testMethod() {
        int sum = 0;
        for (int i = 0; i < 1_000_000; i++) {
            sum += i;
        }
    }
}

先编译后执行

首先需要执行 maven clean install 编译生成/META-INF/benchmarklist
不然执行报错

执行代码

点击即可执行,首先会预热,后真正执行计算。

标签:Java,openjdk,benchmark,JMH,jmh,org,基准
From: https://www.cnblogs.com/DennyZhao/p/18455718

相关文章

  • NL2SQL之DB-GPT-Hub<详解篇>:text2sql任务的微调框架和基准对比
    NL2SQL之DB-GPT-Hub<详解篇>:text2sql任务的微调框架和基准对比随着生成式人工智能(ArtificialIntelligenceGeneratedContent,简写为AIGC)时代的到来,使用大规模预训练语言模型(LLM)来进行text2sql任务的sql生成也越来越常见。基于LLM的text2SQL方法通常分为两种:基于pr......
  • CPU性能测试基准(Dhrystone)学习
    简介Dhrystone是测量处理器运算能力的最常见基准程序之一,常用于处理器的整型运算性能的测量。程序是用C语言编写的,因此C编译器的编译效率对测试结果也有很大影响。Dhrystone是由ReinholdP.Weicker在1984年提出来的一个基准测试程序,其主要目的是测试处理器的整数运算和逻辑运算......
  • Meta:LLM语言概念推理基准Linguini
    ......
  • 实时语音交互中文基准首期测评出炉;美取消 SB-1047 法案,大模型厂商大难不死丨 RTE 开发
       开发者朋友们大家好: 这里是「RTE开发者日报」,每天和大家一起看新闻、聊八卦。我们的社区编辑团队会整理分享RTE(Real-TimeEngagement)领域内「有话题的新闻」、「有态度的观点」、「有意思的数据」、「有思考的文章」、「有看点的会议」,但内容仅代表编......
  • 聊聊性能基准测试和容量评估规划
    星球有同学问了一个关于性能测试的问题,我觉得蛮有意思的,遂分享给大家,顺带聊聊我的分析思路和实践经验。问题背景是这样:一个1.0版本的新系统还未上线,需要对其进行性能测试(性能基准),该如何开展工作?其中流量模型如何评估?涉及到缓存的场景如何压测?压测场景的流量配比该如何配置?线上......
  • REF3012, REF3020, REF3025, REF3030, REF3033, REF3040采用 SOT-23-3 封装的 REF30xx
    1特性•微型封装:SOT-23-3•低压降:1mV•大输出电流:25mA•高精度:0.2%•低IQ:42µA(典型值)•出色的额定温漂性能:–0°C至70°C范围内为50ppm/°C(最大值)––40°C至+125°C范围内为75ppm/°C(最大值)2应用•温度和压力发送器•便携式、电池供电类设备......
  • redis自身查询很慢 排查redis-benchmark
    redis-benchmark 是一个用于测试Redis性能的基准测试工具,可以帮助开发人员评估和比较Redis在不同配置或负载情况下的吞吐量和延迟。通过 redis-benchmark 的测试结果,你可以获得qps、平均延迟、错误率等性能指标,从而根据需要进行调优和优化,确保Redis在实际生产环境中具有良......
  • ADS12204具有集成 PGA 和基准的 低功耗24位 ADC 模数转换芯片
    1特点•低电流消耗:在占空比模式下低至120μA(类型)•宽电源范围:2.3V至5.5V•可编程增益:1V/V至128V/V•可编程数据率:最高2kSPS•高达20位的有效分辨率•使用单周期设定数字滤波器在20SPS下同时抑制50Hz和60Hz的噪声•两个差分或四个单端输入•双匹配可......
  • 优化 Go 语言数据打包:性能基准测试与分析
    优化Go语言数据打包:性能基准测试与分析场景:在局域网内,需要将多个机器网卡上抓到的数据包同步到一个机器上。原有方案:tcpdump-w写入文件,然后定时调用rsync进行同步。改造方案:使用Go重写这个抓包逻辑及同步逻辑,直接将抓到的包通过网络发送至服务端,由服务端写入,这样就减少......
  • SOLIDWORKS 2024 基准轴
       ......