Releases: penemue/keap
Releases · penemue/keap
0.3.0
0.2.2
0.2.1
This release fixes nasty bug #3 introduced in 0.2.0.
Benchmarks results
Building the queue from collections of random elements:
Benchmark Mode Cnt Score Error Units
JavaQueueRandomBenchmark.heapify thrpt 20 1.810 ± 0.039 ops/ms
KeapQueueRandomBenchmark.heapify thrpt 20 3.487 ± 0.013 ops/ms
Basic queue operations with random elements:
Benchmark Mode Cnt Score Error Units
JavaQueueRandomBenchmark.offer thrpt 20 3.649 ± 0.041 ops/us
JavaQueueRandomBenchmark.peek thrpt 20 79.458 ± 0.626 ops/us
JavaQueueRandomBenchmark.poll thrpt 20 4.250 ± 0.070 ops/us
KeapQueueRandomBenchmark.offer thrpt 20 3.727 ± 0.073 ops/us
KeapQueueRandomBenchmark.peek thrpt 20 84.371 ± 0.499 ops/us
KeapQueueRandomBenchmark.poll thrpt 20 11.993 ± 0.239 ops/us
Offering ordered elements:
Benchmark Mode Cnt Score Error Units
JavaQueueOrderedBenchmark.offerDecreasing thrpt 20 5.432 ± 0.177 ops/us
JavaQueueOrderedBenchmark.offerIncreasing thrpt 20 30.795 ± 0.588 ops/us
KeapQueueOrderedBenchmark.offerDecreasing thrpt 20 7.959 ± 0.033 ops/us
KeapQueueOrderedBenchmark.offerIncreasing thrpt 20 8.860 ± 0.044 ops/us
0.2.0
Updates of dependencies
Kotlin 1.1.51.
Performance improvements
Tournament tree atop the queue is backed by a twice smaller array. Thus entire PriorityQueue
memory consumption is reduces by 25% improving data cache performance. According to benchmarks, for random input and for all operations keap-based PriorityQueue
performs better than java.util.PriorityQueue
.
Benchmarks results
Building the queue from collections of random elements:
Benchmark Mode Cnt Score Error Units
JavaQueueRandomBenchmark.heapify thrpt 20 1.827 ± 0.031 ops/ms
KeapQueueRandomBenchmark.heapify thrpt 20 3.498 ± 0.017 ops/ms
Basic queue operations with random elements:
Benchmark Mode Cnt Score Error Units
JavaQueueRandomBenchmark.offer thrpt 20 3.728 ± 0.038 ops/us
JavaQueueRandomBenchmark.peek thrpt 20 80.269 ± 0.713 ops/us
JavaQueueRandomBenchmark.poll thrpt 20 4.273 ± 0.088 ops/us
KeapQueueRandomBenchmark.offer thrpt 20 4.083 ± 0.039 ops/us
KeapQueueRandomBenchmark.peek thrpt 20 84.329 ± 0.572 ops/us
KeapQueueRandomBenchmark.poll thrpt 20 11.019 ± 0.475 ops/us
Offering ordered elements:
Benchmark Mode Cnt Score Error Units
JavaQueueOrderedBenchmark.offerDecreasing thrpt 20 5.458 ± 0.075 ops/us
JavaQueueOrderedBenchmark.offerIncreasing thrpt 20 30.762 ± 0.527 ops/us
KeapQueueOrderedBenchmark.offerDecreasing thrpt 20 8.177 ± 0.121 ops/us
KeapQueueOrderedBenchmark.offerIncreasing thrpt 20 8.467 ± 0.217 ops/us
0.1.1
0.1.0
Benchmarks results
Building the queue from collection of random elements:
Benchmark Mode Cnt Score Error Units
JavaQueueRandomBenchmark.heapify thrpt 20 1.812 ± 0.041 ops/ms
KeapQueueRandomBenchmark.heapify thrpt 20 3.315 ± 0.019 ops/ms
Basic queue operations with random elements:
Benchmark Mode Cnt Score Error Units
JavaQueueRandomBenchmark.offer thrpt 20 3.652 ± 0.075 ops/us
JavaQueueRandomBenchmark.peek thrpt 20 81.031 ± 0.488 ops/us
JavaQueueRandomBenchmark.poll thrpt 20 4.267 ± 0.074 ops/us
KeapQueueRandomBenchmark.offer thrpt 20 3.349 ± 0.077 ops/us
KeapQueueRandomBenchmark.peek thrpt 20 82.927 ± 0.484 ops/us
KeapQueueRandomBenchmark.poll thrpt 20 11.522 ± 0.264 ops/us
Offering ordered elements:
Benchmark Mode Cnt Score Error Units
JavaQueueOrderedBenchmark.offerDecreasing thrpt 20 5.506 ± 0.071 ops/us
JavaQueueOrderedBenchmark.offerIncreasing thrpt 20 31.228 ± 0.363 ops/us
KeapQueueOrderedBenchmark.offerDecreasing thrpt 20 8.318 ± 0.048 ops/us
KeapQueueOrderedBenchmark.offerIncreasing thrpt 20 7.539 ± 0.099 ops/us