aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--README.md6
-rwxr-xr-xadditional_build_steps_thomaswue.sh (renamed from additional_build_step_thomaswue.sh)0
-rwxr-xr-xcalculate_average_Ujjwalbharti.sh2
-rwxr-xr-xcalculate_average_abfrmblr.sh2
-rwxr-xr-xcalculate_average_ags313.sh5
-rwxr-xr-xcalculate_average_anandmattikopp.sh3
-rwxr-xr-xcalculate_average_armandino.sh2
-rwxr-xr-xcalculate_average_artpar.sh2
-rwxr-xr-xcalculate_average_artsiomkorzun.sh5
-rwxr-xr-xcalculate_average_asun.sh6
-rwxr-xr-xcalculate_average_baseline.sh6
-rwxr-xr-xcalculate_average_bjhara.sh2
-rwxr-xr-xcalculate_average_coolmineman.sh15
-rwxr-xr-xcalculate_average_criccomini.sh2
-rwxr-xr-xcalculate_average_davecom.sh2
-rwxr-xr-xcalculate_average_davery22.sh2
-rwxr-xr-xcalculate_average_ddimtirov.sh6
-rwxr-xr-xcalculate_average_deemkeen.sh2
-rwxr-xr-xcalculate_average_ebarlas.sh4
-rwxr-xr-xcalculate_average_entangled90.sh2
-rwxr-xr-xcalculate_average_fatroom.sh3
-rwxr-xr-xcalculate_average_felix19350.sh2
-rwxr-xr-xcalculate_average_filiphr.sh5
-rwxr-xr-xcalculate_average_flippingbits.sh4
-rwxr-xr-xcalculate_average_fragmede.sh2
-rwxr-xr-xcalculate_average_gabrielreid.sh2
-rwxr-xr-xcalculate_average_hchiorean.sh2
-rwxr-xr-xcalculate_average_imrafaelmerino.sh5
-rwxr-xr-xcalculate_average_isolgpus.sh2
-rwxr-xr-xcalculate_average_itaske.sh2
-rwxr-xr-xcalculate_average_iziamos.sh2
-rwxr-xr-xcalculate_average_jgrateron.sh2
-rwxr-xr-xcalculate_average_jotschi.sh2
-rwxr-xr-xcalculate_average_kevinmcmurtrie.sh6
-rwxr-xr-xcalculate_average_kgeri.sh2
-rwxr-xr-xcalculate_average_khmarbaise.sh2
-rwxr-xr-xcalculate_average_kuduwa-keshavram.sh2
-rwxr-xr-xcalculate_average_lawrey.sh2
-rwxr-xr-xcalculate_average_merykitty.sh2
-rwxr-xr-xcalculate_average_moysesb.sh2
-rwxr-xr-xcalculate_average_mudit-saxena.sh2
-rwxr-xr-xcalculate_average_nstng.sh2
-rwxr-xr-xcalculate_average_obourgain.sh2
-rwxr-xr-xcalculate_average_padreati.sh2
-rwxr-xr-xcalculate_average_palmr.sh2
-rwxr-xr-xcalculate_average_rby.sh2
-rwxr-xr-xcalculate_average_richardstartin.sh2
-rwxr-xr-xcalculate_average_royvanrijn.sh5
-rwxr-xr-xcalculate_average_santanu.sh2
-rwxr-xr-xcalculate_average_seijikun.sh4
-rwxr-xr-xcalculate_average_semotpan.sh2
-rwxr-xr-xcalculate_average_spullara.sh4
-rwxr-xr-xcalculate_average_thomaswue.sh6
-rwxr-xr-xcalculate_average_truelive.sh5
-rwxr-xr-xcalculate_average_twobiers.sh5
-rwxr-xr-xcalculate_average_yavuztas.sh5
-rwxr-xr-xcalculate_average_yehwankim23.sh2
-rwxr-xr-xcalculate_average_yemreinci.sh2
-rwxr-xr-xprepare_ags313.sh19
-rwxr-xr-xprepare_artsiomkorzun.sh19
-rwxr-xr-xprepare_baseline.sh20
-rwxr-xr-xprepare_coolmineman.sh19
-rwxr-xr-xprepare_ddimtirov.sh20
-rwxr-xr-xprepare_ebarlas.sh19
-rwxr-xr-xprepare_filiphr.sh20
-rwxr-xr-xprepare_flippingbits.sh19
-rwxr-xr-xprepare_imrafaelmerino.sh19
-rwxr-xr-xprepare_royvanrijn.sh19
-rwxr-xr-xprepare_seijikun.sh19
-rwxr-xr-xprepare_spullara.sh19
-rwxr-xr-xprepare_thomaswue.sh19
-rwxr-xr-xprepare_truelive.sh19
-rwxr-xr-xprepare_twobiers.sh19
-rwxr-xr-xprepare_yavuztas.sh19
74 files changed, 369 insertions, 123 deletions
diff --git a/README.md b/README.md
index f8037cb..ababdea 100644
--- a/README.md
+++ b/README.md
@@ -175,11 +175,11 @@ To submit your own implementation to 1BRC, follow these steps:
* Create a fork of the [onebrc](https://github.com/gunnarmorling/onebrc/) GitHub repository.
* Create a copy of _CalculateAverage.java_, named _CalculateAverage\_<your_GH_user>.java_, e.g. _CalculateAverage\_doloreswilson.java_.
* Make that implementation fast. Really fast.
-* Create a copy of _calculate_average_baseline.sh_, named _calculate\_average\_<your_GH_user>.sh_, e.g. _calculate\_average\_doloreswilson.sh_.
+* Create a copy of _calculate\_average\_baseline.sh_, named _calculate\_average\_<your_GH_user>.sh_, e.g. _calculate\_average\_doloreswilson.sh_.
* Adjust that script so that it references your implementation class name. If needed, provide any JVM arguments via the `JAVA_OPTS` variable in that script.
Make sure that script does not write anything to standard output other than calculation results.
-* OpenJDK 21 is the default. If a custom JDK build is required, include the SDKMAN command `sdk use java [version]` in the launch shell script prior to application start.
-* (Optional) If you'd like to use native binaries (GraalVM), adjust the _pom.xml_ file so that it builds that binary.
+* (Optional) OpenJDK 21 is used by default. If a custom JDK build is required, create a copy of _prepare\_baseline.sh_, named _prepare\_<your_GH_user>.sh_, e.g. _prepare\_doloreswilson.sh_. Include the SDKMAN command `sdk use java [version]` in the your prepare script.
+* (Optional) If you'd like to use native binaries (GraalVM), create a script named _additional\_build\_step\_<your_GH_user>.sh_, e.g. _additional\_build\_step\_doloreswilson.sh_ and add all the required build logic there
* Run the test suite by executing _/test.sh <your_GH_user>_; if any differences are reported, fix them before submitting your implementation.
* Create a pull request against the upstream repository, clearly stating
* The name of your implementation class.
diff --git a/additional_build_step_thomaswue.sh b/additional_build_steps_thomaswue.sh
index ab2f365..ab2f365 100755
--- a/additional_build_step_thomaswue.sh
+++ b/additional_build_steps_thomaswue.sh
diff --git a/calculate_average_Ujjwalbharti.sh b/calculate_average_Ujjwalbharti.sh
index 5576b5d..bba7d56 100755
--- a/calculate_average_Ujjwalbharti.sh
+++ b/calculate_average_Ujjwalbharti.sh
@@ -17,4 +17,4 @@
JAVA_OPTS=""
-time java $JAVA_OPTS --class-path target/average-1.0.0-SNAPSHOT.jar dev.morling.onebrc.CalculateAverage_Ujjwalbharti
+java $JAVA_OPTS --class-path target/average-1.0.0-SNAPSHOT.jar dev.morling.onebrc.CalculateAverage_Ujjwalbharti
diff --git a/calculate_average_abfrmblr.sh b/calculate_average_abfrmblr.sh
index e0362e8..7a9b83d 100755
--- a/calculate_average_abfrmblr.sh
+++ b/calculate_average_abfrmblr.sh
@@ -17,4 +17,4 @@
JAVA_OPTS="--enable-preview -Xms2g -Xmx2g"
-time java $JAVA_OPTS --class-path target/average-1.0.0-SNAPSHOT.jar dev.morling.onebrc.CalculateAverage_abfrmblr
+java $JAVA_OPTS --class-path target/average-1.0.0-SNAPSHOT.jar dev.morling.onebrc.CalculateAverage_abfrmblr
diff --git a/calculate_average_ags313.sh b/calculate_average_ags313.sh
index 3e07ce1..186524a 100755
--- a/calculate_average_ags313.sh
+++ b/calculate_average_ags313.sh
@@ -15,8 +15,5 @@
# limitations under the License.
#
-source "$HOME/.sdkman/bin/sdkman-init.sh"
-sdk use java 21.0.1-graal 1>&2
-
JAVA_OPTS="-server -Xnoclassgc -Xmx1G"
-time java $JAVA_OPTS --class-path target/average-1.0.0-SNAPSHOT.jar dev.morling.onebrc.CalculateAverage_ags313
+java $JAVA_OPTS --class-path target/average-1.0.0-SNAPSHOT.jar dev.morling.onebrc.CalculateAverage_ags313
diff --git a/calculate_average_anandmattikopp.sh b/calculate_average_anandmattikopp.sh
index 1c2d674..da09ee0 100755
--- a/calculate_average_anandmattikopp.sh
+++ b/calculate_average_anandmattikopp.sh
@@ -15,6 +15,5 @@
# limitations under the License.
#
-
JAVA_OPTS=""
-time java $JAVA_OPTS --class-path target/average-1.0.0-SNAPSHOT.jar dev.morling.onebrc.CalculateAverage_anandmattikopp
+java $JAVA_OPTS --class-path target/average-1.0.0-SNAPSHOT.jar dev.morling.onebrc.CalculateAverage_anandmattikopp
diff --git a/calculate_average_armandino.sh b/calculate_average_armandino.sh
index 766f88e..719953d 100755
--- a/calculate_average_armandino.sh
+++ b/calculate_average_armandino.sh
@@ -17,4 +17,4 @@
JAVA_OPTS=""
-time java $JAVA_OPTS --class-path target/average-1.0.0-SNAPSHOT.jar dev.morling.onebrc.CalculateAverage_armandino
+java $JAVA_OPTS --class-path target/average-1.0.0-SNAPSHOT.jar dev.morling.onebrc.CalculateAverage_armandino
diff --git a/calculate_average_artpar.sh b/calculate_average_artpar.sh
index e515943..56c9b25 100755
--- a/calculate_average_artpar.sh
+++ b/calculate_average_artpar.sh
@@ -17,4 +17,4 @@
JAVA_OPTS="--add-modules=jdk.incubator.vector"
-time java $JAVA_OPTS --class-path target/average-1.0.0-SNAPSHOT.jar dev.morling.onebrc.CalculateAverage_artpar
+java $JAVA_OPTS --class-path target/average-1.0.0-SNAPSHOT.jar dev.morling.onebrc.CalculateAverage_artpar
diff --git a/calculate_average_artsiomkorzun.sh b/calculate_average_artsiomkorzun.sh
index f965cda..805330e 100755
--- a/calculate_average_artsiomkorzun.sh
+++ b/calculate_average_artsiomkorzun.sh
@@ -15,8 +15,5 @@
# limitations under the License.
#
-
JAVA_OPTS="-XX:+UseParallelGC"
-source "$HOME/.sdkman/bin/sdkman-init.sh"
-sdk use java 21.0.1-graal 1>&2
-time java $JAVA_OPTS --class-path target/average-1.0.0-SNAPSHOT.jar dev.morling.onebrc.CalculateAverage_artsiomkorzun
+java $JAVA_OPTS --class-path target/average-1.0.0-SNAPSHOT.jar dev.morling.onebrc.CalculateAverage_artsiomkorzun
diff --git a/calculate_average_asun.sh b/calculate_average_asun.sh
index 8ed6f7e..f3f8502 100755
--- a/calculate_average_asun.sh
+++ b/calculate_average_asun.sh
@@ -15,9 +15,5 @@
# limitations under the License.
#
-# Uncomment below to use sdk
-# source "$HOME/.sdkman/bin/sdkman-init.sh"
-# sdk use java 21.0.1-graal 1>&2
-
JAVA_OPTS="--enable-preview --add-modules jdk.incubator.vector -XX:+UnlockExperimentalVMOptions -Xms500m -Xmx500m -XX:CompilationMode=high-only"
-time java $JAVA_OPTS --class-path target/average-1.0.0-SNAPSHOT.jar dev.morling.onebrc.CalculateAverage_asun
+java $JAVA_OPTS --class-path target/average-1.0.0-SNAPSHOT.jar dev.morling.onebrc.CalculateAverage_asun
diff --git a/calculate_average_baseline.sh b/calculate_average_baseline.sh
index 2428423..262bcfd 100755
--- a/calculate_average_baseline.sh
+++ b/calculate_average_baseline.sh
@@ -15,9 +15,5 @@
# limitations under the License.
#
-# Uncomment below to use sdk
-# source "$HOME/.sdkman/bin/sdkman-init.sh"
-# sdk use java 21.0.1-graal 1>&2
-
JAVA_OPTS=""
-time java $JAVA_OPTS --class-path target/average-1.0.0-SNAPSHOT.jar dev.morling.onebrc.CalculateAverage
+java $JAVA_OPTS --class-path target/average-1.0.0-SNAPSHOT.jar dev.morling.onebrc.CalculateAverage
diff --git a/calculate_average_bjhara.sh b/calculate_average_bjhara.sh
index 474ec22..b6bf733 100755
--- a/calculate_average_bjhara.sh
+++ b/calculate_average_bjhara.sh
@@ -17,4 +17,4 @@
JAVA_OPTS=""
-time java $JAVA_OPTS --class-path target/average-1.0.0-SNAPSHOT.jar dev.morling.onebrc.CalculateAverage_bjhara
+java $JAVA_OPTS --class-path target/average-1.0.0-SNAPSHOT.jar dev.morling.onebrc.CalculateAverage_bjhara
diff --git a/calculate_average_coolmineman.sh b/calculate_average_coolmineman.sh
index cabd0c4..3c820aa 100755
--- a/calculate_average_coolmineman.sh
+++ b/calculate_average_coolmineman.sh
@@ -15,16 +15,5 @@
# limitations under the License.
#
-# Uncomment below to use sdk
-# source "$HOME/.sdkman/bin/sdkman-init.sh"
-# sdk use java 21.0.1-graal 1>&2
-
-source "$HOME/.sdkman/bin/sdkman-init.sh"
-sdk use java 21.0.1-graal 1>&2
-if [ -f "target/calculate_average_coolmineman.jsa" ]; then
- JAVA_OPTS="-XX:SharedArchiveFile=target/calculate_average_coolmineman.jsa -Xshare:on"
-else
- # First run, create the archive:
- JAVA_OPTS="-XX:ArchiveClassesAtExit=target/calculate_average_coolmineman.jsa"
-fi
-time java $JAVA_OPTS --class-path target/average-1.0.0-SNAPSHOT.jar dev.morling.onebrc.CalculateAverage_coolmineman
+JAVA_OPTS=""
+java $JAVA_OPTS --class-path target/average-1.0.0-SNAPSHOT.jar dev.morling.onebrc.CalculateAverage_coolmineman
diff --git a/calculate_average_criccomini.sh b/calculate_average_criccomini.sh
index e610d83..4f267a1 100755
--- a/calculate_average_criccomini.sh
+++ b/calculate_average_criccomini.sh
@@ -18,4 +18,4 @@
#JAVA_OPTS="-XX:+UseZGC -server -Xms700m -Xlog:gc"
JAVA_OPTS="-XX:+UseZGC -Xms700m"
-time java $JAVA_OPTS --class-path target/average-1.0.0-SNAPSHOT.jar dev.morling.onebrc.CalculateAverage_criccomini
+java $JAVA_OPTS --class-path target/average-1.0.0-SNAPSHOT.jar dev.morling.onebrc.CalculateAverage_criccomini
diff --git a/calculate_average_davecom.sh b/calculate_average_davecom.sh
index 1231137..feb2aa4 100755
--- a/calculate_average_davecom.sh
+++ b/calculate_average_davecom.sh
@@ -17,4 +17,4 @@
JAVA_OPTS=""
-time java $JAVA_OPTS --class-path target/average-1.0.0-SNAPSHOT.jar dev.morling.onebrc.CalculateAverage_davecom
+java $JAVA_OPTS --class-path target/average-1.0.0-SNAPSHOT.jar dev.morling.onebrc.CalculateAverage_davecom
diff --git a/calculate_average_davery22.sh b/calculate_average_davery22.sh
index 5594513..61317cb 100755
--- a/calculate_average_davery22.sh
+++ b/calculate_average_davery22.sh
@@ -17,4 +17,4 @@
JAVA_OPTS=""
-time java $JAVA_OPTS --class-path target/average-1.0.0-SNAPSHOT.jar dev.morling.onebrc.CalculateAverage_davery22
+java $JAVA_OPTS --class-path target/average-1.0.0-SNAPSHOT.jar dev.morling.onebrc.CalculateAverage_davery22
diff --git a/calculate_average_ddimtirov.sh b/calculate_average_ddimtirov.sh
index f69b3f0..1f8be89 100755
--- a/calculate_average_ddimtirov.sh
+++ b/calculate_average_ddimtirov.sh
@@ -15,12 +15,8 @@
# limitations under the License.
#
-# also tried: 23.ea.3-open, 21.0.1-graalce, 21.0.1-graal, 21.0.1.crac-librca (tried CRaC API to see if it preserves JIT state)
-. "$HOME/.sdkman/bin/sdkman-init.sh"
-sdk use java 21.0.1-tem
-
# --enable-preview to use the new memory mapped segments
# We don't allocate much, so just give it 1G heap and turn off GC; the AlwaysPreTouch was suggested by the ergonomics
# Experimenting on the target VM config with various memory tweaks showed that UseTransparentHugePages gives us 10% boost
JAVA_OPTS="--enable-preview -da -dsa -Xms1g -Xmx1g -XX:+UnlockExperimentalVMOptions -XX:+UseEpsilonGC -XX:+AlwaysPreTouch -XX:+UseTransparentHugePages"
-time java $JAVA_OPTS --class-path target/average-1.0.0-SNAPSHOT.jar dev.morling.onebrc.CalculateAverage_ddimtirov
+java $JAVA_OPTS --class-path target/average-1.0.0-SNAPSHOT.jar dev.morling.onebrc.CalculateAverage_ddimtirov
diff --git a/calculate_average_deemkeen.sh b/calculate_average_deemkeen.sh
index 036f850..dd44a27 100755
--- a/calculate_average_deemkeen.sh
+++ b/calculate_average_deemkeen.sh
@@ -17,4 +17,4 @@
JAVA_OPTS="--enable-preview"
-time java $JAVA_OPTS --class-path target/average-1.0.0-SNAPSHOT.jar dev.morling.onebrc.CalculateAverage_deemkeen
+java $JAVA_OPTS --class-path target/average-1.0.0-SNAPSHOT.jar dev.morling.onebrc.CalculateAverage_deemkeen
diff --git a/calculate_average_ebarlas.sh b/calculate_average_ebarlas.sh
index f42591e..9c5c215 100755
--- a/calculate_average_ebarlas.sh
+++ b/calculate_average_ebarlas.sh
@@ -15,7 +15,5 @@
# limitations under the License.
#
-source "$HOME/.sdkman/bin/sdkman-init.sh"
-sdk use java 21.0.1-graal 1>&2
JAVA_OPTS=""
-time java $JAVA_OPTS --class-path target/average-1.0.0-SNAPSHOT.jar dev.morling.onebrc.CalculateAverage_ebarlas measurements.txt 8
+java $JAVA_OPTS --class-path target/average-1.0.0-SNAPSHOT.jar dev.morling.onebrc.CalculateAverage_ebarlas measurements.txt 8
diff --git a/calculate_average_entangled90.sh b/calculate_average_entangled90.sh
index f43c12d..b3e0b90 100755
--- a/calculate_average_entangled90.sh
+++ b/calculate_average_entangled90.sh
@@ -17,4 +17,4 @@
JAVA_OPTS=""
-time java $JAVA_OPTS --class-path target/average-1.0.0-SNAPSHOT.jar dev.morling.onebrc.CalculateAverage_entangled90
+java $JAVA_OPTS --class-path target/average-1.0.0-SNAPSHOT.jar dev.morling.onebrc.CalculateAverage_entangled90
diff --git a/calculate_average_fatroom.sh b/calculate_average_fatroom.sh
index 8ca4399..f599b66 100755
--- a/calculate_average_fatroom.sh
+++ b/calculate_average_fatroom.sh
@@ -17,5 +17,4 @@
JAVA_OPTS="-Xnoclassgc -Xms16G -Xmx16G"
-
-time java $JAVA_OPTS --class-path target/average-1.0.0-SNAPSHOT.jar dev.morling.onebrc.CalculateAverage_fatroom
+java $JAVA_OPTS --class-path target/average-1.0.0-SNAPSHOT.jar dev.morling.onebrc.CalculateAverage_fatroom
diff --git a/calculate_average_felix19350.sh b/calculate_average_felix19350.sh
index 5e98ce1..4007d75 100755
--- a/calculate_average_felix19350.sh
+++ b/calculate_average_felix19350.sh
@@ -17,4 +17,4 @@
JAVA_OPTS="--enable-preview -XX:+UseParallelGC -Xms4g -Xmx4g"
-time java $JAVA_OPTS --class-path target/average-1.0.0-SNAPSHOT.jar dev.morling.onebrc.CalculateAverage_felix19350
+java $JAVA_OPTS --class-path target/average-1.0.0-SNAPSHOT.jar dev.morling.onebrc.CalculateAverage_felix19350
diff --git a/calculate_average_filiphr.sh b/calculate_average_filiphr.sh
index 6f63449..6f9a84a 100755
--- a/calculate_average_filiphr.sh
+++ b/calculate_average_filiphr.sh
@@ -15,8 +15,5 @@
# limitations under the License.
#
-
-source "$HOME/.sdkman/bin/sdkman-init.sh"
-sdk use java 21.0.1-graal 1>&2
JAVA_OPTS=""
-time java $JAVA_OPTS --class-path target/average-1.0.0-SNAPSHOT.jar dev.morling.onebrc.CalculateAverage_filiphr
+java $JAVA_OPTS --class-path target/average-1.0.0-SNAPSHOT.jar dev.morling.onebrc.CalculateAverage_filiphr
diff --git a/calculate_average_flippingbits.sh b/calculate_average_flippingbits.sh
index 3fece95..b37baa0 100755
--- a/calculate_average_flippingbits.sh
+++ b/calculate_average_flippingbits.sh
@@ -15,7 +15,5 @@
# limitations under the License.
#
-source "$HOME/.sdkman/bin/sdkman-init.sh"
-sdk use java 21.0.1-graal 1>&2
JAVA_OPTS="--add-modules=jdk.incubator.vector"
-time java $JAVA_OPTS --class-path target/average-1.0.0-SNAPSHOT.jar dev.morling.onebrc.CalculateAverage_flippingbits
+java $JAVA_OPTS --class-path target/average-1.0.0-SNAPSHOT.jar dev.morling.onebrc.CalculateAverage_flippingbits
diff --git a/calculate_average_fragmede.sh b/calculate_average_fragmede.sh
index 2941490..4d5c47b 100755
--- a/calculate_average_fragmede.sh
+++ b/calculate_average_fragmede.sh
@@ -17,5 +17,5 @@
JAVA_OPTS="-Xmx16g"
-time java $JAVA_OPTS --class-path target/average-1.0.0-SNAPSHOT.jar dev.morling.onebrc.CalculateAverage_fragmede measurements.txt
+java $JAVA_OPTS --class-path target/average-1.0.0-SNAPSHOT.jar dev.morling.onebrc.CalculateAverage_fragmede measurements.txt
diff --git a/calculate_average_gabrielreid.sh b/calculate_average_gabrielreid.sh
index ea01dff..e1c7a63 100755
--- a/calculate_average_gabrielreid.sh
+++ b/calculate_average_gabrielreid.sh
@@ -17,4 +17,4 @@
JAVA_OPTS="--enable-preview --add-modules jdk.incubator.vector"
-time java $JAVA_OPTS --class-path target/average-1.0.0-SNAPSHOT.jar dev.morling.onebrc.CalculateAverage_gabrielreid
+java $JAVA_OPTS --class-path target/average-1.0.0-SNAPSHOT.jar dev.morling.onebrc.CalculateAverage_gabrielreid
diff --git a/calculate_average_hchiorean.sh b/calculate_average_hchiorean.sh
index bbde839..d2ba62b 100755
--- a/calculate_average_hchiorean.sh
+++ b/calculate_average_hchiorean.sh
@@ -16,4 +16,4 @@
#
JAVA_OPTS="-Xms1000M -Xmx16G"
-time java $JAVA_OPTS --class-path target/average-1.0.0-SNAPSHOT.jar dev.morling.onebrc.CalculateAverage_hchiorean
+java $JAVA_OPTS --class-path target/average-1.0.0-SNAPSHOT.jar dev.morling.onebrc.CalculateAverage_hchiorean
diff --git a/calculate_average_imrafaelmerino.sh b/calculate_average_imrafaelmerino.sh
index db88d62..162a308 100755
--- a/calculate_average_imrafaelmerino.sh
+++ b/calculate_average_imrafaelmerino.sh
@@ -15,10 +15,7 @@
# limitations under the License.
#
-source "$HOME/.sdkman/bin/sdkman-init.sh"
-sdk use java 21.0.1-graal 1>&2
-java -version
JAVA_OPTS=""
CHUNK_SIZE=$((8 * 1024 * 1024))
-time java $JAVA_OPTS --class-path target/average-1.0.0-SNAPSHOT.jar \
+java $JAVA_OPTS --class-path target/average-1.0.0-SNAPSHOT.jar \
dev.morling.onebrc.CalculateAverage_imrafaelmerino $CHUNK_SIZE
diff --git a/calculate_average_isolgpus.sh b/calculate_average_isolgpus.sh
index 9d48e59..19606ab 100755
--- a/calculate_average_isolgpus.sh
+++ b/calculate_average_isolgpus.sh
@@ -17,4 +17,4 @@
JAVA_OPTS="--enable-preview"
-time java $JAVA_OPTS --class-path target/average-1.0.0-SNAPSHOT.jar dev.morling.onebrc.CalculateAverage_isolgpus
+java $JAVA_OPTS --class-path target/average-1.0.0-SNAPSHOT.jar dev.morling.onebrc.CalculateAverage_isolgpus
diff --git a/calculate_average_itaske.sh b/calculate_average_itaske.sh
index 80afdf7..59099d3 100755
--- a/calculate_average_itaske.sh
+++ b/calculate_average_itaske.sh
@@ -17,4 +17,4 @@
JAVA_OPTS=""
-time java $JAVA_OPTS --class-path target/average-1.0.0-SNAPSHOT.jar dev.morling.onebrc.CalculateAverage_itaske
+java $JAVA_OPTS --class-path target/average-1.0.0-SNAPSHOT.jar dev.morling.onebrc.CalculateAverage_itaske
diff --git a/calculate_average_iziamos.sh b/calculate_average_iziamos.sh
index 8ae253d..9b18b1d 100755
--- a/calculate_average_iziamos.sh
+++ b/calculate_average_iziamos.sh
@@ -17,4 +17,4 @@
JAVA_OPTS="--enable-preview"
-time java $JAVA_OPTS --class-path target/average-1.0.0-SNAPSHOT.jar dev.morling.onebrc.CalculateAverage_iziamos
+java $JAVA_OPTS --class-path target/average-1.0.0-SNAPSHOT.jar dev.morling.onebrc.CalculateAverage_iziamos
diff --git a/calculate_average_jgrateron.sh b/calculate_average_jgrateron.sh
index 44dfb12..3d7e24d 100755
--- a/calculate_average_jgrateron.sh
+++ b/calculate_average_jgrateron.sh
@@ -17,4 +17,4 @@
JAVA_OPTS=""
-time java $JAVA_OPTS --class-path target/average-1.0.0-SNAPSHOT.jar dev.morling.onebrc.CalculateAverage_jgrateron
+java $JAVA_OPTS --class-path target/average-1.0.0-SNAPSHOT.jar dev.morling.onebrc.CalculateAverage_jgrateron
diff --git a/calculate_average_jotschi.sh b/calculate_average_jotschi.sh
index 6b16963..e32e52a 100755
--- a/calculate_average_jotschi.sh
+++ b/calculate_average_jotschi.sh
@@ -17,5 +17,5 @@
JAVA_OPTS="--enable-preview"
-time java $JAVA_OPTS --class-path target/average-1.0.0-SNAPSHOT.jar dev.morling.onebrc.CalculateAverage_jotschi
+java $JAVA_OPTS --class-path target/average-1.0.0-SNAPSHOT.jar dev.morling.onebrc.CalculateAverage_jotschi
diff --git a/calculate_average_kevinmcmurtrie.sh b/calculate_average_kevinmcmurtrie.sh
index 417bf14..33a8490 100755
--- a/calculate_average_kevinmcmurtrie.sh
+++ b/calculate_average_kevinmcmurtrie.sh
@@ -15,9 +15,5 @@
# limitations under the License.
#
-# Uncomment below to use sdk
-# source "$HOME/.sdkman/bin/sdkman-init.sh"
-# sdk use java 21.0.1-graal 1>&2
-
JAVA_OPTS=""
-time java $JAVA_OPTS --class-path target/average-1.0.0-SNAPSHOT.jar dev.morling.onebrc.CalculateAverage_kevinmcmurtrie $1
+java $JAVA_OPTS --class-path target/average-1.0.0-SNAPSHOT.jar dev.morling.onebrc.CalculateAverage_kevinmcmurtrie $1
diff --git a/calculate_average_kgeri.sh b/calculate_average_kgeri.sh
index a89bce9..39f0bd4 100755
--- a/calculate_average_kgeri.sh
+++ b/calculate_average_kgeri.sh
@@ -17,4 +17,4 @@
JAVA_OPTS="--enable-preview"
-time java $JAVA_OPTS -Xmx99M --class-path target/average-1.0.0-SNAPSHOT.jar dev.morling.onebrc.CalculateAverage_kgeri
+java $JAVA_OPTS -Xmx99M --class-path target/average-1.0.0-SNAPSHOT.jar dev.morling.onebrc.CalculateAverage_kgeri
diff --git a/calculate_average_khmarbaise.sh b/calculate_average_khmarbaise.sh
index 16c5980..5cf2d04 100755
--- a/calculate_average_khmarbaise.sh
+++ b/calculate_average_khmarbaise.sh
@@ -16,4 +16,4 @@
#
JAVA_OPTS="-Duser.language=en-US"
-time java $JAVA_OPTS --class-path target/average-1.0.0-SNAPSHOT.jar dev.morling.onebrc.CalculateAverage_khmarbaise
+java $JAVA_OPTS --class-path target/average-1.0.0-SNAPSHOT.jar dev.morling.onebrc.CalculateAverage_khmarbaise
diff --git a/calculate_average_kuduwa-keshavram.sh b/calculate_average_kuduwa-keshavram.sh
index 369deeb..904c8db 100755
--- a/calculate_average_kuduwa-keshavram.sh
+++ b/calculate_average_kuduwa-keshavram.sh
@@ -17,4 +17,4 @@
JAVA_OPTS=""
-time java $JAVA_OPTS --class-path target/average-1.0.0-SNAPSHOT.jar dev.morling.onebrc.CalculateAverage_kuduwa_keshavram
+java $JAVA_OPTS --class-path target/average-1.0.0-SNAPSHOT.jar dev.morling.onebrc.CalculateAverage_kuduwa_keshavram
diff --git a/calculate_average_lawrey.sh b/calculate_average_lawrey.sh
index a13a862..bf5bc47 100755
--- a/calculate_average_lawrey.sh
+++ b/calculate_average_lawrey.sh
@@ -17,4 +17,4 @@
JAVA_OPTS=""
-time java $JAVA_OPTS -Xmx99m --class-path target/average-1.0.0-SNAPSHOT.jar dev.morling.onebrc.CalculateAverage_lawrey
+java $JAVA_OPTS -Xmx99m --class-path target/average-1.0.0-SNAPSHOT.jar dev.morling.onebrc.CalculateAverage_lawrey
diff --git a/calculate_average_merykitty.sh b/calculate_average_merykitty.sh
index 7cee051..1e944da 100755
--- a/calculate_average_merykitty.sh
+++ b/calculate_average_merykitty.sh
@@ -17,4 +17,4 @@
JAVA_OPTS="--enable-preview --add-modules=jdk.incubator.vector" # -XX:+UnlockDiagnosticVMOptions -XX:PrintAssemblyOptions=intel -XX:CompileCommand=print,*.CalculateAverage_merykitty::iterate"
-time java $JAVA_OPTS --class-path target/average-1.0.0-SNAPSHOT.jar dev.morling.onebrc.CalculateAverage_merykitty
+java $JAVA_OPTS --class-path target/average-1.0.0-SNAPSHOT.jar dev.morling.onebrc.CalculateAverage_merykitty
diff --git a/calculate_average_moysesb.sh b/calculate_average_moysesb.sh
index 53a6832..61ebcf1 100755
--- a/calculate_average_moysesb.sh
+++ b/calculate_average_moysesb.sh
@@ -17,4 +17,4 @@
JAVA_OPTS="-XX:+UseZGC --enable-preview"
-time java $JAVA_OPTS --class-path target/average-1.0.0-SNAPSHOT.jar dev.morling.onebrc.CalculateAverage_moysesb
+java $JAVA_OPTS --class-path target/average-1.0.0-SNAPSHOT.jar dev.morling.onebrc.CalculateAverage_moysesb
diff --git a/calculate_average_mudit-saxena.sh b/calculate_average_mudit-saxena.sh
index 5b37180..3f9f48a 100755
--- a/calculate_average_mudit-saxena.sh
+++ b/calculate_average_mudit-saxena.sh
@@ -16,4 +16,4 @@
#
JAVA_OPTS=""
-time java $JAVA_OPTS --enable-preview --class-path target/average-1.0.0-SNAPSHOT.jar dev.morling.onebrc.CalculateAverage_muditsaxena -Xmx16384m
+java $JAVA_OPTS --enable-preview --class-path target/average-1.0.0-SNAPSHOT.jar dev.morling.onebrc.CalculateAverage_muditsaxena -Xmx16384m
diff --git a/calculate_average_nstng.sh b/calculate_average_nstng.sh
index fccca03..31c9a08 100755
--- a/calculate_average_nstng.sh
+++ b/calculate_average_nstng.sh
@@ -16,4 +16,4 @@
#
JAVA_OPTS="-Xmx16G"
-time java $JAVA_OPTS --class-path target/average-1.0.0-SNAPSHOT.jar dev.morling.onebrc.CalculateAverage_nstng
+java $JAVA_OPTS --class-path target/average-1.0.0-SNAPSHOT.jar dev.morling.onebrc.CalculateAverage_nstng
diff --git a/calculate_average_obourgain.sh b/calculate_average_obourgain.sh
index 67c91b3..f3a23db 100755
--- a/calculate_average_obourgain.sh
+++ b/calculate_average_obourgain.sh
@@ -28,4 +28,4 @@ JAVA_OPTS="$JAVA_OPTS -XX:InlineSmallCode=10000"
# seems to be a bit faster
JAVA_OPTS="$JAVA_OPTS -XX:-TieredCompilation -XX:CICompilerCount=2 -XX:CompileThreshold=1000"
-time java $JAVA_OPTS --class-path target/average-1.0.0-SNAPSHOT.jar dev.morling.onebrc.CalculateAverage_obourgain
+java $JAVA_OPTS --class-path target/average-1.0.0-SNAPSHOT.jar dev.morling.onebrc.CalculateAverage_obourgain
diff --git a/calculate_average_padreati.sh b/calculate_average_padreati.sh
index c35e7a5..45a8fc4 100755
--- a/calculate_average_padreati.sh
+++ b/calculate_average_padreati.sh
@@ -17,4 +17,4 @@
JAVA_OPTS="--enable-preview --add-modules jdk.incubator.vector"
-time java $JAVA_OPTS --class-path target/average-1.0.0-SNAPSHOT.jar dev.morling.onebrc.CalculateAverage_padreati
+java $JAVA_OPTS --class-path target/average-1.0.0-SNAPSHOT.jar dev.morling.onebrc.CalculateAverage_padreati
diff --git a/calculate_average_palmr.sh b/calculate_average_palmr.sh
index 3b0991f..329be82 100755
--- a/calculate_average_palmr.sh
+++ b/calculate_average_palmr.sh
@@ -17,4 +17,4 @@
JAVA_OPTS="--enable-preview"
-time java $JAVA_OPTS --class-path target/average-1.0.0-SNAPSHOT.jar dev.morling.onebrc.CalculateAverage_palmr
+java $JAVA_OPTS --class-path target/average-1.0.0-SNAPSHOT.jar dev.morling.onebrc.CalculateAverage_palmr
diff --git a/calculate_average_rby.sh b/calculate_average_rby.sh
index f52d1a9..8cf44d4 100755
--- a/calculate_average_rby.sh
+++ b/calculate_average_rby.sh
@@ -17,4 +17,4 @@
JAVA_OPTS=""
-time java $JAVA_OPTS --class-path target/average-1.0.0-SNAPSHOT.jar dev.morling.onebrc.CalculateAverage_rby
+java $JAVA_OPTS --class-path target/average-1.0.0-SNAPSHOT.jar dev.morling.onebrc.CalculateAverage_rby
diff --git a/calculate_average_richardstartin.sh b/calculate_average_richardstartin.sh
index 1f2eaec..482dd42 100755
--- a/calculate_average_richardstartin.sh
+++ b/calculate_average_richardstartin.sh
@@ -17,4 +17,4 @@
JAVA_OPTS=""
-time java $JAVA_OPTS --class-path target/average-1.0.0-SNAPSHOT.jar dev.morling.onebrc.CalculateAverage_richardstartin
+java $JAVA_OPTS --class-path target/average-1.0.0-SNAPSHOT.jar dev.morling.onebrc.CalculateAverage_richardstartin
diff --git a/calculate_average_royvanrijn.sh b/calculate_average_royvanrijn.sh
index fd962cf..2a24bfa 100755
--- a/calculate_average_royvanrijn.sh
+++ b/calculate_average_royvanrijn.sh
@@ -15,8 +15,5 @@
# limitations under the License.
#
-source "$HOME/.sdkman/bin/sdkman-init.sh"
-sdk use java 21.0.1-graal 1>&2
-
JAVA_OPTS="--enable-preview"
-time java $JAVA_OPTS --class-path target/average-1.0.0-SNAPSHOT.jar dev.morling.onebrc.CalculateAverage_royvanrijn
+java $JAVA_OPTS --class-path target/average-1.0.0-SNAPSHOT.jar dev.morling.onebrc.CalculateAverage_royvanrijn
diff --git a/calculate_average_santanu.sh b/calculate_average_santanu.sh
index 2d2e46f..6fb3370 100755
--- a/calculate_average_santanu.sh
+++ b/calculate_average_santanu.sh
@@ -17,4 +17,4 @@
JAVA_OPTS=""
-time java $JAVA_OPTS --class-path target/average-1.0.0-SNAPSHOT.jar dev.morling.onebrc.CalculateAverage_santanu
+java $JAVA_OPTS --class-path target/average-1.0.0-SNAPSHOT.jar dev.morling.onebrc.CalculateAverage_santanu
diff --git a/calculate_average_seijikun.sh b/calculate_average_seijikun.sh
index 5469b61..abea606 100755
--- a/calculate_average_seijikun.sh
+++ b/calculate_average_seijikun.sh
@@ -16,6 +16,4 @@
#
JAVA_OPTS="-XX:+UseParallelGC --enable-preview --add-modules jdk.incubator.vector"
-source "$HOME/.sdkman/bin/sdkman-init.sh"
-sdk use java 21.0.1-graal 1>&2
-time java $JAVA_OPTS --class-path target/average-1.0.0-SNAPSHOT.jar dev.morling.onebrc.CalculateAverage_seijikun
+java $JAVA_OPTS --class-path target/average-1.0.0-SNAPSHOT.jar dev.morling.onebrc.CalculateAverage_seijikun
diff --git a/calculate_average_semotpan.sh b/calculate_average_semotpan.sh
index ef7cdf1..5b97510 100755
--- a/calculate_average_semotpan.sh
+++ b/calculate_average_semotpan.sh
@@ -17,4 +17,4 @@
JAVA_OPTS=""
-time java $JAVA_OPTS --class-path target/average-1.0.0-SNAPSHOT.jar dev.morling.onebrc.CalculateAverage_semotpan
+java $JAVA_OPTS --class-path target/average-1.0.0-SNAPSHOT.jar dev.morling.onebrc.CalculateAverage_semotpan
diff --git a/calculate_average_spullara.sh b/calculate_average_spullara.sh
index 328c01c..abeb734 100755
--- a/calculate_average_spullara.sh
+++ b/calculate_average_spullara.sh
@@ -17,7 +17,5 @@
JAVA_OPTS=""
-source "$HOME/.sdkman/bin/sdkman-init.sh"
-sdk use java 21.0.1-graal 1>&2
-time java $JAVA_OPTS --class-path target/average-1.0.0-SNAPSHOT.jar dev.morling.onebrc.CalculateAverage_spullara
+java $JAVA_OPTS --class-path target/average-1.0.0-SNAPSHOT.jar dev.morling.onebrc.CalculateAverage_spullara
diff --git a/calculate_average_thomaswue.sh b/calculate_average_thomaswue.sh
index d875f8a..87a4fc4 100755
--- a/calculate_average_thomaswue.sh
+++ b/calculate_average_thomaswue.sh
@@ -18,12 +18,10 @@
if [ -f ./image_calculateaverage_thomaswue ]; then
echo "Picking up existing native image, delete the file to select JVM mode." 1>&2
- time ./image_calculateaverage_thomaswue
+ ./image_calculateaverage_thomaswue
else
- source "$HOME/.sdkman/bin/sdkman-init.sh"
- sdk use java 21.0.1-graal 1>&2
JAVA_OPTS="--enable-preview"
echo "Chosing to run the app in JVM mode as no native image was found, use additional_build_step_thomaswue.sh to generate." 1>&2
- time java $JAVA_OPTS --class-path target/average-1.0.0-SNAPSHOT.jar dev.morling.onebrc.CalculateAverage_thomaswue
+ java $JAVA_OPTS --class-path target/average-1.0.0-SNAPSHOT.jar dev.morling.onebrc.CalculateAverage_thomaswue
fi
diff --git a/calculate_average_truelive.sh b/calculate_average_truelive.sh
index 100319c..36efa9a 100755
--- a/calculate_average_truelive.sh
+++ b/calculate_average_truelive.sh
@@ -15,8 +15,5 @@
# limitations under the License.
#
-source "$HOME/.sdkman/bin/sdkman-init.sh"
-sdk use java 21.0.1-graalce 1>&2
-
JAVA_OPTS="-Xmx8G -Xms2G"
-time java $JAVA_OPTS --class-path target/average-1.0.0-SNAPSHOT.jar dev.morling.onebrc.CalculateAverage_truelive
+java $JAVA_OPTS --class-path target/average-1.0.0-SNAPSHOT.jar dev.morling.onebrc.CalculateAverage_truelive
diff --git a/calculate_average_twobiers.sh b/calculate_average_twobiers.sh
index 2249dca..8f5ceb1 100755
--- a/calculate_average_twobiers.sh
+++ b/calculate_average_twobiers.sh
@@ -15,7 +15,6 @@
# limitations under the License.
#
-source "$HOME/.sdkman/bin/sdkman-init.sh"
-sdk use java 21.0.1-tem 1>&2
+
JAVA_OPTS="-XX:+UseShenandoahGC -XX:+UseStringDeduplication -XX:+UseTransparentHugePages -da"
-time java $JAVA_OPTS --class-path target/average-1.0.0-SNAPSHOT.jar dev.morling.onebrc.CalculateAverage_twobiers
+java $JAVA_OPTS --class-path target/average-1.0.0-SNAPSHOT.jar dev.morling.onebrc.CalculateAverage_twobiers
diff --git a/calculate_average_yavuztas.sh b/calculate_average_yavuztas.sh
index 8c351c2..773e1de 100755
--- a/calculate_average_yavuztas.sh
+++ b/calculate_average_yavuztas.sh
@@ -15,8 +15,5 @@
# limitations under the License.
#
-source "$HOME/.sdkman/bin/sdkman-init.sh"
-sdk use java 21.0.1-graal 1>&2
-
JAVA_OPTS="-Xms1g -Xmx1g"
-time java $JAVA_OPTS --class-path target/average-1.0.0-SNAPSHOT.jar dev.morling.onebrc.CalculateAverage_yavuztas
+java $JAVA_OPTS --class-path target/average-1.0.0-SNAPSHOT.jar dev.morling.onebrc.CalculateAverage_yavuztas
diff --git a/calculate_average_yehwankim23.sh b/calculate_average_yehwankim23.sh
index ede9557..aec9e31 100755
--- a/calculate_average_yehwankim23.sh
+++ b/calculate_average_yehwankim23.sh
@@ -17,4 +17,4 @@
JAVA_OPTS=""
-time java $JAVA_OPTS --class-path target/average-1.0.0-SNAPSHOT.jar dev.morling.onebrc.CalculateAverage_yehwankim23
+java $JAVA_OPTS --class-path target/average-1.0.0-SNAPSHOT.jar dev.morling.onebrc.CalculateAverage_yehwankim23
diff --git a/calculate_average_yemreinci.sh b/calculate_average_yemreinci.sh
index 83af875..f65d7a3 100755
--- a/calculate_average_yemreinci.sh
+++ b/calculate_average_yemreinci.sh
@@ -17,4 +17,4 @@
JAVA_OPTS=""
-time java $JAVA_OPTS --class-path target/average-1.0.0-SNAPSHOT.jar dev.morling.onebrc.CalculateAverage_yemreinci
+java $JAVA_OPTS --class-path target/average-1.0.0-SNAPSHOT.jar dev.morling.onebrc.CalculateAverage_yemreinci
diff --git a/prepare_ags313.sh b/prepare_ags313.sh
new file mode 100755
index 0000000..a705f17
--- /dev/null
+++ b/prepare_ags313.sh
@@ -0,0 +1,19 @@
+#!/bin/sh
+#
+# Copyright 2023 The original authors
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
+
+source "$HOME/.sdkman/bin/sdkman-init.sh"
+sdk use java 21.0.1-graal 1>&2
diff --git a/prepare_artsiomkorzun.sh b/prepare_artsiomkorzun.sh
new file mode 100755
index 0000000..a705f17
--- /dev/null
+++ b/prepare_artsiomkorzun.sh
@@ -0,0 +1,19 @@
+#!/bin/sh
+#
+# Copyright 2023 The original authors
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
+
+source "$HOME/.sdkman/bin/sdkman-init.sh"
+sdk use java 21.0.1-graal 1>&2
diff --git a/prepare_baseline.sh b/prepare_baseline.sh
new file mode 100755
index 0000000..9d6bae9
--- /dev/null
+++ b/prepare_baseline.sh
@@ -0,0 +1,20 @@
+#!/bin/sh
+#
+# Copyright 2023 The original authors
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
+
+# Uncomment below to use sdk
+# source "$HOME/.sdkman/bin/sdkman-init.sh"
+# sdk use java 21.0.1-graal 1>&2
diff --git a/prepare_coolmineman.sh b/prepare_coolmineman.sh
new file mode 100755
index 0000000..a705f17
--- /dev/null
+++ b/prepare_coolmineman.sh
@@ -0,0 +1,19 @@
+#!/bin/sh
+#
+# Copyright 2023 The original authors
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
+
+source "$HOME/.sdkman/bin/sdkman-init.sh"
+sdk use java 21.0.1-graal 1>&2
diff --git a/prepare_ddimtirov.sh b/prepare_ddimtirov.sh
new file mode 100755
index 0000000..c9dd41f
--- /dev/null
+++ b/prepare_ddimtirov.sh
@@ -0,0 +1,20 @@
+#!/bin/bash
+#
+# Copyright 2023 The original authors
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
+
+# also tried: 23.ea.3-open, 21.0.1-graalce, 21.0.1-graal, 21.0.1.crac-librca (tried CRaC API to see if it preserves JIT state)
+. "$HOME/.sdkman/bin/sdkman-init.sh"
+sdk use java 21.0.1-tem
diff --git a/prepare_ebarlas.sh b/prepare_ebarlas.sh
new file mode 100755
index 0000000..a705f17
--- /dev/null
+++ b/prepare_ebarlas.sh
@@ -0,0 +1,19 @@
+#!/bin/sh
+#
+# Copyright 2023 The original authors
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
+
+source "$HOME/.sdkman/bin/sdkman-init.sh"
+sdk use java 21.0.1-graal 1>&2
diff --git a/prepare_filiphr.sh b/prepare_filiphr.sh
new file mode 100755
index 0000000..6b1f7b7
--- /dev/null
+++ b/prepare_filiphr.sh
@@ -0,0 +1,20 @@
+#!/bin/sh
+#
+# Copyright 2023 The original authors
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
+
+
+source "$HOME/.sdkman/bin/sdkman-init.sh"
+sdk use java 21.0.1-graal 1>&2
diff --git a/prepare_flippingbits.sh b/prepare_flippingbits.sh
new file mode 100755
index 0000000..a705f17
--- /dev/null
+++ b/prepare_flippingbits.sh
@@ -0,0 +1,19 @@
+#!/bin/sh
+#
+# Copyright 2023 The original authors
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
+
+source "$HOME/.sdkman/bin/sdkman-init.sh"
+sdk use java 21.0.1-graal 1>&2
diff --git a/prepare_imrafaelmerino.sh b/prepare_imrafaelmerino.sh
new file mode 100755
index 0000000..a705f17
--- /dev/null
+++ b/prepare_imrafaelmerino.sh
@@ -0,0 +1,19 @@
+#!/bin/sh
+#
+# Copyright 2023 The original authors
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
+
+source "$HOME/.sdkman/bin/sdkman-init.sh"
+sdk use java 21.0.1-graal 1>&2
diff --git a/prepare_royvanrijn.sh b/prepare_royvanrijn.sh
new file mode 100755
index 0000000..a705f17
--- /dev/null
+++ b/prepare_royvanrijn.sh
@@ -0,0 +1,19 @@
+#!/bin/sh
+#
+# Copyright 2023 The original authors
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
+
+source "$HOME/.sdkman/bin/sdkman-init.sh"
+sdk use java 21.0.1-graal 1>&2
diff --git a/prepare_seijikun.sh b/prepare_seijikun.sh
new file mode 100755
index 0000000..a705f17
--- /dev/null
+++ b/prepare_seijikun.sh
@@ -0,0 +1,19 @@
+#!/bin/sh
+#
+# Copyright 2023 The original authors
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
+
+source "$HOME/.sdkman/bin/sdkman-init.sh"
+sdk use java 21.0.1-graal 1>&2
diff --git a/prepare_spullara.sh b/prepare_spullara.sh
new file mode 100755
index 0000000..a705f17
--- /dev/null
+++ b/prepare_spullara.sh
@@ -0,0 +1,19 @@
+#!/bin/sh
+#
+# Copyright 2023 The original authors
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
+
+source "$HOME/.sdkman/bin/sdkman-init.sh"
+sdk use java 21.0.1-graal 1>&2
diff --git a/prepare_thomaswue.sh b/prepare_thomaswue.sh
new file mode 100755
index 0000000..a705f17
--- /dev/null
+++ b/prepare_thomaswue.sh
@@ -0,0 +1,19 @@
+#!/bin/sh
+#
+# Copyright 2023 The original authors
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
+
+source "$HOME/.sdkman/bin/sdkman-init.sh"
+sdk use java 21.0.1-graal 1>&2
diff --git a/prepare_truelive.sh b/prepare_truelive.sh
new file mode 100755
index 0000000..c09d181
--- /dev/null
+++ b/prepare_truelive.sh
@@ -0,0 +1,19 @@
+#!/bin/sh
+#
+# Copyright 2023 The original authors
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
+
+source "$HOME/.sdkman/bin/sdkman-init.sh"
+sdk use java 21.0.1-graalce 1>&2
diff --git a/prepare_twobiers.sh b/prepare_twobiers.sh
new file mode 100755
index 0000000..0a11360
--- /dev/null
+++ b/prepare_twobiers.sh
@@ -0,0 +1,19 @@
+#!/bin/sh
+#
+# Copyright 2023 The original authors
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
+
+source "$HOME/.sdkman/bin/sdkman-init.sh"
+sdk use java 21.0.1-tem 1>&2
diff --git a/prepare_yavuztas.sh b/prepare_yavuztas.sh
new file mode 100755
index 0000000..a705f17
--- /dev/null
+++ b/prepare_yavuztas.sh
@@ -0,0 +1,19 @@
+#!/bin/sh
+#
+# Copyright 2023 The original authors
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
+
+source "$HOME/.sdkman/bin/sdkman-init.sh"
+sdk use java 21.0.1-graal 1>&2