Skip to content

Releases: penemue/keap

0.3.0

27 Nov 17:23
Compare
Choose a tag to compare

Updates of dependencies

Kotlin 1.3.10.

Maven Central

0.2.2

08 Nov 16:18
Compare
Choose a tag to compare

This release fixes bug #4.

Maven Central

0.2.1

03 Nov 19:15
Compare
Choose a tag to compare

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

Maven Central

0.2.0

08 Oct 20:56
Compare
Choose a tag to compare

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

Maven Central

0.1.1

03 May 15:51
Compare
Choose a tag to compare

0.1.0

30 Jan 00:00
Compare
Choose a tag to compare

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

Maven Central