From cfd23336e5daf3e2ab42d615e6e1eaf9d9a1453c Mon Sep 17 00:00:00 2001 From: Shaowei Song Date: Sat, 14 Sep 2024 06:17:06 +0000 Subject: [PATCH] Make the benchmark comparison with Linux on ext2 fairer --- test/benchmark/bench_linux_and_aster.sh | 14 +++++++++++--- test/benchmark/common/bench_runner.sh | 1 - 2 files changed, 11 insertions(+), 4 deletions(-) diff --git a/test/benchmark/bench_linux_and_aster.sh b/test/benchmark/bench_linux_and_aster.sh index 613c7901..886e40df 100755 --- a/test/benchmark/bench_linux_and_aster.sh +++ b/test/benchmark/bench_linux_and_aster.sh @@ -44,6 +44,13 @@ prepare_libs() { fi } +# Prepare fs for Linux +prepare_fs() { + # Disable unsupported ext2 features of Asterinas on Linux to ensure fairness + mke2fs -F -O ^ext_attr -O ^resize_inode -O ^dir_index ${BENCHMARK_DIR}/../build/ext2.img + make initramfs +} + # Parse the results from the benchmark output parse_results() { local benchmark="$1" @@ -86,6 +93,10 @@ run_benchmark() { prepare_libs local asterinas_cmd="make run BENCHMARK=${benchmark} ENABLE_KVM=1 RELEASE_LTO=1 2>&1 | tee ${aster_output}" + echo "Running benchmark ${benchmark} on Asterinas..." + eval "$asterinas_cmd" + + prepare_fs local linux_cmd="/usr/local/qemu/bin/qemu-system-x86_64 \ --no-reboot \ -smp 1 \ @@ -100,9 +111,6 @@ run_benchmark() { -append 'console=ttyS0 rdinit=/benchmark/common/bench_runner.sh ${benchmark} linux mitigations=off hugepages=0 transparent_hugepage=never' \ -nographic \ 2>&1 | tee ${linux_output}" - - echo "Running benchmark ${benchmark} on Asterinas..." - eval "$asterinas_cmd" echo "Running benchmark ${benchmark} on Linux..." eval "$linux_cmd" diff --git a/test/benchmark/common/bench_runner.sh b/test/benchmark/common/bench_runner.sh index cb912fbd..d98ba01e 100755 --- a/test/benchmark/common/bench_runner.sh +++ b/test/benchmark/common/bench_runner.sh @@ -45,7 +45,6 @@ prepare_system() { mount -t devtmpfs devtmpfs /dev ip link set lo up modprobe virtio_blk - mkfs.ext2 -F /dev/vda mount -t ext2 /dev/vda /ext2 elif [ "$SYSTEM" = "asterinas" ]; then # Asterinas-specific preparation (if any)