#!/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. # # Basics JAVA_OPTS="" JAVA_OPTS="$JAVA_OPTS --enable-preview" JAVA_OPTS="$JAVA_OPTS --add-exports java.base/jdk.internal.ref=ALL-UNNAMED" JAVA_OPTS="$JAVA_OPTS --add-opens java.base/java.nio=ALL-UNNAMED" #JAVA_OPTS="$JAVA_OPTS --add-modules jdk.incubator.vector" #JAVA_OPTS="$JAVA_OPTS -XX:+UnlockDiagnosticVMOptions" # JIT parameters #JAVA_OPTS="$JAVA_OPTS -Xlog:class+load=info" #JAVA_OPTS="$JAVA_OPTS -XX:+LogCompilation" JAVA_OPTS="$JAVA_OPTS -XX:+AlwaysCompileLoopMethods" #JAVA_OPTS="$JAVA_OPTS -XX:TieredStopAtLevel=1" #JAVA_OPTS="$JAVA_OPTS -XX:TieredStopAtLevel=1" #JAVA_OPTS="$JAVA_OPTS -XX:CompileCommand=inline,*State.processLine()" #JAVA_OPTS="$JAVA_OPTS -XX:+PrintAssembly" #JAVA_OPTS="$JAVA_OPTS -XX:LogFile=../hotspot.log" #JAVA_OPTS="$JAVA_OPTS -XX:+DebugNonSafepoints" #JAVA_OPTS="$JAVA_OPTS -XX:C1MaxInlineSize=150" #JAVA_OPTS="$JAVA_OPTS -XX:C1InlineStackLimit=40" #JAVA_OPTS="$JAVA_OPTS -XX:FreqInlineSize=500" #JAVA_OPTS="$JAVA_OPTS -XX:+PrintCompilation" #JAVA_OPTS="$JAVA_OPTS -XX:+PrintInlining" #JAVA_OPTS="$JAVA_OPTS -XX:CompileThreshold=20 " #JAVA_OPTS="$JAVA_OPTS -Xlog:async" # GC parameters JAVA_OPTS="$JAVA_OPTS -XX:+UseParallelGC" #JAVA_OPTS="$JAVA_OPTS -Xlog:gc*=debug:file=/tmp/gc.log" #JAVA_OPTS="$JAVA_OPTS -XX:+UseEpsilonGC -Xlog:all=off" #JAVA_OPTS="$JAVA_OPTS -XX:+PrintGC -XX:+PrintGCDetails" java $JAVA_OPTS --class-path target/average-1.0.0-SNAPSHOT.jar dev.morling.onebrc.CalculateAverage_vemana "$@"