@@ -36,6 +36,7 @@ abstract class BufferRWBenchmarkBase {
36
36
}
37
37
}
38
38
39
+ @State(Scope .Benchmark )
39
40
open class ByteBenchmark : BufferRWBenchmarkBase () {
40
41
@Benchmark
41
42
fun benchmark (): Byte {
@@ -44,6 +45,7 @@ open class ByteBenchmark : BufferRWBenchmarkBase() {
44
45
}
45
46
}
46
47
48
+ @State(Scope .Benchmark )
47
49
open class ShortBenchmark : BufferRWBenchmarkBase () {
48
50
@Benchmark
49
51
fun benchmark (): Short {
@@ -52,6 +54,7 @@ open class ShortBenchmark : BufferRWBenchmarkBase() {
52
54
}
53
55
}
54
56
57
+ @State(Scope .Benchmark )
55
58
open class IntBenchmark : BufferRWBenchmarkBase () {
56
59
@Benchmark
57
60
fun benchmark (): Int {
@@ -60,6 +63,7 @@ open class IntBenchmark : BufferRWBenchmarkBase() {
60
63
}
61
64
}
62
65
66
+ @State(Scope .Benchmark )
63
67
open class LongBenchmark : BufferRWBenchmarkBase () {
64
68
@Benchmark
65
69
fun benchmark (): Long {
@@ -68,6 +72,7 @@ open class LongBenchmark : BufferRWBenchmarkBase() {
68
72
}
69
73
}
70
74
75
+ @State(Scope .Benchmark )
71
76
open class ShortLeBenchmark : BufferRWBenchmarkBase () {
72
77
@Benchmark
73
78
fun benchmark (): Short {
@@ -76,6 +81,7 @@ open class ShortLeBenchmark : BufferRWBenchmarkBase() {
76
81
}
77
82
}
78
83
84
+ @State(Scope .Benchmark )
79
85
open class IntLeBenchmark : BufferRWBenchmarkBase () {
80
86
@Benchmark
81
87
fun benchmark (): Int {
@@ -84,6 +90,7 @@ open class IntLeBenchmark : BufferRWBenchmarkBase() {
84
90
}
85
91
}
86
92
93
+ @State(Scope .Benchmark )
87
94
open class LongLeBenchmark : BufferRWBenchmarkBase () {
88
95
@Benchmark
89
96
fun benchmark (): Long {
@@ -92,6 +99,7 @@ open class LongLeBenchmark : BufferRWBenchmarkBase() {
92
99
}
93
100
}
94
101
102
+ @State(Scope .Benchmark )
95
103
open class DecimalLongBenchmark : BufferRWBenchmarkBase () {
96
104
@Param(" -9223372036854775806" , " 9223372036854775806" , " 1" )
97
105
var value = 0L
@@ -118,6 +126,7 @@ open class DecimalLongBenchmark : BufferRWBenchmarkBase() {
118
126
}
119
127
}
120
128
129
+ @State(Scope .Benchmark )
121
130
open class HexadecimalLongBenchmark : BufferRWBenchmarkBase () {
122
131
@Param(" 9223372036854775806" , " 1" )
123
132
var value = 0L
@@ -144,6 +153,7 @@ open class HexadecimalLongBenchmark : BufferRWBenchmarkBase() {
144
153
145
154
// This benchmark is based on Okio benchmark:
146
155
// https://raw.githubusercontent.com/square/okio/master/okio/jvm/jmh/src/jmh/java/com/squareup/okio/benchmarks/BufferUtf8Benchmark.java
156
+ @State(Scope .Benchmark )
147
157
open class Utf8StringBenchmark : BufferRWBenchmarkBase () {
148
158
private val strings = mapOf (
149
159
" ascii" to (" Um, I'll tell you the problem with the scientific power that you're using here, "
@@ -219,6 +229,7 @@ open class Utf8StringBenchmark : BufferRWBenchmarkBase() {
219
229
}
220
230
}
221
231
232
+ @State(Scope .Benchmark )
222
233
open class Utf8LineBenchmarkBase : BufferRWBenchmarkBase () {
223
234
@Param(" 17" )
224
235
var length: Int = 0
@@ -254,6 +265,7 @@ open class Utf8LineBenchmarkBase : BufferRWBenchmarkBase() {
254
265
}
255
266
}
256
267
268
+ @State(Scope .Benchmark )
257
269
open class Utf8LineBenchmark : Utf8LineBenchmarkBase () {
258
270
@Benchmark
259
271
fun benchmark (): String? {
@@ -262,6 +274,7 @@ open class Utf8LineBenchmark : Utf8LineBenchmarkBase() {
262
274
}
263
275
}
264
276
277
+ @State(Scope .Benchmark )
265
278
open class Utf8LineStrictBenchmark : Utf8LineBenchmarkBase () {
266
279
@Benchmark
267
280
fun benchmark (): String {
@@ -331,6 +344,7 @@ open class BufferGetBenchmark {
331
344
fun get () = buffer[offset]
332
345
}
333
346
347
+ @State(Scope .Benchmark )
334
348
open class BufferReadWriteByteArray : BufferRWBenchmarkBase () {
335
349
private var inputArray = ByteArray (0 )
336
350
private var outputArray = ByteArray (0 )
@@ -352,6 +366,7 @@ open class BufferReadWriteByteArray : BufferRWBenchmarkBase() {
352
366
}
353
367
}
354
368
369
+ @State(Scope .Benchmark )
355
370
open class BufferReadNewByteArray : BufferRWBenchmarkBase () {
356
371
private var inputArray = ByteArray (0 )
357
372
0 commit comments