@@ -9,23 +9,23 @@ green_echo() {
99}
1010
1111brown_echo () {
12- echo -e " \033[33m $1 \033[0m" > /dev/tty
12+ echo -e " \033[33m-- $1 \033[0m" > /dev/tty
1313}
1414
1515black_echo () {
16- echo -e " \033[30m $1 \033[0m" > /dev/tty
16+ echo -e " \033[30m-- $1 \033[0m" > /dev/tty
1717}
1818
1919red_echo () {
20- echo -e " \033[31mError : $1 \033[0m" > /dev/tty
20+ echo -e " \033[31m-- Error : $1 \033[0m" > /dev/tty
2121}
2222
2323# Set up workspace variables
2424green_echo " Setting up workspace variables..."
2525WORKSPACE=$( pwd)
2626REPO_URL=" https://github.com/cwida/ALP.git"
2727CLONED_DIR=" $WORKSPACE /ALP"
28- BRANCH=" repro "
28+ BRANCH=" elf "
2929
3030# Clone or update the repository
3131green_echo " Cloning or updating repository..."
5757green_echo " Navigating to target directory..."
5858cd " $CLONED_DIR "
5959
60+ # Check if Java is installed
61+ java_version=$( java -version 2>&1 | awk -F ' "' ' /version/ {print $2}' )
62+ brown_echo " Detected Java version: $java_version "
63+
64+ if [[ " $java_version " == 1.8* || " $java_version " == 8* ]]; then
65+ green_echo " Java 8 is installed and set as the default version."
66+ else
67+ red_echo " Error: Java 8 is not installed or not set as the default version."
68+ exit 1
69+ fi
70+
71+ # Check if Maven is installed
72+ if command -v mvn > /dev/null 2>&1 ; then
73+ maven_version=$( mvn -v | awk ' /Apache Maven/ {print $3}' )
74+ java_version_in_maven=$( mvn -v | awk -F ' "' ' /Java version/ {print $2}' )
75+
76+ green_echo " Maven is installed. Detected Maven version: $maven_version "
77+ brown_echo " Maven is using Java version: $java_version_in_maven "
78+ else
79+ red_echo " Error: Maven is not installed."
80+ exit 1
81+ fi
82+
83+ green_echo " Running ELF benchmarks..."
84+ mvn -f " $CLONED_DIR /publication/source_code/extern/elf/pom.xml" clean
85+ mvn -f " $CLONED_DIR /publication/source_code/extern/elf/pom.xml" test
86+
6087# Create build directory
6188green_echo " Creating build directory..."
6289mkdir -p " $CLONED_DIR /build"
@@ -103,11 +130,6 @@ if [ $? -ne 0 ]; then
103130 exit 1
104131fi
105132
106- # ELF
107- green_echo " Running ELF benchmarks..."
108- mvn -f " $CLONED_DIR /publication/source_code/extern/elf/pom.xml" clean
109- mvn -f " $CLONED_DIR /publication/source_code/extern/elf/pom.xml" test
110-
111133green_echo " Running compression ratio benchmarks..."
112134" $CLONED_DIR /build/publication/source_code/bench_compression_ratio/publication_bench_alp_compression_ratio"
113135" $CLONED_DIR /build/publication/source_code/bench_compression_ratio/publication_bench_alp32_compression_ratio"
@@ -129,33 +151,33 @@ if [ "$ARCH" == "arm64" ]; then
129151 " $CLONED_DIR /build/publication/source_code/generated/arm64v8/neon_intrinsic_uf1/arm64v8_neon_intrinsic_1024_uf1_falp_bench"
130152else
131153
132- # 4xLarge benchmarks
133- green_echo " Running I4I_4XLarge speed benchmarks..."
134- " $CLONED_DIR /build/publication/source_code/generated/x86_64/avx512bw_intrinsic_uf1/x86_64_avx512bw_intrinsic_1024_uf1_falp_bench"
135- " $CLONED_DIR /build/publication/source_code/generated/x86_64/avx512bw_intrinsic_uf1/x86_64_avx512bw_intrinsic_1024_uf1_falp_bench_bw"
136- " $CLONED_DIR /build/publication/source_code/generated/x86_64/avx512bw_intrinsic_uf1/x86_64_avx2_intrinsic_1024_uf1_falp_bench"
137- " $CLONED_DIR /build/publication/source_code/generated/x86_64/avx512bw_intrinsic_uf1/fallback_scalar_aav_1024_uf1_falp_bench"
138- " $CLONED_DIR /build/publication/source_code/generated/x86_64/avx512bw_intrinsic_uf1/fallback_scalar_nav_1024_uf1_falp_bench"
139- " $CLONED_DIR /build/publication/source_code/bench_speed/publication_bench_alp_cutter_decode"
140- " $CLONED_DIR /build/publication/source_code/bench_speed/publication_bench_alp_cutter_encode"
141- " $CLONED_DIR /build/publication/source_code/bench_speed/publication_bench_alp_encode"
142- " $CLONED_DIR /build/publication/source_code/bench_speed/publication_bench_alp_without_sampling"
143- " $CLONED_DIR /build/publication/source_code/bench_speed/publication_bench_chimp"
144- " $CLONED_DIR /build/publication/source_code/bench_speed/publication_bench_chimp128"
145- " $CLONED_DIR /build/publication/source_code/bench_speed/publication_bench_gorillas"
146- " $CLONED_DIR /build/publication/source_code/bench_speed/publication_bench_patas"
147- " $CLONED_DIR /build/publication/source_code/bench_speed/publication_bench_zstd"
148-
149- # End-to-end benchmark
150- SCRIPT_DIR=$( dirname " $( realpath " $0 " ) " )
151- OUTPUT_FILE=" $SCRIPT_DIR /publication/end_to_end_bench/result"
152- HEADER=" dataset,repetition,warmup_repetition,scheme,thread_n,query,time(s),result(tpc),corrected_result(tpc),validity,compression_cycles,cycles"
153- green_echo " Running end-to-end benchmark and saving results to $OUTPUT_FILE ..."
154- export CLONED_DIR=" $CLONED_DIR "
155- bash " $CLONED_DIR /publication/script/run_end_to_end.sh" > " $OUTPUT_FILE " 2>&1
156- # Ensure the header line is at the start of the file
157- echo -e " $HEADER \n$( cat " $OUTPUT_FILE " ) " > " $OUTPUT_FILE "
158- green_echo " Benchmark completed. Results are saved in $OUTPUT_FILE ."
154+ # 4xLarge benchmarks
155+ green_echo " Running I4I_4XLarge speed benchmarks..."
156+ " $CLONED_DIR /build/publication/source_code/generated/x86_64/avx512bw_intrinsic_uf1/x86_64_avx512bw_intrinsic_1024_uf1_falp_bench"
157+ " $CLONED_DIR /build/publication/source_code/generated/x86_64/avx512bw_intrinsic_uf1/x86_64_avx512bw_intrinsic_1024_uf1_falp_bench_bw"
158+ " $CLONED_DIR /build/publication/source_code/generated/x86_64/avx512bw_intrinsic_uf1/x86_64_avx2_intrinsic_1024_uf1_falp_bench"
159+ " $CLONED_DIR /build/publication/source_code/generated/x86_64/avx512bw_intrinsic_uf1/fallback_scalar_aav_1024_uf1_falp_bench"
160+ " $CLONED_DIR /build/publication/source_code/generated/x86_64/avx512bw_intrinsic_uf1/fallback_scalar_nav_1024_uf1_falp_bench"
161+ " $CLONED_DIR /build/publication/source_code/bench_speed/publication_bench_alp_cutter_decode"
162+ " $CLONED_DIR /build/publication/source_code/bench_speed/publication_bench_alp_cutter_encode"
163+ " $CLONED_DIR /build/publication/source_code/bench_speed/publication_bench_alp_encode"
164+ " $CLONED_DIR /build/publication/source_code/bench_speed/publication_bench_alp_without_sampling"
165+ " $CLONED_DIR /build/publication/source_code/bench_speed/publication_bench_chimp"
166+ " $CLONED_DIR /build/publication/source_code/bench_speed/publication_bench_chimp128"
167+ " $CLONED_DIR /build/publication/source_code/bench_speed/publication_bench_gorillas"
168+ " $CLONED_DIR /build/publication/source_code/bench_speed/publication_bench_patas"
169+ " $CLONED_DIR /build/publication/source_code/bench_speed/publication_bench_zstd"
170+
171+ # End-to-end benchmark
172+ SCRIPT_DIR=$( dirname " $( realpath " $0 " ) " )
173+ OUTPUT_FILE=" $SCRIPT_DIR /publication/end_to_end_bench/result"
174+ HEADER=" dataset,repetition,warmup_repetition,scheme,thread_n,query,time(s),result(tpc),corrected_result(tpc),validity,compression_cycles,cycles"
175+ green_echo " Running end-to-end benchmark and saving results to $OUTPUT_FILE ..."
176+ export CLONED_DIR=" $CLONED_DIR "
177+ bash " $CLONED_DIR /publication/script/run_end_to_end.sh" > " $OUTPUT_FILE " 2>&1
178+ # Ensure the header line is at the start of the file
179+ echo -e " $HEADER \n$( cat " $OUTPUT_FILE " ) " > " $OUTPUT_FILE "
180+ green_echo " Benchmark completed. Results are saved in $OUTPUT_FILE ."
159181
160182 # Clone and build the BENCH_PDE repository
161183 green_echo " Cloning the BENCH_PDE repository..."
0 commit comments