Skip to content

Commit 4ad6d83

Browse files
committed
feat: 性能测试
1 parent aedc25b commit 4ad6d83

File tree

11 files changed

+55
-84
lines changed

11 files changed

+55
-84
lines changed

java-11/.java-version

+1
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
11.0

java-11/pom.xml

+1-1
Original file line numberDiff line numberDiff line change
@@ -23,4 +23,4 @@
2323
</plugin>
2424
</plugins>
2525
</build>
26-
</project>
26+
</project>

java-17/.java-version

+1
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
17.0

java-17/pom.xml

+2
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,8 @@
1313
<maven.compiler.target>17</maven.compiler.target>
1414
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
1515
</properties>
16+
17+
1618
<build>
1719
<plugins>
1820
<plugin>

java-18/.java-version

+1
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
18.0

java-19/.java-version

+1
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
19.0

java-19/pom.xml

+1-19
Original file line numberDiff line numberDiff line change
@@ -17,35 +17,17 @@
1717
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
1818
</properties>
1919

20-
<dependencies>
21-
<!-- https://mvnrepository.com/artifact/org.openjdk.jmh/jmh-core -->
22-
<dependency>
23-
<groupId>org.openjdk.jmh</groupId>
24-
<artifactId>jmh-core</artifactId>
25-
<version>1.36</version>
26-
</dependency>
27-
<dependency>
28-
<groupId>org.openjdk.jmh</groupId>
29-
<artifactId>jmh-generator-annprocess</artifactId>
30-
<version>1.36</version>
31-
<scope>provided</scope>
32-
</dependency>
33-
</dependencies>
3420

3521

3622
<build>
3723
<plugins>
3824
<plugin>
3925
<groupId>org.apache.maven.plugins</groupId>
4026
<artifactId>maven-compiler-plugin</artifactId>
41-
<version>3.10.1</version>
4227
<configuration>
4328
<source>19</source>
4429
<target>19</target>
45-
<compilerArgs>
46-
<arg>--enable-preview</arg>
47-
<!-- <arg>&#45;&#45;add-exports=java.base/jdk.incubator.concurrent=ALL-UNNAMED</arg>-->
48-
</compilerArgs>
30+
<compilerArgs>--enable-preview</compilerArgs>
4931
</configuration>
5032
</plugin>
5133
</plugins>

java-19/src/main/java/com/di1shuai/java19/performance/Performance19.java

-63
This file was deleted.

java-8/.java-version

+1
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
1.8

java-8/pom.xml

+12-1
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,17 @@
1717
<version>1.18.10</version>
1818
<scope>provided</scope>
1919
</dependency>
20+
<dependency>
21+
<groupId>org.openjdk.jmh</groupId>
22+
<artifactId>jmh-core</artifactId>
23+
<version>1.36</version>
24+
</dependency>
25+
<dependency>
26+
<groupId>org.openjdk.jmh</groupId>
27+
<artifactId>jmh-generator-annprocess</artifactId>
28+
<version>1.36</version>
29+
<scope>provided</scope>
30+
</dependency>
2031
</dependencies>
2132

2233
<build>
@@ -34,4 +45,4 @@
3445
</build>
3546

3647

37-
</project>
48+
</project>
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,34 @@
1+
package com.diyishuai.java8.performance;
2+
3+
import org.openjdk.jmh.annotations.*;
4+
import org.openjdk.jmh.results.format.ResultFormatType;
5+
import org.openjdk.jmh.runner.Runner;
6+
import org.openjdk.jmh.runner.options.Options;
7+
import org.openjdk.jmh.runner.options.OptionsBuilder;
8+
9+
import java.util.concurrent.TimeUnit;
10+
11+
/**
12+
* @author shea
13+
* @since 2022/11/24
14+
*/
15+
@BenchmarkMode(Mode.Throughput)
16+
@OutputTimeUnit(TimeUnit.MILLISECONDS)
17+
@State(Scope.Thread)
18+
@Warmup(iterations = 10, time = 1, timeUnit = TimeUnit.MILLISECONDS)
19+
@Measurement(iterations = 10, time = 1, timeUnit = TimeUnit.MILLISECONDS)
20+
@Fork(2)
21+
@Threads(2)
22+
public class Performance {
23+
24+
@Benchmark
25+
public long div() {
26+
long t = 455565655225562L;
27+
long a = 0;
28+
for (int i = 0; i < 1000; i++) {
29+
a = t / 1024 / 1024 / 1024;
30+
}
31+
return a;
32+
}
33+
34+
}

0 commit comments

Comments
 (0)