From 521c3e7db528f491f3c6489888b4cdf41017bc49 Mon Sep 17 00:00:00 2001 From: Reiner Jung <reiner.jung@email.uni-kiel.de> Date: Wed, 3 Aug 2022 11:10:10 +0200 Subject: [PATCH] Fixed benchmark. --- .gitignore | 3 ++- benchmark/build.gradle | 27 +++---------------- frameworks/Kieker/benchmark.sh | 5 ++-- frameworks/Kieker/config.rc | 3 ++- frameworks/Kieker/functions.sh | 14 +++++----- .../Kieker/{src/META-INF => }/kieker.aop.xml | 0 frameworks/common-functions.sh | 6 +++-- 7 files changed, 22 insertions(+), 36 deletions(-) rename frameworks/Kieker/{src/META-INF => }/kieker.aop.xml (100%) diff --git a/.gitignore b/.gitignore index fa3c4b8..8f8dcd9 100644 --- a/.gitignore +++ b/.gitignore @@ -1,7 +1,8 @@ # Ignore Gradle project-specific cache directory **/.gradle/** - +/receiver +/benchmark .classpath .settings **/.classpath diff --git a/benchmark/build.gradle b/benchmark/build.gradle index b4d09c8..8f1b6e7 100644 --- a/benchmark/build.gradle +++ b/benchmark/build.gradle @@ -7,6 +7,10 @@ dependencies { implementation 'com.beust:jcommander:1.72' } +application { + mainClass = 'moobench.benchmark.BenchmarkMain' +} + jar { manifest { attributes 'Implementation-Title': 'Moobench Benchmark', @@ -19,27 +23,4 @@ jar { from { configurations.runtimeClasspath.findAll { it.name.endsWith('jar') }.collect { zipTree(it) } } - - doLast { - copy { - from jar - into "../frameworks/SPASSmeter/" - rename('benchmark.jar', 'MooBench.jar') - } - copy { - from jar - into "../frameworks/OpenTelemetry/" - rename('benchmark.jar', 'MooBench.jar') - } - copy { - from jar - into "../frameworks/inspectIT/" - rename('benchmark.jar', 'MooBench.jar') - } - copy { - from jar - into "../frameworks/Kieker/" - rename('benchmark.jar', 'MooBench.jar') - } - } } diff --git a/frameworks/Kieker/benchmark.sh b/frameworks/Kieker/benchmark.sh index e96e510..b705076 100755 --- a/frameworks/Kieker/benchmark.sh +++ b/frameworks/Kieker/benchmark.sh @@ -91,8 +91,9 @@ checkFile Labels "${BASE_DIR}/labels.sh" checkFile R-script "${RSCRIPT_PATH}" checkDirectory results-directory "${RESULTS_DIR}" recreate checkFile log "${DATA_DIR}/kieker.log" clean -checkFile MooBench "${BASE_DIR}/MooBench.jar" checkExecutable java "${JAVA_BIN}" +checkExecutable moobench "${MOOBENCH_BIN}" +checkFile aop-file "${AOP}" TIME=`expr ${METHOD_TIME} \* ${TOTAL_NUM_OF_CALLS} / 1000000000 \* 4 \* ${RECURSION_DEPTH} \* ${NUM_OF_LOOPS} + ${SLEEP_TIME} \* 4 \* ${NUM_OF_LOOPS} \* ${RECURSION_DEPTH} + 50 \* ${TOTAL_NUM_OF_CALLS} / 1000000000 \* 4 \* ${RECURSION_DEPTH} \* ${NUM_OF_LOOPS} ` info "Experiment will take circa ${TIME} seconds." @@ -101,7 +102,7 @@ info "Experiment will take circa ${TIME} seconds." JAVA_ARGS="-server" JAVA_ARGS="${JAVA_ARGS} -Xms1G -Xmx2G" -LTW_ARGS="-javaagent:${AGENT} -Dorg.aspectj.weaver.showWeaveInfo=true -Daj.weaving.verbose=true -Dkieker.monitoring.skipDefaultAOPConfiguration=true -Dorg.aspectj.weaver.loadtime.configuration=${AOP}" +LTW_ARGS="-javaagent:${AGENT} --illegal-access=permit -Dorg.aspectj.weaver.showWeaveInfo=true -Daj.weaving.verbose=true -Dkieker.monitoring.skipDefaultAOPConfiguration=true -Dorg.aspectj.weaver.loadtime.configuration=file://${AOP}" KIEKER_ARGS="-Dlog4j.configuration=log4j.cfg -Dkieker.monitoring.name=KIEKER-BENCHMARK -Dkieker.monitoring.adaptiveMonitoring.enabled=false -Dkieker.monitoring.periodicSensorsExecutorPoolSize=0" diff --git a/frameworks/Kieker/config.rc b/frameworks/Kieker/config.rc index 1febf6c..ae71c4b 100644 --- a/frameworks/Kieker/config.rc +++ b/frameworks/Kieker/config.rc @@ -5,11 +5,12 @@ JAVA_BIN="/usr/bin/java" RSCRIPT_PATH="${BASE_DIR}/stats.csv.r" +MOOBENCH_BIN="${BASE_DIR}/../../benchmark/bin/benchmark" DATA_DIR="${BASE_DIR}/data" AGENT="${BASE_DIR}/kieker-2.0.0-SNAPSHOT-aspectj.jar" # in-jar locations -AOP="file:"$(pwd)"/src/META-INF/kieker.aop.xml" +AOP="${BASE_DIR}/kieker.aop.xml" # end diff --git a/frameworks/Kieker/functions.sh b/frameworks/Kieker/functions.sh index b514bf2..89aacc0 100644 --- a/frameworks/Kieker/functions.sh +++ b/frameworks/Kieker/functions.sh @@ -40,21 +40,21 @@ function executeExperiment() { info " # recursion=${recursion} loop=${loop} writer=${index} ${title}" echo " # ${loop}.${recursion}.${index} ${title}" >> "${DATA_DIR}/kieker.log" - if [ "${kieker_parameters}" = "" ] ; then - BENCHMARK_OPTS="${JAVA_ARGS}" + if [ "${kieker_parameters}" == "" ] ; then + export BENCHMARK_OPTS="${JAVA_ARGS}" else - BENCHMARK_OPTS="${JAVA_ARGS} ${LTW_ARGS} ${KIEKER_ARGS} ${kieker_parameters}" + export BENCHMARK_OPTS="${JAVA_ARGS} ${LTW_ARGS} ${KIEKER_ARGS} ${kieker_parameters}" fi - debug "Run options: ${BENCHMARK_OPTS} -jar MooBench.jar" + debug "Run options: ${BENCHMARK_OPTS}" - "${JAVA_BIN}" ${BENCHMARK_OPTS} -jar "${BASE_DIR}/MooBench.jar" \ + "${MOOBENCH_BIN}" \ --application moobench.application.MonitoredClassSimple \ --output-filename "${RAWFN}-${loop}-${recursion}-${index}.csv" \ --total-calls "${TOTAL_NUM_OF_CALLS}" \ --method-time "${METHOD_TIME}" \ --total-threads 1 \ - --recursion-depth "${recursion}" #&> "${RESULTS_DIR}/output_${loop}_${RECURSION_DEPTH}_${index}.txt" + --recursion-depth "${recursion}" &> "${RESULTS_DIR}/output_${loop}_${RECURSION_DEPTH}_${index}.txt" rm -rf "${DATA_DIR}"/kieker-* @@ -71,7 +71,7 @@ function executeBenchmarkBody() { recursion="$3" if [[ "${RECEIVER[$index]}" ]] ; then echo "receiver ${RECEIVER[$index]}" - ${RECEIVER[$index]} >> "${DATA_DIR}/kieker.receiver-${i}-${index}.log" & + ${RECEIVER[$index]} >> "${DATA_DIR}/kieker.receiver-${loop}-${index}.log" & RECEIVER_PID=$! echo "PID $RECEIVER_PID" fi diff --git a/frameworks/Kieker/src/META-INF/kieker.aop.xml b/frameworks/Kieker/kieker.aop.xml similarity index 100% rename from frameworks/Kieker/src/META-INF/kieker.aop.xml rename to frameworks/Kieker/kieker.aop.xml diff --git a/frameworks/common-functions.sh b/frameworks/common-functions.sh index 05c5080..d0bf2e1 100755 --- a/frameworks/common-functions.sh +++ b/frameworks/common-functions.sh @@ -125,10 +125,12 @@ if [ "$BATCH_MODE" == "yes" ] ; then export ERROR="[error]" export WARNING="[warning]" export INFO="[info]" + export DEBUG_INFO="[debug]" else export ERROR="${RED}[error]${NC}" export WARNING="${YELLOW}[warning]${NC}" export INFO="${WHITE}[info]${NC}" + export DEBUG_INFO="${WHITE}[debug]${NC}" fi function error() { @@ -144,8 +146,8 @@ function info() { } function debug() { - if [ "$DEBUG" == "yes" ] ; then - echo -e "${INFO} $@" + if [ "${DEBUG}" == "yes" ] ; then + echo -e "${DEBUG_INFO} $@" fi } -- GitLab