Skip to content

Commit

Permalink
Simple comparison benchmark between MergeQueue and alternate implemen…
Browse files Browse the repository at this point in the history
…tation.
  • Loading branch information
metasim authored and echeipesh committed Sep 29, 2017
1 parent 8e489f4 commit 0c3231c
Show file tree
Hide file tree
Showing 3 changed files with 40 additions and 6 deletions.
33 changes: 33 additions & 0 deletions bench/archive/jmh-results-20170909195934.csv
Original file line number Diff line number Diff line change
@@ -0,0 +1,33 @@
Benchmark,Mode,Threads,Samples,Score,Score Error (99.9%),Unit,Param: shuffle,Param: size,Param: skip,Param: span,case
geotrellis.spark.io.index.MergeQueueBench.insertAlternateRange,avgt,6,5,1.153789,0.083649,ms/op,FALSE,10000,1,1,1
geotrellis.spark.io.index.MergeQueueBench.insertAlternateRange,avgt,6,5,4.661285,0.145217,ms/op,TRUE,10000,1,1,2
geotrellis.spark.io.index.MergeQueueBench.insertAlternateRange,avgt,6,5,1.152964,0.021158,ms/op,FALSE,10000,1,10,3
geotrellis.spark.io.index.MergeQueueBench.insertAlternateRange,avgt,6,5,4.851843,1.083847,ms/op,TRUE,10000,1,10,4
geotrellis.spark.io.index.MergeQueueBench.insertAlternateRange,avgt,6,5,1.202288,0.069938,ms/op,FALSE,10000,10,1,5
geotrellis.spark.io.index.MergeQueueBench.insertAlternateRange,avgt,6,5,4.800957,0.716661,ms/op,TRUE,10000,10,1,6
geotrellis.spark.io.index.MergeQueueBench.insertAlternateRange,avgt,6,5,1.199704,0.139731,ms/op,FALSE,10000,10,10,7
geotrellis.spark.io.index.MergeQueueBench.insertAlternateRange,avgt,6,5,4.643279,0.50537,ms/op,TRUE,10000,10,10,8
geotrellis.spark.io.index.MergeQueueBench.insertAlternateRange,avgt,6,5,18.429852,3.95489,ms/op,FALSE,100000,1,1,9
geotrellis.spark.io.index.MergeQueueBench.insertAlternateRange,avgt,6,5,83.728041,16.955704,ms/op,TRUE,100000,1,1,10
geotrellis.spark.io.index.MergeQueueBench.insertAlternateRange,avgt,6,5,17.217332,0.880057,ms/op,FALSE,100000,1,10,11
geotrellis.spark.io.index.MergeQueueBench.insertAlternateRange,avgt,6,5,80.226013,3.642189,ms/op,TRUE,100000,1,10,12
geotrellis.spark.io.index.MergeQueueBench.insertAlternateRange,avgt,6,5,16.066873,0.591799,ms/op,FALSE,100000,10,1,13
geotrellis.spark.io.index.MergeQueueBench.insertAlternateRange,avgt,6,5,83.480082,10.116281,ms/op,TRUE,100000,10,1,14
geotrellis.spark.io.index.MergeQueueBench.insertAlternateRange,avgt,6,5,17.368675,1.845685,ms/op,FALSE,100000,10,10,15
geotrellis.spark.io.index.MergeQueueBench.insertAlternateRange,avgt,6,5,81.591174,9.744866,ms/op,TRUE,100000,10,10,16
geotrellis.spark.io.index.MergeQueueBench.insertRange,avgt,6,5,0.770207,0.129926,ms/op,FALSE,10000,1,1,1
geotrellis.spark.io.index.MergeQueueBench.insertRange,avgt,6,5,18.487754,0.114573,ms/op,TRUE,10000,1,1,2
geotrellis.spark.io.index.MergeQueueBench.insertRange,avgt,6,5,0.723182,0.01966,ms/op,FALSE,10000,1,10,3
geotrellis.spark.io.index.MergeQueueBench.insertRange,avgt,6,5,2.215515,0.104115,ms/op,TRUE,10000,1,10,4
geotrellis.spark.io.index.MergeQueueBench.insertRange,avgt,6,5,3.817876,0.046325,ms/op,FALSE,10000,10,1,5
geotrellis.spark.io.index.MergeQueueBench.insertRange,avgt,6,5,179.711416,5.417218,ms/op,TRUE,10000,10,1,6
geotrellis.spark.io.index.MergeQueueBench.insertRange,avgt,6,5,0.714813,0.028597,ms/op,FALSE,10000,10,10,7
geotrellis.spark.io.index.MergeQueueBench.insertRange,avgt,6,5,53.223829,0.393442,ms/op,TRUE,10000,10,10,8
geotrellis.spark.io.index.MergeQueueBench.insertRange,avgt,6,5,11.398896,1.982656,ms/op,FALSE,100000,1,1,9
geotrellis.spark.io.index.MergeQueueBench.insertRange,avgt,6,5,1396.020143,19.85316,ms/op,TRUE,100000,1,1,10
geotrellis.spark.io.index.MergeQueueBench.insertRange,avgt,6,5,11.402514,1.221307,ms/op,FALSE,100000,1,10,11
geotrellis.spark.io.index.MergeQueueBench.insertRange,avgt,6,5,98.472769,4.8812,ms/op,TRUE,100000,1,10,12
geotrellis.spark.io.index.MergeQueueBench.insertRange,avgt,6,5,58.545305,4.280969,ms/op,FALSE,100000,10,1,13
geotrellis.spark.io.index.MergeQueueBench.insertRange,avgt,6,5,19300.46836,3702.480282,ms/op,TRUE,100000,10,1,14
geotrellis.spark.io.index.MergeQueueBench.insertRange,avgt,6,5,11.189844,0.578297,ms/op,FALSE,100000,10,10,15
geotrellis.spark.io.index.MergeQueueBench.insertRange,avgt,6,5,4417.350098,192.618574,ms/op,TRUE,100000,10,10,16
1 change: 1 addition & 0 deletions bench/build.sbt
Original file line number Diff line number Diff line change
Expand Up @@ -5,3 +5,4 @@ jmhFork := 1
jmhIterations := 5
jmhWarmupIterations := math.max(jmhIterations.value/2, 2)
jmhTimeUnit := "ms"
jmhExtraOptions := "-v EXTRA -jvmArgsAppend -Xmx2G"
Original file line number Diff line number Diff line change
Expand Up @@ -24,18 +24,18 @@ import scala.util.Random
@State(Scope.Thread)
class MergeQueueBench {

@Param(Array("10000", "100000", "1000000"))
// Whether to shuffle the ranges or leave them sorted
@Param(Array("false", "true"))
var shuffle: Boolean = _
@Param(Array("100000", "10000"))
// Number of ranges to insert
var size: Int = _
// How far each range is from the previous
@Param(Array("1", "2", "10"))
@Param(Array("10", "1"))
var skip: Int = _
// How wide each range is
@Param(Array("1", "10", "100"))
@Param(Array("10", "1"))
var span: Int = _
// Whether to shuffle the ranges or leave them sorted
@Param(Array("false", "true"))
var shuffle: Boolean = _

var ranges: Vector[(Long, Long)] = _

Expand Down

0 comments on commit 0c3231c

Please sign in to comment.