-
Notifications
You must be signed in to change notification settings - Fork 155
/
build.gradle
51 lines (38 loc) · 1007 Bytes
/
build.gradle
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
plugins {
id 'java-library'
id "me.champeau.gradle.jmh"
}
dependencies {
implementation project(":hppc")
implementation "it.unimi.dsi:fastutil:8.4.1"
implementation "com.koloboke:koloboke-impl-jdk8:1.0.0"
implementation 'org.openjdk.jmh:jmh-core'
jmh 'org.openjdk.jmh:jmh-core'
jmh 'org.openjdk.jmh:jmh-generator-annprocess'
}
jmh {
duplicateClassesStrategy = DuplicatesStrategy.WARN
}
jmhJar {
duplicatesStrategy = DuplicatesStrategy.WARN
exclude 'LICENSE'
exclude 'THIRD-PARTY'
}
task benchmark() {
dependsOn jmhJar
doFirst {
println """JMH benchmarks JAR is at:\n ${jmhJar.archiveFile.get()}
List benchmarks:
java -jar ${jmhJar.archiveFile.get()} -l
Run all benchmarks:
java -jar ${jmhJar.archiveFile.get()}
JMH options:
java -jar ${jmhJar.archiveFile.get()} -h
Example of filtering to one benchmark and a subset of parameters:
java -jar ${jmhJar.archiveFile.get()} B002_HashSet_Add -p library=HPPC,FASTUTIL
"""
}
}
versionsLock {
testProject()
}