performance improvements

the heap refill code was recursively implemented with two methods.
I merged both methods.

replace recursion in heap refill method with iterative approach

use array for list of LongQueue
This way there is no precondition when accessing the elements
This commit is contained in:
2020-11-07 08:36:07 +01:00
parent a427df09aa
commit c9dcbdbe97
3 changed files with 132 additions and 37 deletions

View File

@@ -7,7 +7,7 @@ buildscript {
jcenter()
}
dependencies {
// run with gradle --no-daemon clean jmh
// run with Java 11 and ./gradlew --no-daemon clean jmh
classpath "me.champeau.gradle:jmh-gradle-plugin:0.5.2"
}
}
@@ -16,9 +16,13 @@ plugins {
// usage: gradle dependencyUpdates -Drevision=release
id "com.github.ben-manes.versions" version "0.34.0"
}
apply plugin: 'java'
apply plugin: 'eclipse'
// java compatibility version
sourceCompatibility = 11
/*
* The shared configuration for all sub-projects:
*/
@@ -78,7 +82,7 @@ subprojects {
jmh {
//jvmArgsAppend = ""
resultFormat = "JSON"
//include = ['.*Union.*'] // include pattern (regular expression) for benchmarks to be executed
include = ['.*BenchmarkMultiwayMerge.*'] // include pattern (regular expression) for benchmarks to be executed
//exclude = ['some regular expression'] // exclude pattern (regular expression) for benchmarks to be executed
}
}