From 32bfa767039493467c1ffdfee283f203a03677b5 Mon Sep 17 00:00:00 2001 From: Fabing Li Date: Fri, 13 Sep 2024 17:35:52 +0800 Subject: [PATCH] Reorganize the structure of benchmarks --- Makefile | 2 +- test/Makefile | 13 +- test/benchmark/README.md | 28 ++-- test/benchmark/bench_linux_and_aster.sh | 127 +++++++++--------- test/benchmark/common/bench_runner.sh | 77 +++++++++++ test/benchmark/common/runner.sh | 45 ------- .../ext2_copy_files_bw}/config.json | 5 +- .../ext2_copy_files_bw}/result_template.json | 4 +- .../ext2_copy_files_bw}/run.sh | 0 .../fifo_lat}/config.json | 5 +- .../fifo_lat}/result_template.json | 4 +- .../fifo_lat}/run.sh | 0 .../mem_copy_bw}/config.json | 3 +- .../mem_copy_bw}/result_template.json | 4 +- .../mem_copy_bw}/run.sh | 0 .../mem_mmap_bw}/config.json | 5 +- .../mem_mmap_bw}/result_template.json | 4 +- .../mem_mmap_bw}/run.sh | 0 .../mem_mmap_lat}/config.json | 5 +- .../mem_mmap_lat}/result_template.json | 4 +- .../mem_mmap_lat}/run.sh | 0 .../mem_pagefault_lat}/config.json | 5 +- .../mem_pagefault_lat}/result_template.json | 4 +- .../mem_pagefault_lat}/run.sh | 0 .../mem_read_bw}/config.json | 5 +- .../mem_read_bw}/result_template.json | 4 +- .../mem_read_bw}/run.sh | 0 .../mem_write_bw}/config.json | 5 +- .../mem_write_bw}/result_template.json | 4 +- .../mem_write_bw}/run.sh | 0 .../pipe_bw}/config.json | 5 +- .../pipe_bw}/result_template.json | 4 +- .../pipe_bw}/run.sh | 0 .../pipe_lat}/config.json | 5 +- .../pipe_lat}/result_template.json | 4 +- .../pipe_lat}/run.sh | 0 .../process_ctx_lat}/config.json | 5 +- .../process_ctx_lat}/result_template.json | 4 +- .../process_ctx_lat}/run.sh | 0 .../process_exec_lat}/config.json | 5 +- .../process_exec_lat}/result_template.json | 4 +- .../process_exec_lat}/run.sh | 0 .../process_fork_lat}/config.json | 5 +- .../process_fork_lat}/result_template.json | 4 +- .../process_fork_lat}/run.sh | 0 .../process_getppid_lat}/config.json | 5 +- .../process_getppid_lat}/result_template.json | 4 +- .../process_getppid_lat}/run.sh | 0 .../process_shell_lat}/config.json | 5 +- .../process_shell_lat}/result_template.json | 4 +- .../process_shell_lat}/run.sh | 0 .../config.json | 5 +- .../result_template.json | 4 +- .../ramfs_create_delete_files_0k_ops}/run.sh | 0 .../config.json | 5 +- .../result_template.json | 4 +- .../ramfs_create_delete_files_10k_ops}/run.sh | 0 .../semaphore_lat}/config.json | 5 +- .../semaphore_lat}/result_template.json | 4 +- .../semaphore_lat}/run.sh | 0 .../signal_catch_lat}/config.json | 5 +- .../signal_catch_lat}/result_template.json | 4 +- .../signal_catch_lat}/run.sh | 0 .../signal_install_lat}/config.json | 5 +- .../signal_install_lat}/result_template.json | 4 +- .../signal_install_lat}/run.sh | 0 .../signal_prot_lat}/config.json | 5 +- .../signal_prot_lat}/result_template.json | 4 +- .../signal_prot_lat}/run.sh | 0 .../tcp_loopback_bw}/config.json | 5 +- .../tcp_loopback_bw}/result_template.json | 4 +- .../tcp_loopback_bw}/run.sh | 0 .../tcp_loopback_connect_lat}/config.json | 5 +- .../result_template.json | 4 +- .../tcp_loopback_connect_lat}/run.sh | 0 .../tcp_loopback_http_bw}/config.json | 5 +- .../result_template.json | 4 +- .../tcp_loopback_http_bw}/run.sh | 0 .../tcp_loopback_lat}/config.json | 5 +- .../tcp_loopback_lat}/result_template.json | 4 +- .../tcp_loopback_lat}/run.sh | 0 .../tcp_loopback_select_lat}/config.json | 5 +- .../result_template.json | 4 +- .../tcp_loopback_select_lat}/run.sh | 0 .../udp_loopback_lat}/config.json | 5 +- .../udp_loopback_lat}/result_template.json | 4 +- .../udp_loopback_lat}/run.sh | 0 .../unix_bw}/config.json | 3 +- .../unix_bw}/result_template.json | 4 +- .../unix_bw}/run.sh | 0 .../unix_connect_lat}/config.json | 3 +- .../unix_connect_lat}/result_template.json | 4 +- .../unix_connect_lat}/run.sh | 0 .../unix_lat}/config.json | 3 +- .../unix_lat}/result_template.json | 4 +- .../unix_lat}/run.sh | 0 .../vfs_fcntl_lat}/config.json | 5 +- .../vfs_fcntl_lat}/result_template.json | 4 +- .../vfs_fcntl_lat}/run.sh | 0 .../vfs_fstat_lat}/config.json | 5 +- .../vfs_fstat_lat}/result_template.json | 4 +- .../vfs_fstat_lat}/run.sh | 0 .../vfs_open_lat}/config.json | 5 +- .../vfs_open_lat}/result_template.json | 4 +- .../vfs_open_lat}/run.sh | 0 .../vfs_read_lat}/config.json | 5 +- .../vfs_read_lat}/result_template.json | 4 +- .../vfs_read_lat}/run.sh | 0 .../vfs_read_pagecache_bw}/config.json | 5 +- .../result_template.json | 4 +- .../vfs_read_pagecache_bw}/run.sh | 0 .../vfs_select_lat}/config.json | 5 +- .../vfs_select_lat}/result_template.json | 4 +- .../vfs_select_lat}/run.sh | 0 .../vfs_stat_lat}/config.json | 5 +- .../vfs_stat_lat}/result_template.json | 4 +- .../vfs_stat_lat}/run.sh | 0 .../vfs_write_lat}/config.json | 5 +- .../vfs_write_lat}/result_template.json | 4 +- .../vfs_write_lat}/run.sh | 0 .../cpu_lat}/config.json | 5 +- .../cpu_lat}/result_template.json | 4 +- .../{sysbench-cpu => sysbench/cpu_lat}/run.sh | 0 .../thread_lat}/config.json | 5 +- .../thread_lat}/result_template.json | 4 +- .../thread_lat}/run.sh | 0 126 files changed, 362 insertions(+), 282 deletions(-) create mode 100755 test/benchmark/common/bench_runner.sh delete mode 100755 test/benchmark/common/runner.sh rename test/benchmark/{lmbench-lmdd => lmbench/ext2_copy_files_bw}/config.json (59%) rename test/benchmark/{lmbench-lmdd => lmbench/ext2_copy_files_bw}/result_template.json (78%) rename test/benchmark/{lmbench-lmdd => lmbench/ext2_copy_files_bw}/run.sh (100%) rename test/benchmark/{lmbench-fifo-latency => lmbench/fifo_lat}/config.json (62%) rename test/benchmark/{lmbench-fifo-latency => lmbench/fifo_lat}/result_template.json (77%) rename test/benchmark/{lmbench-fifo-latency => lmbench/fifo_lat}/run.sh (100%) rename test/benchmark/{lmbench-file-rd-bandwidth => lmbench/mem_copy_bw}/config.json (59%) rename test/benchmark/{lmbench-mem-fcp => lmbench/mem_copy_bw}/result_template.json (78%) rename test/benchmark/{lmbench-mem-fcp => lmbench/mem_copy_bw}/run.sh (100%) rename test/benchmark/{lmbench-mmap-bandwidth => lmbench/mem_mmap_bw}/config.json (63%) rename test/benchmark/{lmbench-mmap-bandwidth => lmbench/mem_mmap_bw}/result_template.json (77%) rename test/benchmark/{lmbench-mmap-bandwidth => lmbench/mem_mmap_bw}/run.sh (100%) rename test/benchmark/{lmbench-mmap-latency => lmbench/mem_mmap_lat}/config.json (63%) rename test/benchmark/{lmbench-mmap-latency => lmbench/mem_mmap_lat}/result_template.json (77%) rename test/benchmark/{lmbench-mmap-latency => lmbench/mem_mmap_lat}/run.sh (100%) rename test/benchmark/{lmbench-pagefault => lmbench/mem_pagefault_lat}/config.json (60%) rename test/benchmark/{lmbench-pagefault => lmbench/mem_pagefault_lat}/result_template.json (78%) rename test/benchmark/{lmbench-pagefault => lmbench/mem_pagefault_lat}/run.sh (100%) rename test/benchmark/{lmbench-mem-frd => lmbench/mem_read_bw}/config.json (58%) rename test/benchmark/{lmbench-mem-frd => lmbench/mem_read_bw}/result_template.json (78%) rename test/benchmark/{lmbench-mem-frd => lmbench/mem_read_bw}/run.sh (100%) rename test/benchmark/{lmbench-mem-fcp => lmbench/mem_write_bw}/config.json (50%) rename test/benchmark/{lmbench-mem-fwr => lmbench/mem_write_bw}/result_template.json (78%) rename test/benchmark/{lmbench-mem-fwr => lmbench/mem_write_bw}/run.sh (100%) rename test/benchmark/{lmbench-pipe-bandwidth => lmbench/pipe_bw}/config.json (67%) rename test/benchmark/{lmbench-pipe-bandwidth => lmbench/pipe_bw}/result_template.json (77%) rename test/benchmark/{lmbench-pipe-bandwidth => lmbench/pipe_bw}/run.sh (100%) rename test/benchmark/{lmbench-pipe-latency => lmbench/pipe_lat}/config.json (62%) rename test/benchmark/{lmbench-pipe-latency => lmbench/pipe_lat}/result_template.json (77%) rename test/benchmark/{lmbench-pipe-latency => lmbench/pipe_lat}/run.sh (100%) rename test/benchmark/{lmbench-ctx => lmbench/process_ctx_lat}/config.json (56%) rename test/benchmark/{lmbench-ctx => lmbench/process_ctx_lat}/result_template.json (78%) rename test/benchmark/{lmbench-ctx => lmbench/process_ctx_lat}/run.sh (100%) rename test/benchmark/{lmbench-exec => lmbench/process_exec_lat}/config.json (61%) rename test/benchmark/{lmbench-exec => lmbench/process_exec_lat}/result_template.json (77%) rename test/benchmark/{lmbench-exec => lmbench/process_exec_lat}/run.sh (100%) rename test/benchmark/{lmbench-fork => lmbench/process_fork_lat}/config.json (62%) rename test/benchmark/{lmbench-fork => lmbench/process_fork_lat}/result_template.json (77%) rename test/benchmark/{lmbench-fork => lmbench/process_fork_lat}/run.sh (100%) rename test/benchmark/{lmbench-getpid => lmbench/process_getppid_lat}/config.json (62%) rename test/benchmark/{lmbench-getpid => lmbench/process_getppid_lat}/result_template.json (77%) rename test/benchmark/{lmbench-getpid => lmbench/process_getppid_lat}/run.sh (100%) rename test/benchmark/{lmbench-shell => lmbench/process_shell_lat}/config.json (60%) rename test/benchmark/{lmbench-shell => lmbench/process_shell_lat}/result_template.json (77%) rename test/benchmark/{lmbench-shell => lmbench/process_shell_lat}/run.sh (100%) rename test/benchmark/{lmbench-fs-create-delete-files-0k => lmbench/ramfs_create_delete_files_0k_ops}/config.json (54%) rename test/benchmark/{lmbench-fs-create-delete-files-0k => lmbench/ramfs_create_delete_files_0k_ops}/result_template.json (79%) rename test/benchmark/{lmbench-fs-create-delete-files-0k => lmbench/ramfs_create_delete_files_0k_ops}/run.sh (100%) rename test/benchmark/{lmbench-fs-create-delete-files-10k => lmbench/ramfs_create_delete_files_10k_ops}/config.json (54%) rename test/benchmark/{lmbench-fs-create-delete-files-10k => lmbench/ramfs_create_delete_files_10k_ops}/result_template.json (79%) rename test/benchmark/{lmbench-fs-create-delete-files-10k => lmbench/ramfs_create_delete_files_10k_ops}/run.sh (100%) rename test/benchmark/{lmbench-semaphore => lmbench/semaphore_lat}/config.json (65%) rename test/benchmark/{lmbench-semaphore => lmbench/semaphore_lat}/result_template.json (77%) rename test/benchmark/{lmbench-semaphore => lmbench/semaphore_lat}/run.sh (100%) rename test/benchmark/{lmbench-signal => lmbench/signal_catch_lat}/config.json (62%) rename test/benchmark/{lmbench-signal => lmbench/signal_catch_lat}/result_template.json (78%) rename test/benchmark/{lmbench-signal => lmbench/signal_catch_lat}/run.sh (100%) rename test/benchmark/{lmbench-signal-install => lmbench/signal_install_lat}/config.json (59%) rename test/benchmark/{lmbench-signal-install => lmbench/signal_install_lat}/result_template.json (79%) rename test/benchmark/{lmbench-signal-install => lmbench/signal_install_lat}/run.sh (100%) rename test/benchmark/{lmbench-signal-prot => lmbench/signal_prot_lat}/config.json (60%) rename test/benchmark/{lmbench-signal-prot => lmbench/signal_prot_lat}/result_template.json (78%) rename test/benchmark/{lmbench-signal-prot => lmbench/signal_prot_lat}/run.sh (100%) rename test/benchmark/{lmbench-tcp-bandwidth-localhost => lmbench/tcp_loopback_bw}/config.json (60%) rename test/benchmark/{lmbench-tcp-bandwidth-localhost => lmbench/tcp_loopback_bw}/result_template.json (77%) rename test/benchmark/{lmbench-tcp-bandwidth-localhost => lmbench/tcp_loopback_bw}/run.sh (100%) rename test/benchmark/{lmbench-tcp-connect-latency => lmbench/tcp_loopback_connect_lat}/config.json (65%) rename test/benchmark/{lmbench-tcp-connect-latency => lmbench/tcp_loopback_connect_lat}/result_template.json (78%) rename test/benchmark/{lmbench-tcp-connect-latency => lmbench/tcp_loopback_connect_lat}/run.sh (100%) rename test/benchmark/{lmbench-http-bandwidth => lmbench/tcp_loopback_http_bw}/config.json (62%) rename test/benchmark/{lmbench-http-bandwidth => lmbench/tcp_loopback_http_bw}/result_template.json (80%) rename test/benchmark/{lmbench-http-bandwidth => lmbench/tcp_loopback_http_bw}/run.sh (100%) rename test/benchmark/{lmbench-tcp-latency-localhost => lmbench/tcp_loopback_lat}/config.json (64%) rename test/benchmark/{lmbench-tcp-latency-localhost => lmbench/tcp_loopback_lat}/result_template.json (76%) rename test/benchmark/{lmbench-tcp-latency-localhost => lmbench/tcp_loopback_lat}/run.sh (100%) rename test/benchmark/{lmbench-select-tcp => lmbench/tcp_loopback_select_lat}/config.json (63%) rename test/benchmark/{lmbench-select-tcp => lmbench/tcp_loopback_select_lat}/result_template.json (78%) rename test/benchmark/{lmbench-select-tcp => lmbench/tcp_loopback_select_lat}/run.sh (100%) rename test/benchmark/{lmbench-udp-latency-localhost => lmbench/udp_loopback_lat}/config.json (64%) rename test/benchmark/{lmbench-udp-latency-localhost => lmbench/udp_loopback_lat}/result_template.json (76%) rename test/benchmark/{lmbench-udp-latency-localhost => lmbench/udp_loopback_lat}/run.sh (100%) rename test/benchmark/{lmbench-unix-bandwidth => lmbench/unix_bw}/config.json (61%) rename test/benchmark/{lmbench-unix-bandwidth => lmbench/unix_bw}/result_template.json (77%) rename test/benchmark/{lmbench-unix-bandwidth => lmbench/unix_bw}/run.sh (100%) rename test/benchmark/{lmbench-unix-connect-latency => lmbench/unix_connect_lat}/config.json (62%) rename test/benchmark/{lmbench-unix-connect-latency => lmbench/unix_connect_lat}/result_template.json (78%) rename test/benchmark/{lmbench-unix-connect-latency => lmbench/unix_connect_lat}/run.sh (100%) rename test/benchmark/{lmbench-unix-latency => lmbench/unix_lat}/config.json (61%) rename test/benchmark/{lmbench-unix-latency => lmbench/unix_lat}/result_template.json (77%) rename test/benchmark/{lmbench-unix-latency => lmbench/unix_lat}/run.sh (100%) rename test/benchmark/{lmbench-fcntl => lmbench/vfs_fcntl_lat}/config.json (59%) rename test/benchmark/{lmbench-fcntl => lmbench/vfs_fcntl_lat}/result_template.json (78%) rename test/benchmark/{lmbench-fcntl => lmbench/vfs_fcntl_lat}/run.sh (100%) rename test/benchmark/{lmbench-fstat => lmbench/vfs_fstat_lat}/config.json (62%) rename test/benchmark/{lmbench-fstat => lmbench/vfs_fstat_lat}/result_template.json (77%) rename test/benchmark/{lmbench-fstat => lmbench/vfs_fstat_lat}/run.sh (100%) rename test/benchmark/{lmbench-open => lmbench/vfs_open_lat}/config.json (63%) rename test/benchmark/{lmbench-open => lmbench/vfs_open_lat}/result_template.json (77%) rename test/benchmark/{lmbench-open => lmbench/vfs_open_lat}/run.sh (100%) rename test/benchmark/{lmbench-read => lmbench/vfs_read_lat}/config.json (60%) rename test/benchmark/{lmbench-read => lmbench/vfs_read_lat}/result_template.json (77%) rename test/benchmark/{lmbench-read => lmbench/vfs_read_lat}/run.sh (100%) rename test/benchmark/{lmbench-mem-fwr => lmbench/vfs_read_pagecache_bw}/config.json (50%) rename test/benchmark/{lmbench-file-rd-bandwidth => lmbench/vfs_read_pagecache_bw}/result_template.json (78%) rename test/benchmark/{lmbench-file-rd-bandwidth => lmbench/vfs_read_pagecache_bw}/run.sh (100%) rename test/benchmark/{lmbench-select-file => lmbench/vfs_select_lat}/config.json (60%) rename test/benchmark/{lmbench-select-file => lmbench/vfs_select_lat}/result_template.json (78%) rename test/benchmark/{lmbench-select-file => lmbench/vfs_select_lat}/run.sh (100%) rename test/benchmark/{lmbench-stat => lmbench/vfs_stat_lat}/config.json (62%) rename test/benchmark/{lmbench-stat => lmbench/vfs_stat_lat}/result_template.json (77%) rename test/benchmark/{lmbench-stat => lmbench/vfs_stat_lat}/run.sh (100%) rename test/benchmark/{lmbench-write => lmbench/vfs_write_lat}/config.json (60%) rename test/benchmark/{lmbench-write => lmbench/vfs_write_lat}/result_template.json (77%) rename test/benchmark/{lmbench-write => lmbench/vfs_write_lat}/run.sh (100%) rename test/benchmark/{sysbench-cpu => sysbench/cpu_lat}/config.json (51%) rename test/benchmark/{sysbench-cpu => sysbench/cpu_lat}/result_template.json (78%) rename test/benchmark/{sysbench-cpu => sysbench/cpu_lat}/run.sh (100%) rename test/benchmark/{sysbench-thread => sysbench/thread_lat}/config.json (50%) rename test/benchmark/{sysbench-thread => sysbench/thread_lat}/result_template.json (78%) rename test/benchmark/{sysbench-thread => sysbench/thread_lat}/run.sh (100%) diff --git a/Makefile b/Makefile index 56786d74..5559f12c 100644 --- a/Makefile +++ b/Makefile @@ -57,7 +57,7 @@ endif # If the BENCHMARK is set, we will run the benchmark in the kernel mode. ifneq ($(BENCHMARK), none) -CARGO_OSDK_ARGS += --init-args="/benchmark/common/runner.sh $(BENCHMARK)" +CARGO_OSDK_ARGS += --init-args="/benchmark/common/bench_runner.sh $(BENCHMARK) asterinas" # TODO: remove this workaround after enabling kernel virtual area. OSTD_TASK_STACK_SIZE_IN_PAGES = 7 endif diff --git a/test/Makefile b/test/Makefile index cd2c5119..59d1e17e 100644 --- a/test/Makefile +++ b/test/Makefile @@ -1,5 +1,6 @@ # SPDX-License-Identifier: MPL-2.0 +BINARY_CACHE_DIR := /opt/linux_binary_cache VDSO_DIR := ../target VDSO_LIB := $(VDSO_DIR)/vdso64.so MKFILE_PATH := $(abspath $(lastword $(MAKEFILE_LIST))) @@ -7,7 +8,6 @@ CUR_DIR := $(patsubst %/,%,$(dir $(MKFILE_PATH))) ATOMIC_WGET := $(CUR_DIR)/../tools/atomic_wget.sh BUILD_DIR := $(CUR_DIR)/build INITRAMFS := $(BUILD_DIR)/initramfs -BENCHMARK_ENTRYPOINT := $(CUR_DIR)/benchmark/benchmark_entrypoint.sh INITRAMFS_FILELIST := $(BUILD_DIR)/initramfs.filelist INITRAMFS_IMAGE := $(BUILD_DIR)/initramfs.cpio.gz EXT2_IMAGE := $(BUILD_DIR)/ext2.img @@ -61,13 +61,17 @@ $(INITRAMFS)/lib/x86_64-linux-gnu: | $(VDSO_LIB) @# required for VDSO @cp -L $(VDSO_LIB) $@ -$(VDSO_LIB): | $(VDSO_DIR) +$(VDSO_LIB): | $(VDSO_DIR) $(BINARY_CACHE_DIR)/vdso64.so @# TODO: use a custom compiled vdso.so file in the future. - $(ATOMIC_WGET) $@ "https://raw.githubusercontent.com/asterinas/linux_vdso/2a6d2db/vdso64.so" + @cp $(BINARY_CACHE_DIR)/vdso64.so $@ $(VDSO_DIR): @mkdir -p $@ +$(BINARY_CACHE_DIR)/vdso64.so: + @mkdir -p $(BINARY_CACHE_DIR) + @$(ATOMIC_WGET) $@ "https://raw.githubusercontent.com/asterinas/linux_vdso/2a6d2db/vdso64.so" + $(INITRAMFS)/lib64: @mkdir -p $@ @cp -L /lib64/ld-linux-x86-64.so.2 $@ @@ -97,9 +101,6 @@ $(INITRAMFS)/test: $(INITRAMFS)/benchmark: | $(INITRAMFS)/benchmark/bin @cp -rf $(CUR_DIR)/benchmark/* $@ - @if [ -e $(BENCHMARK_ENTRYPOINT) ]; then \ - cp $(BENCHMARK_ENTRYPOINT) $@; \ - fi $(INITRAMFS)/benchmark/bin: @mkdir -p $@ diff --git a/test/benchmark/README.md b/test/benchmark/README.md index 4309ab63..7de2da06 100644 --- a/test/benchmark/README.md +++ b/test/benchmark/README.md @@ -72,25 +72,29 @@ To add a new benchmark to the Asternias Continuous Integration (CI) system, foll 1. **Create the Benchmark Directory:** - Navigate to `asterinas/test/benchmarks`. - - Create a new directory named after your benchmark, e.g., `getpid`. + - Create a new directory named after your benchmark, e.g., `lmbench/getpid`. 2. **Create the Necessary Files:** - **config.json:** ```json { "alert_threshold": "125%", - "alert_tool": "customBiggerIsBetter", - "search_pattern": "134.22", - "result_index": "2", - "description": "The memory bandwidth for copying 128 MB of data on a single processor using the fcp (fast copy) method." - } + "alert_tool": "customSmallerIsBetter", + "search_pattern": "Simple syscall:", + "result_index": "3", + "description": "lat_syscall null", + "title": "[Process] The cost of getpid", + "show_in_overview": "false" + } ``` - - `alert_threshold`: Set the threshold for alerting. If the benchmark result exceeds this threshold, an alert will be triggered. Note that the threshold should usually be greater than 100%. + - `alert_threshold`: Set the threshold for alerting. If the benchmark result exceeds this threshold, an alert will be triggered. Note that the threshold should usually be greater than 100%. If your results are not stable, set it to a bigger value. - `alert_tool`: Choose the validation tool to use. The available options are `customBiggerIsBetter` and `customSmallerIsBetter`. Refer to [this](https://github.com/benchmark-action/github-action-benchmark?tab=readme-ov-file#tool-required) for more details. If using `customBiggerIsBetter`, the alert will be triggered when `prev.value / current.value` exceeds the threshold. If using `customSmallerIsBetter`, the alert will be triggered when `current.value / prev.value` exceeds the threshold. - `search_pattern`: Define a regular expression to extract benchmark results from the output using `awk`. This regular expression is designed to match specific patterns in the output, effectively isolating the benchmark results and producing a set of fragments. - `result_index`: Specify the index of the result in the extracted output. This field is aligned with `awk`'s action. - `description`: Provide a brief description of the benchmark. + - `title`: Set the title of the benchmark. + - `show_in_overview`: Default is true. Set to `false` to avoid displaying the benchmark in the overview results. For example, if the benchmark output is "Syscall average latency: 1000 ns", the `search_pattern` is "Syscall average latency:", and the `result_index` is "4". `awk` will extract "1000" as the benchmark result. See the `awk` [manual](https://www.gnu.org/software/gawk/manual/gawk.html#Getting-Started) for more information. @@ -102,13 +106,13 @@ To add a new benchmark to the Asternias Continuous Integration (CI) system, foll "name": "Average Syscall Latency on Linux", "unit": "ns", "value": 0, - "extra": "linux_avg" + "extra": "linux_result" }, { "name": "Average Syscall Latency on Asterinas", "unit": "ns", "value": 0, - "extra": "aster_avg" + "extra": "aster_result" } ] ``` @@ -118,7 +122,7 @@ To add a new benchmark to the Asternias Continuous Integration (CI) system, foll ```bash #!/bin/bash - /benchmark/bin/getpid + /benchmark/bin/lmbench/lat_syscall -P 1 null ``` - This script runs the benchmark. Ensure the path to the benchmark binary is correct. `asterinas/test/Makefile` handles the benchmark binaries. @@ -130,7 +134,7 @@ To add a new benchmark to the Asternias Continuous Integration (CI) system, foll ```yaml strategy: matrix: - benchmark: [getpid] + benchmark: [lmbench/getpid] fail-fast: false ``` @@ -140,7 +144,7 @@ To add a new benchmark to the Asternias Continuous Integration (CI) system, foll - Execute the following command to test the benchmark locally: ```bash cd asterinas - bash test/benchmark/bench_linux_aster.sh getpid + bash test/benchmark/bench_linux_and_aster.sh lmbench/getpid ``` - Ensure the benchmark runs successfully and check the results in `asterinas/result_getpid.json`. diff --git a/test/benchmark/bench_linux_and_aster.sh b/test/benchmark/bench_linux_and_aster.sh index 2b98a8a1..613c7901 100755 --- a/test/benchmark/bench_linux_and_aster.sh +++ b/test/benchmark/bench_linux_and_aster.sh @@ -10,32 +10,64 @@ command -v jq >/dev/null 2>&1 || { echo >&2 "jq is not installed. Aborting."; ex # Script directory BENCHMARK_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" &>/dev/null && pwd)" -# Kernel image -KERNEL_DIR="/root/dependency" -LINUX_KERNEL="${KERNEL_DIR}/vmlinuz" -KERNEL_VERSION="5.15.0-105-generic" -MODULES_DIR="${BENCHMARK_DIR}/../build/initramfs/lib/modules/${KERNEL_VERSION}/kernel" +# Dependencies for Linux +LINUX_DEPENDENCIES_DIR="/opt/linux_binary_cache" +LINUX_KERNEL="${LINUX_DEPENDENCIES_DIR}/vmlinuz" +LINUX_KERNEL_VERSION="5.15.0-105-generic" +LINUX_MODULES_DIR="${BENCHMARK_DIR}/../build/initramfs/lib/modules/${LINUX_KERNEL_VERSION}/kernel" # Atomic wget script WGET_SCRIPT="${BENCHMARK_DIR}/../../tools/atomic_wget.sh" -# Generate entrypoint script for Linux cases -generate_entrypoint_script() { +# Prepare Linux kernel and modules +prepare_libs() { + # Download the Linux kernel and modules + mkdir -p "${LINUX_DEPENDENCIES_DIR}" + + if [ ! -f "${LINUX_KERNEL}" ]; then + echo "Downloading the Linux kernel image..." + ${WGET_SCRIPT} "${LINUX_KERNEL}" "https://raw.githubusercontent.com/asterinas/linux_binary_cache/8a5b6fd/vmlinuz-${LINUX_KERNEL_VERSION}" || { + echo "Failed to download the Linux kernel image." + exit 1 + } + fi + if [ ! -f "${LINUX_DEPENDENCIES_DIR}/virtio_blk.ko" ]; then + echo "Downloading the virtio_blk kernel module..." + ${WGET_SCRIPT} "${LINUX_DEPENDENCIES_DIR}/virtio_blk.ko" "https://raw.githubusercontent.com/asterinas/linux_binary_cache/8a5b6fd/kernel/drivers/block/virtio_blk.ko" || { + echo "Failed to download the Linux kernel module." + exit 1 + } + fi + # Copy the kernel modules to the initramfs directory + if [ ! -f "${LINUX_MODULES_DIR}/drivers/block/virtio_blk.ko" ]; then + mkdir -p "${LINUX_MODULES_DIR}/drivers/block" + cp ${LINUX_DEPENDENCIES_DIR}/virtio_blk.ko "${LINUX_MODULES_DIR}/drivers/block/virtio_blk.ko" + fi +} + +# Parse the results from the benchmark output +parse_results() { local benchmark="$1" - local init_script=$(cat <&2 + exit 1 + fi -poweroff -f -EOF -) - echo "$init_script" + echo "Updating the result template with extracted values..." + jq --arg linux_result "${linux_result}" --arg aster_result "${aster_result}" \ + '(.[] | select(.extra == "linux_result") | .value) |= $linux_result | + (.[] | select(.extra == "aster_result") | .value) |= $aster_result' \ + "${result_template}" > "${result_file}" } # Run the benchmark on Linux and Asterinas @@ -47,14 +79,14 @@ run_benchmark() { local linux_output="${BENCHMARK_DIR}/linux_output.txt" local aster_output="${BENCHMARK_DIR}/aster_output.txt" local result_template="${BENCHMARK_DIR}/${benchmark}/result_template.json" - local result_file="result_${benchmark}.json" + local benchmark_name=$(basename "${benchmark}") + local result_file="result_${benchmark_name}.json" + + echo "Preparing libraries..." + prepare_libs - # Entrypoint script for initramfs - local initramfs_entrypoint_script="${BENCHMARK_DIR}/benchmark_entrypoint.sh" - generate_entrypoint_script "${benchmark}" > "${initramfs_entrypoint_script}" - chmod +x "${initramfs_entrypoint_script}" - - local qemu_cmd="/usr/local/qemu/bin/qemu-system-x86_64 \ + local asterinas_cmd="make run BENCHMARK=${benchmark} ENABLE_KVM=1 RELEASE_LTO=1 2>&1 | tee ${aster_output}" + local linux_cmd="/usr/local/qemu/bin/qemu-system-x86_64 \ --no-reboot \ -smp 1 \ -m 8G \ @@ -65,56 +97,27 @@ run_benchmark() { -initrd ${BENCHMARK_DIR}/../build/initramfs.cpio.gz \ -drive if=none,format=raw,id=x0,file=${BENCHMARK_DIR}/../build/ext2.img \ -device virtio-blk-pci,bus=pcie.0,addr=0x6,drive=x0,serial=vext2,disable-legacy=on,disable-modern=off,queue-size=64,num-queues=1,config-wce=off,request-merging=off,write-cache=off,backend_defaults=off,discard=off,event_idx=off,indirect_desc=off,ioeventfd=off,queue_reset=off \ - -append 'console=ttyS0 rdinit=/benchmark/benchmark_entrypoint.sh mitigations=off hugepages=0 transparent_hugepage=never' \ + -append 'console=ttyS0 rdinit=/benchmark/common/bench_runner.sh ${benchmark} linux mitigations=off hugepages=0 transparent_hugepage=never' \ -nographic \ - 2>&1 | tee ${linux_output}" - - if [ ! -f "${LINUX_KERNEL}" ]; then - echo "Downloading the Linux kernel image..." - mkdir -p "${KERNEL_DIR}" - ${WGET_SCRIPT} "${LINUX_KERNEL}" "https://raw.githubusercontent.com/asterinas/linux_kernel/9e66d28/vmlinuz-${KERNEL_VERSION}" - fi - if [ ! -f "${MODULES_DIR}" ]; then - echo "Downloading additional kernel modules..." - mkdir -p "${MODULES_DIR}/drivers/block" - ${WGET_SCRIPT} "${MODULES_DIR}/drivers/block/virtio_blk.ko" "https://raw.githubusercontent.com/asterinas/linux_kernel/f938bde/modules/virtio_blk.ko" - fi + 2>&1 | tee ${linux_output}" echo "Running benchmark ${benchmark} on Asterinas..." - make run BENCHMARK=${benchmark} ENABLE_KVM=1 RELEASE_LTO=1 2>&1 | tee "${aster_output}" - + eval "$asterinas_cmd" echo "Running benchmark ${benchmark} on Linux..." - # 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 - eval "$qemu_cmd" + eval "$linux_cmd" echo "Parsing results..." - local linux_avg aster_avg - linux_avg=$(awk "/${search_pattern}/ {result=\$$result_index} END {print result}" "${linux_output}" | tr -d '\r') - aster_avg=$(awk "/${search_pattern}/ {result=\$$result_index} END {print result}" "${aster_output}" | tr -d '\r') - - if [ -z "${linux_avg}" ] || [ -z "${aster_avg}" ]; then - echo "Error: Failed to parse the average value from the benchmark output" >&2 - exit 1 - fi - - echo "Updating the result template with average values..." - jq --arg linux_avg "${linux_avg}" --arg aster_avg "${aster_avg}" \ - '(.[] | select(.extra == "linux_avg") | .value) |= $linux_avg | - (.[] | select(.extra == "aster_avg") | .value) |= $aster_avg' \ - "${result_template}" > "${result_file}" + parse_results "$benchmark" "$search_pattern" "$result_index" "$linux_output" "$aster_output" "$result_template" "$result_file" echo "Cleaning up..." - rm -f "${initramfs_entrypoint_script}" rm -f "${linux_output}" rm -f "${aster_output}" } - # Main BENCHMARK="$1" + echo "Running benchmark ${BENCHMARK}..." pwd if [ ! -d "$BENCHMARK_DIR/$BENCHMARK" ]; then diff --git a/test/benchmark/common/bench_runner.sh b/test/benchmark/common/bench_runner.sh new file mode 100755 index 00000000..cb912fbd --- /dev/null +++ b/test/benchmark/common/bench_runner.sh @@ -0,0 +1,77 @@ +#!/bin/sh + +# SPDX-License-Identifier: MPL-2.0 +# Entrypoint for the benchmark VM + +set -e + +BENCHMARK_DIR="/benchmark" + +BENCH_NAME=$1 +SYSTEM=$2 + +print_help() { + echo "Usage: $0 " + echo " benchmark_name: The name of the benchmark to run." + echo " system_type: The type of system to run the benchmark on. 'linux' or 'asterinas'." +} + +# Validate arguments +check_bench_name() { + if [ -z "${BENCH_NAME}" ] || [ -z "${SYSTEM}" ]; then + echo "Error: Invalid arguments." + print_help + exit 1 + fi + + local full_path="${BENCHMARK_DIR}/${BENCH_NAME}" + + if ! [ -d "${full_path}" ]; then + echo "Directory '${BENCH_NAME}' does not exist in the benchmark directory." + print_help + exit 1 + fi +} + +prepare_system() { + if [ ! -d /tmp ]; then + mkdir /tmp + fi + + /sbin/ldconfig + + # System-specific preparation + if [ "$SYSTEM" = "linux" ]; then + 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) + : + else + echo "Error: Unknown system type. Please set SYSTEM to 'linux' or 'asterinas'." + exit 1 + fi +} + +main() { + # Check if the benchmark name is valid + check_bench_name + + # Prepare the system + prepare_system + + # Run the benchmark + BENCH_SCRIPT=${BENCHMARK_DIR}/${BENCH_NAME}/run.sh + chmod +x ${BENCH_SCRIPT} + ${BENCH_SCRIPT} + + # Shutdown explicitly if running on Linux + if [ "$SYSTEM" = "linux" ]; then + poweroff -f + fi +} + +main "$@" diff --git a/test/benchmark/common/runner.sh b/test/benchmark/common/runner.sh deleted file mode 100755 index 8a1fd90e..00000000 --- a/test/benchmark/common/runner.sh +++ /dev/null @@ -1,45 +0,0 @@ -#!/bin/sh - -# SPDX-License-Identifier: MPL-2.0 - -set -e - -print_help() { - echo "Usage: $0 bench_name" - echo "" - echo "The bench_name argument must be one of the directory under asterinas/test/benchmark/". -} - -BENCH_NAME=$1 -SCRIPT_DIR=$(cd "$(dirname "$0")" && pwd) - -# Validate arguments -check_bench_name() { - if [ -z "${BENCH_NAME}" ]; then - echo "Error: No directory provided." - print_help - exit 1 - fi - - local full_path="${SCRIPT_DIR}/../${BENCH_NAME}" - - if ! [ -d "${full_path}" ]; then - echo "Directory '${BENCH_NAME}' does not exist in the script directory." - print_help - exit 1 - fi -} - -check_bench_name - -BENCH_SCRIPT=${SCRIPT_DIR}/../${BENCH_NAME}/run.sh - -# Prepare the environment -if [ ! -d /tmp ]; then - mkdir /tmp -fi -/sbin/ldconfig -chmod +x ${BENCH_SCRIPT} - -# Run the benchmark -${BENCH_SCRIPT} \ No newline at end of file diff --git a/test/benchmark/lmbench-lmdd/config.json b/test/benchmark/lmbench/ext2_copy_files_bw/config.json similarity index 59% rename from test/benchmark/lmbench-lmdd/config.json rename to test/benchmark/lmbench/ext2_copy_files_bw/config.json index 7366926e..bb87a7b3 100644 --- a/test/benchmark/lmbench-lmdd/config.json +++ b/test/benchmark/lmbench/ext2_copy_files_bw/config.json @@ -3,5 +3,6 @@ "alert_tool": "customBiggerIsBetter", "search_pattern": "lmdd result:", "result_index": "8", - "description": "The bandwidth of file copy." -} + "description": "lmdd", + "title": "[EXT2] The bandwidth of copying data between files" +} \ No newline at end of file diff --git a/test/benchmark/lmbench-lmdd/result_template.json b/test/benchmark/lmbench/ext2_copy_files_bw/result_template.json similarity index 78% rename from test/benchmark/lmbench-lmdd/result_template.json rename to test/benchmark/lmbench/ext2_copy_files_bw/result_template.json index f5b1803b..8c7a58c4 100644 --- a/test/benchmark/lmbench-lmdd/result_template.json +++ b/test/benchmark/lmbench/ext2_copy_files_bw/result_template.json @@ -3,12 +3,12 @@ "name": "Average file copy bandwidth on Linux", "unit": "MB/s", "value": 0, - "extra": "linux_avg" + "extra": "linux_result" }, { "name": "Average file copy bandwidth on Asterinas", "unit": "MB/s", "value": 0, - "extra": "aster_avg" + "extra": "aster_result" } ] \ No newline at end of file diff --git a/test/benchmark/lmbench-lmdd/run.sh b/test/benchmark/lmbench/ext2_copy_files_bw/run.sh similarity index 100% rename from test/benchmark/lmbench-lmdd/run.sh rename to test/benchmark/lmbench/ext2_copy_files_bw/run.sh diff --git a/test/benchmark/lmbench-fifo-latency/config.json b/test/benchmark/lmbench/fifo_lat/config.json similarity index 62% rename from test/benchmark/lmbench-fifo-latency/config.json rename to test/benchmark/lmbench/fifo_lat/config.json index 66f4850e..cd14cfb3 100644 --- a/test/benchmark/lmbench-fifo-latency/config.json +++ b/test/benchmark/lmbench/fifo_lat/config.json @@ -3,5 +3,6 @@ "alert_tool": "customSmallerIsBetter", "search_pattern": "Fifo latency", "result_index": "3", - "description": "The latency of fifo on a single processor." -} + "description": "lat_fifo", + "title": "[FIFO] The cost of write+read (1B)" +} \ No newline at end of file diff --git a/test/benchmark/lmbench-fifo-latency/result_template.json b/test/benchmark/lmbench/fifo_lat/result_template.json similarity index 77% rename from test/benchmark/lmbench-fifo-latency/result_template.json rename to test/benchmark/lmbench/fifo_lat/result_template.json index 412c7a43..44e28bb8 100644 --- a/test/benchmark/lmbench-fifo-latency/result_template.json +++ b/test/benchmark/lmbench/fifo_lat/result_template.json @@ -3,12 +3,12 @@ "name": "Average fifo latency on Linux", "unit": "µs", "value": 0, - "extra": "linux_avg" + "extra": "linux_result" }, { "name": "Average fifo latency on Asterinas", "unit": "µs", "value": 0, - "extra": "aster_avg" + "extra": "aster_result" } ] \ No newline at end of file diff --git a/test/benchmark/lmbench-fifo-latency/run.sh b/test/benchmark/lmbench/fifo_lat/run.sh similarity index 100% rename from test/benchmark/lmbench-fifo-latency/run.sh rename to test/benchmark/lmbench/fifo_lat/run.sh diff --git a/test/benchmark/lmbench-file-rd-bandwidth/config.json b/test/benchmark/lmbench/mem_copy_bw/config.json similarity index 59% rename from test/benchmark/lmbench-file-rd-bandwidth/config.json rename to test/benchmark/lmbench/mem_copy_bw/config.json index 7fa807f6..4e46570f 100644 --- a/test/benchmark/lmbench-file-rd-bandwidth/config.json +++ b/test/benchmark/lmbench/mem_copy_bw/config.json @@ -3,5 +3,6 @@ "alert_tool": "customBiggerIsBetter", "search_pattern": "536.87", "result_index": "2", - "description": "The bandwidth of reading a file on a single processor." + "description": "bw_mem fcp", + "title": "[Memory] The bandwidth of copying integers" } \ No newline at end of file diff --git a/test/benchmark/lmbench-mem-fcp/result_template.json b/test/benchmark/lmbench/mem_copy_bw/result_template.json similarity index 78% rename from test/benchmark/lmbench-mem-fcp/result_template.json rename to test/benchmark/lmbench/mem_copy_bw/result_template.json index 7bee160e..c0b0bbb3 100644 --- a/test/benchmark/lmbench-mem-fcp/result_template.json +++ b/test/benchmark/lmbench/mem_copy_bw/result_template.json @@ -3,12 +3,12 @@ "name": "Average memory copy bandwidth on Linux", "unit": "MB/s", "value": 0, - "extra": "linux_avg" + "extra": "linux_result" }, { "name": "Average memory copy bandwidth on Asterinas", "unit": "MB/s", "value": 0, - "extra": "aster_avg" + "extra": "aster_result" } ] \ No newline at end of file diff --git a/test/benchmark/lmbench-mem-fcp/run.sh b/test/benchmark/lmbench/mem_copy_bw/run.sh similarity index 100% rename from test/benchmark/lmbench-mem-fcp/run.sh rename to test/benchmark/lmbench/mem_copy_bw/run.sh diff --git a/test/benchmark/lmbench-mmap-bandwidth/config.json b/test/benchmark/lmbench/mem_mmap_bw/config.json similarity index 63% rename from test/benchmark/lmbench-mmap-bandwidth/config.json rename to test/benchmark/lmbench/mem_mmap_bw/config.json index 99c8578d..95b75d2e 100644 --- a/test/benchmark/lmbench-mmap-bandwidth/config.json +++ b/test/benchmark/lmbench/mem_mmap_bw/config.json @@ -3,5 +3,6 @@ "alert_tool": "customBiggerIsBetter", "search_pattern": "268.44", "result_index": "2", - "description": "The bandwidth of mmap on a single processor." -} + "description": "bw_mmap", + "title": "[Memory] The bandwidth of mmap" +} \ No newline at end of file diff --git a/test/benchmark/lmbench-mmap-bandwidth/result_template.json b/test/benchmark/lmbench/mem_mmap_bw/result_template.json similarity index 77% rename from test/benchmark/lmbench-mmap-bandwidth/result_template.json rename to test/benchmark/lmbench/mem_mmap_bw/result_template.json index d678a64a..0ae1fd34 100644 --- a/test/benchmark/lmbench-mmap-bandwidth/result_template.json +++ b/test/benchmark/lmbench/mem_mmap_bw/result_template.json @@ -3,12 +3,12 @@ "name": "Average mmap bandwidth on Linux", "unit": "MB/s", "value": 0, - "extra": "linux_avg" + "extra": "linux_result" }, { "name": "Average mmap bandwidth on Asterinas", "unit": "MB/s", "value": 0, - "extra": "aster_avg" + "extra": "aster_result" } ] \ No newline at end of file diff --git a/test/benchmark/lmbench-mmap-bandwidth/run.sh b/test/benchmark/lmbench/mem_mmap_bw/run.sh similarity index 100% rename from test/benchmark/lmbench-mmap-bandwidth/run.sh rename to test/benchmark/lmbench/mem_mmap_bw/run.sh diff --git a/test/benchmark/lmbench-mmap-latency/config.json b/test/benchmark/lmbench/mem_mmap_lat/config.json similarity index 63% rename from test/benchmark/lmbench-mmap-latency/config.json rename to test/benchmark/lmbench/mem_mmap_lat/config.json index 92f24dc0..48baf01f 100644 --- a/test/benchmark/lmbench-mmap-latency/config.json +++ b/test/benchmark/lmbench/mem_mmap_lat/config.json @@ -3,5 +3,6 @@ "alert_tool": "customSmallerIsBetter", "search_pattern": "4.194304", "result_index": "2", - "description": "The latency of mmap on a single processor." -} + "description": "lat_mmap", + "title": "[Memory] The cost of mmap+unmap" +} \ No newline at end of file diff --git a/test/benchmark/lmbench-mmap-latency/result_template.json b/test/benchmark/lmbench/mem_mmap_lat/result_template.json similarity index 77% rename from test/benchmark/lmbench-mmap-latency/result_template.json rename to test/benchmark/lmbench/mem_mmap_lat/result_template.json index a841e8d7..a8cf8d9e 100644 --- a/test/benchmark/lmbench-mmap-latency/result_template.json +++ b/test/benchmark/lmbench/mem_mmap_lat/result_template.json @@ -3,12 +3,12 @@ "name": "Average mmap latency on Linux", "unit": "µs", "value": 0, - "extra": "linux_avg" + "extra": "linux_result" }, { "name": "Average mmap latency on Asterinas", "unit": "µs", "value": 0, - "extra": "aster_avg" + "extra": "aster_result" } ] \ No newline at end of file diff --git a/test/benchmark/lmbench-mmap-latency/run.sh b/test/benchmark/lmbench/mem_mmap_lat/run.sh similarity index 100% rename from test/benchmark/lmbench-mmap-latency/run.sh rename to test/benchmark/lmbench/mem_mmap_lat/run.sh diff --git a/test/benchmark/lmbench-pagefault/config.json b/test/benchmark/lmbench/mem_pagefault_lat/config.json similarity index 60% rename from test/benchmark/lmbench-pagefault/config.json rename to test/benchmark/lmbench/mem_pagefault_lat/config.json index b9d3cebd..21e69665 100644 --- a/test/benchmark/lmbench-pagefault/config.json +++ b/test/benchmark/lmbench/mem_pagefault_lat/config.json @@ -3,5 +3,6 @@ "alert_tool": "customSmallerIsBetter", "search_pattern": "Pagefaults on ", "result_index": "4", - "description": "The latency of handling page fault on a single processor." -} + "description": "lat_pagefault", + "title": "[Memory] The cost of page fault handling" +} \ No newline at end of file diff --git a/test/benchmark/lmbench-pagefault/result_template.json b/test/benchmark/lmbench/mem_pagefault_lat/result_template.json similarity index 78% rename from test/benchmark/lmbench-pagefault/result_template.json rename to test/benchmark/lmbench/mem_pagefault_lat/result_template.json index 218e497f..1b1398f6 100644 --- a/test/benchmark/lmbench-pagefault/result_template.json +++ b/test/benchmark/lmbench/mem_pagefault_lat/result_template.json @@ -3,12 +3,12 @@ "name": "Average page fault latency on Linux", "unit": "µs", "value": 0, - "extra": "linux_avg" + "extra": "linux_result" }, { "name": "Average page fault latency on Asterinas", "unit": "µs", "value": 0, - "extra": "aster_avg" + "extra": "aster_result" } ] \ No newline at end of file diff --git a/test/benchmark/lmbench-pagefault/run.sh b/test/benchmark/lmbench/mem_pagefault_lat/run.sh similarity index 100% rename from test/benchmark/lmbench-pagefault/run.sh rename to test/benchmark/lmbench/mem_pagefault_lat/run.sh diff --git a/test/benchmark/lmbench-mem-frd/config.json b/test/benchmark/lmbench/mem_read_bw/config.json similarity index 58% rename from test/benchmark/lmbench-mem-frd/config.json rename to test/benchmark/lmbench/mem_read_bw/config.json index 7735a97b..7191b38f 100644 --- a/test/benchmark/lmbench-mem-frd/config.json +++ b/test/benchmark/lmbench/mem_read_bw/config.json @@ -3,5 +3,6 @@ "alert_tool": "customBiggerIsBetter", "search_pattern": "536.87", "result_index": "2", - "description": "The memory bandwidth for reading 512 MB of data on a single processor." -} + "description": "bw_mem frd", + "title": "[Memory] The bandwidth of reading integers" +} \ No newline at end of file diff --git a/test/benchmark/lmbench-mem-frd/result_template.json b/test/benchmark/lmbench/mem_read_bw/result_template.json similarity index 78% rename from test/benchmark/lmbench-mem-frd/result_template.json rename to test/benchmark/lmbench/mem_read_bw/result_template.json index 22a0f922..cb024a2e 100644 --- a/test/benchmark/lmbench-mem-frd/result_template.json +++ b/test/benchmark/lmbench/mem_read_bw/result_template.json @@ -3,12 +3,12 @@ "name": "Average memory read bandwidth on Linux", "unit": "MB/s", "value": 0, - "extra": "linux_avg" + "extra": "linux_result" }, { "name": "Average memory read bandwidth on Asterinas", "unit": "MB/s", "value": 0, - "extra": "aster_avg" + "extra": "aster_result" } ] \ No newline at end of file diff --git a/test/benchmark/lmbench-mem-frd/run.sh b/test/benchmark/lmbench/mem_read_bw/run.sh similarity index 100% rename from test/benchmark/lmbench-mem-frd/run.sh rename to test/benchmark/lmbench/mem_read_bw/run.sh diff --git a/test/benchmark/lmbench-mem-fcp/config.json b/test/benchmark/lmbench/mem_write_bw/config.json similarity index 50% rename from test/benchmark/lmbench-mem-fcp/config.json rename to test/benchmark/lmbench/mem_write_bw/config.json index 073a082e..d1f4813f 100644 --- a/test/benchmark/lmbench-mem-fcp/config.json +++ b/test/benchmark/lmbench/mem_write_bw/config.json @@ -3,5 +3,6 @@ "alert_tool": "customBiggerIsBetter", "search_pattern": "536.87", "result_index": "2", - "description": "The memory bandwidth for copying 512 MB of data on a single processor using the fcp (fast copy) method." -} + "description": "bw_mem fwr", + "title": "[Memory] The bandwidth of writing integers" +} \ No newline at end of file diff --git a/test/benchmark/lmbench-mem-fwr/result_template.json b/test/benchmark/lmbench/mem_write_bw/result_template.json similarity index 78% rename from test/benchmark/lmbench-mem-fwr/result_template.json rename to test/benchmark/lmbench/mem_write_bw/result_template.json index 9b74462f..229ffa9d 100644 --- a/test/benchmark/lmbench-mem-fwr/result_template.json +++ b/test/benchmark/lmbench/mem_write_bw/result_template.json @@ -3,12 +3,12 @@ "name": "Average memory write bandwidth on Linux", "unit": "MB/s", "value": 0, - "extra": "linux_avg" + "extra": "linux_result" }, { "name": "Average memory write bandwidth on Asterinas", "unit": "MB/s", "value": 0, - "extra": "aster_avg" + "extra": "aster_result" } ] \ No newline at end of file diff --git a/test/benchmark/lmbench-mem-fwr/run.sh b/test/benchmark/lmbench/mem_write_bw/run.sh similarity index 100% rename from test/benchmark/lmbench-mem-fwr/run.sh rename to test/benchmark/lmbench/mem_write_bw/run.sh diff --git a/test/benchmark/lmbench-pipe-bandwidth/config.json b/test/benchmark/lmbench/pipe_bw/config.json similarity index 67% rename from test/benchmark/lmbench-pipe-bandwidth/config.json rename to test/benchmark/lmbench/pipe_bw/config.json index c22b8428..ebdf1408 100644 --- a/test/benchmark/lmbench-pipe-bandwidth/config.json +++ b/test/benchmark/lmbench/pipe_bw/config.json @@ -3,5 +3,6 @@ "alert_tool": "customBiggerIsBetter", "search_pattern": "Pipe bandwidth", "result_index": "3", - "description": "The bandwidth of pipe on a single processor." -} + "description": "bw_pipe", + "title": "[Pipes] The bandwidth" +} \ No newline at end of file diff --git a/test/benchmark/lmbench-pipe-bandwidth/result_template.json b/test/benchmark/lmbench/pipe_bw/result_template.json similarity index 77% rename from test/benchmark/lmbench-pipe-bandwidth/result_template.json rename to test/benchmark/lmbench/pipe_bw/result_template.json index 69983ce3..2535ea8d 100644 --- a/test/benchmark/lmbench-pipe-bandwidth/result_template.json +++ b/test/benchmark/lmbench/pipe_bw/result_template.json @@ -3,12 +3,12 @@ "name": "Average pipe bandwidth on Linux", "unit": "MB/s", "value": 0, - "extra": "linux_avg" + "extra": "linux_result" }, { "name": "Average pipe bandwidth on Asterinas", "unit": "MB/s", "value": 0, - "extra": "aster_avg" + "extra": "aster_result" } ] \ No newline at end of file diff --git a/test/benchmark/lmbench-pipe-bandwidth/run.sh b/test/benchmark/lmbench/pipe_bw/run.sh similarity index 100% rename from test/benchmark/lmbench-pipe-bandwidth/run.sh rename to test/benchmark/lmbench/pipe_bw/run.sh diff --git a/test/benchmark/lmbench-pipe-latency/config.json b/test/benchmark/lmbench/pipe_lat/config.json similarity index 62% rename from test/benchmark/lmbench-pipe-latency/config.json rename to test/benchmark/lmbench/pipe_lat/config.json index 70a5207c..0984e63e 100644 --- a/test/benchmark/lmbench-pipe-latency/config.json +++ b/test/benchmark/lmbench/pipe_lat/config.json @@ -3,5 +3,6 @@ "alert_tool": "customSmallerIsBetter", "search_pattern": "Pipe latency", "result_index": "3", - "description": "The latency of pipe on a single processor." -} + "description": "lat_pipe", + "title": "[Pipes] The cost of write+read (1B)" +} \ No newline at end of file diff --git a/test/benchmark/lmbench-pipe-latency/result_template.json b/test/benchmark/lmbench/pipe_lat/result_template.json similarity index 77% rename from test/benchmark/lmbench-pipe-latency/result_template.json rename to test/benchmark/lmbench/pipe_lat/result_template.json index b3ea8961..b43754b9 100644 --- a/test/benchmark/lmbench-pipe-latency/result_template.json +++ b/test/benchmark/lmbench/pipe_lat/result_template.json @@ -3,12 +3,12 @@ "name": "Average pipe latency on Linux", "unit": "µs", "value": 0, - "extra": "linux_avg" + "extra": "linux_result" }, { "name": "Average pipe latency on Asterinas", "unit": "µs", "value": 0, - "extra": "aster_avg" + "extra": "aster_result" } ] \ No newline at end of file diff --git a/test/benchmark/lmbench-pipe-latency/run.sh b/test/benchmark/lmbench/pipe_lat/run.sh similarity index 100% rename from test/benchmark/lmbench-pipe-latency/run.sh rename to test/benchmark/lmbench/pipe_lat/run.sh diff --git a/test/benchmark/lmbench-ctx/config.json b/test/benchmark/lmbench/process_ctx_lat/config.json similarity index 56% rename from test/benchmark/lmbench-ctx/config.json rename to test/benchmark/lmbench/process_ctx_lat/config.json index cf39a8a2..cf78913a 100644 --- a/test/benchmark/lmbench-ctx/config.json +++ b/test/benchmark/lmbench/process_ctx_lat/config.json @@ -3,5 +3,6 @@ "alert_tool": "customSmallerIsBetter", "search_pattern": "18 ", "result_index": "2", - "description": "The latency of context switching between 18 contexts on a single processor." -} + "description": "lat_ctx 2", + "title": "[Process] The cost of context switching" +} \ No newline at end of file diff --git a/test/benchmark/lmbench-ctx/result_template.json b/test/benchmark/lmbench/process_ctx_lat/result_template.json similarity index 78% rename from test/benchmark/lmbench-ctx/result_template.json rename to test/benchmark/lmbench/process_ctx_lat/result_template.json index 566b7898..1065e0e1 100644 --- a/test/benchmark/lmbench-ctx/result_template.json +++ b/test/benchmark/lmbench/process_ctx_lat/result_template.json @@ -3,12 +3,12 @@ "name": "Average context switch latency on Linux", "unit": "µs", "value": 0, - "extra": "linux_avg" + "extra": "linux_result" }, { "name": "Average context switch latency on Asterinas", "unit": "µs", "value": 0, - "extra": "aster_avg" + "extra": "aster_result" } ] \ No newline at end of file diff --git a/test/benchmark/lmbench-ctx/run.sh b/test/benchmark/lmbench/process_ctx_lat/run.sh similarity index 100% rename from test/benchmark/lmbench-ctx/run.sh rename to test/benchmark/lmbench/process_ctx_lat/run.sh diff --git a/test/benchmark/lmbench-exec/config.json b/test/benchmark/lmbench/process_exec_lat/config.json similarity index 61% rename from test/benchmark/lmbench-exec/config.json rename to test/benchmark/lmbench/process_exec_lat/config.json index b26bd694..129f038b 100644 --- a/test/benchmark/lmbench-exec/config.json +++ b/test/benchmark/lmbench/process_exec_lat/config.json @@ -3,5 +3,6 @@ "alert_tool": "customSmallerIsBetter", "search_pattern": "Process fork\\+execve", "result_index": "3", - "description": "The latency of creating and executing processes on a single processor." -} + "description": "lat_proc exec", + "title": "[Process] The cost of fork+exec+exit" +} \ No newline at end of file diff --git a/test/benchmark/lmbench-exec/result_template.json b/test/benchmark/lmbench/process_exec_lat/result_template.json similarity index 77% rename from test/benchmark/lmbench-exec/result_template.json rename to test/benchmark/lmbench/process_exec_lat/result_template.json index 7751121a..45b183b8 100644 --- a/test/benchmark/lmbench-exec/result_template.json +++ b/test/benchmark/lmbench/process_exec_lat/result_template.json @@ -3,12 +3,12 @@ "name": "Average exec latency on Linux", "unit": "µs", "value": 0, - "extra": "linux_avg" + "extra": "linux_result" }, { "name": "Average exec latency on Asterinas", "unit": "µs", "value": 0, - "extra": "aster_avg" + "extra": "aster_result" } ] \ No newline at end of file diff --git a/test/benchmark/lmbench-exec/run.sh b/test/benchmark/lmbench/process_exec_lat/run.sh similarity index 100% rename from test/benchmark/lmbench-exec/run.sh rename to test/benchmark/lmbench/process_exec_lat/run.sh diff --git a/test/benchmark/lmbench-fork/config.json b/test/benchmark/lmbench/process_fork_lat/config.json similarity index 62% rename from test/benchmark/lmbench-fork/config.json rename to test/benchmark/lmbench/process_fork_lat/config.json index 98208949..4cc85001 100644 --- a/test/benchmark/lmbench-fork/config.json +++ b/test/benchmark/lmbench/process_fork_lat/config.json @@ -3,5 +3,6 @@ "alert_tool": "customSmallerIsBetter", "search_pattern": "Process fork", "result_index": "3", - "description": "The latency of the fork system call on a single processor." -} + "description": "lat_proc fork", + "title": "[Process] The cost of fork+exit" +} \ No newline at end of file diff --git a/test/benchmark/lmbench-fork/result_template.json b/test/benchmark/lmbench/process_fork_lat/result_template.json similarity index 77% rename from test/benchmark/lmbench-fork/result_template.json rename to test/benchmark/lmbench/process_fork_lat/result_template.json index 84aba255..a16eec5c 100644 --- a/test/benchmark/lmbench-fork/result_template.json +++ b/test/benchmark/lmbench/process_fork_lat/result_template.json @@ -3,12 +3,12 @@ "name": "Average Fork latency on Linux", "unit": "µs", "value": 0, - "extra": "linux_avg" + "extra": "linux_result" }, { "name": "Average Fork latency on Asterinas", "unit": "µs", "value": 0, - "extra": "aster_avg" + "extra": "aster_result" } ] \ No newline at end of file diff --git a/test/benchmark/lmbench-fork/run.sh b/test/benchmark/lmbench/process_fork_lat/run.sh similarity index 100% rename from test/benchmark/lmbench-fork/run.sh rename to test/benchmark/lmbench/process_fork_lat/run.sh diff --git a/test/benchmark/lmbench-getpid/config.json b/test/benchmark/lmbench/process_getppid_lat/config.json similarity index 62% rename from test/benchmark/lmbench-getpid/config.json rename to test/benchmark/lmbench/process_getppid_lat/config.json index 28af7a1c..51429868 100644 --- a/test/benchmark/lmbench-getpid/config.json +++ b/test/benchmark/lmbench/process_getppid_lat/config.json @@ -3,5 +3,6 @@ "alert_tool": "customSmallerIsBetter", "search_pattern": "Simple syscall:", "result_index": "3", - "description": "The latency of the getpid system call on a single processor." -} + "description": "lat_syscall null", + "title": "[Process] The cost of getppid" +} \ No newline at end of file diff --git a/test/benchmark/lmbench-getpid/result_template.json b/test/benchmark/lmbench/process_getppid_lat/result_template.json similarity index 77% rename from test/benchmark/lmbench-getpid/result_template.json rename to test/benchmark/lmbench/process_getppid_lat/result_template.json index de46f2fd..c11b3418 100644 --- a/test/benchmark/lmbench-getpid/result_template.json +++ b/test/benchmark/lmbench/process_getppid_lat/result_template.json @@ -3,12 +3,12 @@ "name": "Average syscall latency on Linux", "unit": "µs", "value": 0, - "extra": "linux_avg" + "extra": "linux_result" }, { "name": "Average syscall latency on Asterinas", "unit": "µs", "value": 0, - "extra": "aster_avg" + "extra": "aster_result" } ] \ No newline at end of file diff --git a/test/benchmark/lmbench-getpid/run.sh b/test/benchmark/lmbench/process_getppid_lat/run.sh similarity index 100% rename from test/benchmark/lmbench-getpid/run.sh rename to test/benchmark/lmbench/process_getppid_lat/run.sh diff --git a/test/benchmark/lmbench-shell/config.json b/test/benchmark/lmbench/process_shell_lat/config.json similarity index 60% rename from test/benchmark/lmbench-shell/config.json rename to test/benchmark/lmbench/process_shell_lat/config.json index 2a101eb6..3bfc039e 100644 --- a/test/benchmark/lmbench-shell/config.json +++ b/test/benchmark/lmbench/process_shell_lat/config.json @@ -3,5 +3,6 @@ "alert_tool": "customSmallerIsBetter", "search_pattern": "Process fork\\+\\/bin\\/sh", "result_index": "4", - "description": "The latency of creating and executing a shell process on a single processor." -} + "description": "lat_proc shell", + "title": "[Process] The cost of fork+exec+shell+exit" +} \ No newline at end of file diff --git a/test/benchmark/lmbench-shell/result_template.json b/test/benchmark/lmbench/process_shell_lat/result_template.json similarity index 77% rename from test/benchmark/lmbench-shell/result_template.json rename to test/benchmark/lmbench/process_shell_lat/result_template.json index 71d42ccb..be1284ab 100644 --- a/test/benchmark/lmbench-shell/result_template.json +++ b/test/benchmark/lmbench/process_shell_lat/result_template.json @@ -3,12 +3,12 @@ "name": "Average shell latency on Linux", "unit": "µs", "value": 0, - "extra": "linux_avg" + "extra": "linux_result" }, { "name": "Average shell latency on Asterinas", "unit": "µs", "value": 0, - "extra": "aster_avg" + "extra": "aster_result" } ] \ No newline at end of file diff --git a/test/benchmark/lmbench-shell/run.sh b/test/benchmark/lmbench/process_shell_lat/run.sh similarity index 100% rename from test/benchmark/lmbench-shell/run.sh rename to test/benchmark/lmbench/process_shell_lat/run.sh diff --git a/test/benchmark/lmbench-fs-create-delete-files-0k/config.json b/test/benchmark/lmbench/ramfs_create_delete_files_0k_ops/config.json similarity index 54% rename from test/benchmark/lmbench-fs-create-delete-files-0k/config.json rename to test/benchmark/lmbench/ramfs_create_delete_files_0k_ops/config.json index 375349bb..c2046c93 100644 --- a/test/benchmark/lmbench-fs-create-delete-files-0k/config.json +++ b/test/benchmark/lmbench/ramfs_create_delete_files_0k_ops/config.json @@ -3,5 +3,6 @@ "alert_tool": "customBiggerIsBetter", "search_pattern": "^0k", "result_index": "2", - "description": "The number of 0k-sized files created then deleted over a duration." -} + "description": "lat_fs -s 0k", + "title": "[Ramfs] The cost of creating/deleting small files (0KB)" +} \ No newline at end of file diff --git a/test/benchmark/lmbench-fs-create-delete-files-0k/result_template.json b/test/benchmark/lmbench/ramfs_create_delete_files_0k_ops/result_template.json similarity index 79% rename from test/benchmark/lmbench-fs-create-delete-files-0k/result_template.json rename to test/benchmark/lmbench/ramfs_create_delete_files_0k_ops/result_template.json index 952144b6..5cb036ba 100644 --- a/test/benchmark/lmbench-fs-create-delete-files-0k/result_template.json +++ b/test/benchmark/lmbench/ramfs_create_delete_files_0k_ops/result_template.json @@ -3,12 +3,12 @@ "name": "Number of created/deleted files on Linux", "unit": "number", "value": 0, - "extra": "linux_avg" + "extra": "linux_result" }, { "name": "Number of created/deleted files on Asterinas", "unit": "number", "value": 0, - "extra": "aster_avg" + "extra": "aster_result" } ] \ No newline at end of file diff --git a/test/benchmark/lmbench-fs-create-delete-files-0k/run.sh b/test/benchmark/lmbench/ramfs_create_delete_files_0k_ops/run.sh similarity index 100% rename from test/benchmark/lmbench-fs-create-delete-files-0k/run.sh rename to test/benchmark/lmbench/ramfs_create_delete_files_0k_ops/run.sh diff --git a/test/benchmark/lmbench-fs-create-delete-files-10k/config.json b/test/benchmark/lmbench/ramfs_create_delete_files_10k_ops/config.json similarity index 54% rename from test/benchmark/lmbench-fs-create-delete-files-10k/config.json rename to test/benchmark/lmbench/ramfs_create_delete_files_10k_ops/config.json index 83477769..0bc3aa21 100644 --- a/test/benchmark/lmbench-fs-create-delete-files-10k/config.json +++ b/test/benchmark/lmbench/ramfs_create_delete_files_10k_ops/config.json @@ -3,5 +3,6 @@ "alert_tool": "customBiggerIsBetter", "search_pattern": "10k", "result_index": "2", - "description": "The number of 10k-sized files created then deleted over a duration." -} + "description": "lat_fs -s 10K", + "title": "[Ramfs] The cost of creating/deleting small files (10KB)" +} \ No newline at end of file diff --git a/test/benchmark/lmbench-fs-create-delete-files-10k/result_template.json b/test/benchmark/lmbench/ramfs_create_delete_files_10k_ops/result_template.json similarity index 79% rename from test/benchmark/lmbench-fs-create-delete-files-10k/result_template.json rename to test/benchmark/lmbench/ramfs_create_delete_files_10k_ops/result_template.json index 952144b6..5cb036ba 100644 --- a/test/benchmark/lmbench-fs-create-delete-files-10k/result_template.json +++ b/test/benchmark/lmbench/ramfs_create_delete_files_10k_ops/result_template.json @@ -3,12 +3,12 @@ "name": "Number of created/deleted files on Linux", "unit": "number", "value": 0, - "extra": "linux_avg" + "extra": "linux_result" }, { "name": "Number of created/deleted files on Asterinas", "unit": "number", "value": 0, - "extra": "aster_avg" + "extra": "aster_result" } ] \ No newline at end of file diff --git a/test/benchmark/lmbench-fs-create-delete-files-10k/run.sh b/test/benchmark/lmbench/ramfs_create_delete_files_10k_ops/run.sh similarity index 100% rename from test/benchmark/lmbench-fs-create-delete-files-10k/run.sh rename to test/benchmark/lmbench/ramfs_create_delete_files_10k_ops/run.sh diff --git a/test/benchmark/lmbench-semaphore/config.json b/test/benchmark/lmbench/semaphore_lat/config.json similarity index 65% rename from test/benchmark/lmbench-semaphore/config.json rename to test/benchmark/lmbench/semaphore_lat/config.json index 37796d3f..84e7c1b3 100644 --- a/test/benchmark/lmbench-semaphore/config.json +++ b/test/benchmark/lmbench/semaphore_lat/config.json @@ -3,5 +3,6 @@ "alert_tool": "customSmallerIsBetter", "search_pattern": "Semaphore latency:", "result_index": "3", - "description": "The latency of semaphore on a single processor." -} + "description": "lat_sem", + "title": "[Semaphores] The cost of semop" +} \ No newline at end of file diff --git a/test/benchmark/lmbench-semaphore/result_template.json b/test/benchmark/lmbench/semaphore_lat/result_template.json similarity index 77% rename from test/benchmark/lmbench-semaphore/result_template.json rename to test/benchmark/lmbench/semaphore_lat/result_template.json index a988c401..e9b868b9 100644 --- a/test/benchmark/lmbench-semaphore/result_template.json +++ b/test/benchmark/lmbench/semaphore_lat/result_template.json @@ -3,12 +3,12 @@ "name": "Average semaphore latency on Linux", "unit": "µs", "value": 0, - "extra": "linux_avg" + "extra": "linux_result" }, { "name": "Average semaphore latency on Asterinas", "unit": "µs", "value": 0, - "extra": "aster_avg" + "extra": "aster_result" } ] \ No newline at end of file diff --git a/test/benchmark/lmbench-semaphore/run.sh b/test/benchmark/lmbench/semaphore_lat/run.sh similarity index 100% rename from test/benchmark/lmbench-semaphore/run.sh rename to test/benchmark/lmbench/semaphore_lat/run.sh diff --git a/test/benchmark/lmbench-signal/config.json b/test/benchmark/lmbench/signal_catch_lat/config.json similarity index 62% rename from test/benchmark/lmbench-signal/config.json rename to test/benchmark/lmbench/signal_catch_lat/config.json index baf45a97..9f434079 100644 --- a/test/benchmark/lmbench-signal/config.json +++ b/test/benchmark/lmbench/signal_catch_lat/config.json @@ -3,5 +3,6 @@ "alert_tool": "customSmallerIsBetter", "search_pattern": "Signal handler overhead:", "result_index": "4", - "description": "The latency of signal handling on a single processor." -} + "description": "lat_sig catch", + "title": "[Signals] The cost of catching a signal" +} \ No newline at end of file diff --git a/test/benchmark/lmbench-signal/result_template.json b/test/benchmark/lmbench/signal_catch_lat/result_template.json similarity index 78% rename from test/benchmark/lmbench-signal/result_template.json rename to test/benchmark/lmbench/signal_catch_lat/result_template.json index 139b0ae1..baa38e53 100644 --- a/test/benchmark/lmbench-signal/result_template.json +++ b/test/benchmark/lmbench/signal_catch_lat/result_template.json @@ -3,12 +3,12 @@ "name": "Average Signal handler overhead on Linux", "unit": "µs", "value": 0, - "extra": "linux_avg" + "extra": "linux_result" }, { "name": "Average Signal handler overhead on Asterinas", "unit": "µs", "value": 0, - "extra": "aster_avg" + "extra": "aster_result" } ] \ No newline at end of file diff --git a/test/benchmark/lmbench-signal/run.sh b/test/benchmark/lmbench/signal_catch_lat/run.sh similarity index 100% rename from test/benchmark/lmbench-signal/run.sh rename to test/benchmark/lmbench/signal_catch_lat/run.sh diff --git a/test/benchmark/lmbench-signal-install/config.json b/test/benchmark/lmbench/signal_install_lat/config.json similarity index 59% rename from test/benchmark/lmbench-signal-install/config.json rename to test/benchmark/lmbench/signal_install_lat/config.json index f6e459af..b974a849 100644 --- a/test/benchmark/lmbench-signal-install/config.json +++ b/test/benchmark/lmbench/signal_install_lat/config.json @@ -3,5 +3,6 @@ "alert_tool": "customSmallerIsBetter", "search_pattern": "Signal handler installation:", "result_index": "4", - "description": "The latency of signal handling on a single processor." -} + "description": "lat_sig install", + "title": "[Signals] The cost of installing a signal handler" +} \ No newline at end of file diff --git a/test/benchmark/lmbench-signal-install/result_template.json b/test/benchmark/lmbench/signal_install_lat/result_template.json similarity index 79% rename from test/benchmark/lmbench-signal-install/result_template.json rename to test/benchmark/lmbench/signal_install_lat/result_template.json index c45ea244..81a23a03 100644 --- a/test/benchmark/lmbench-signal-install/result_template.json +++ b/test/benchmark/lmbench/signal_install_lat/result_template.json @@ -3,12 +3,12 @@ "name": "Average Signal handler install latency on Linux", "unit": "µs", "value": 0, - "extra": "linux_avg" + "extra": "linux_result" }, { "name": "Average Signal handler install latency on Asterinas", "unit": "µs", "value": 0, - "extra": "aster_avg" + "extra": "aster_result" } ] \ No newline at end of file diff --git a/test/benchmark/lmbench-signal-install/run.sh b/test/benchmark/lmbench/signal_install_lat/run.sh similarity index 100% rename from test/benchmark/lmbench-signal-install/run.sh rename to test/benchmark/lmbench/signal_install_lat/run.sh diff --git a/test/benchmark/lmbench-signal-prot/config.json b/test/benchmark/lmbench/signal_prot_lat/config.json similarity index 60% rename from test/benchmark/lmbench-signal-prot/config.json rename to test/benchmark/lmbench/signal_prot_lat/config.json index 0b65b293..fc2cdaf1 100644 --- a/test/benchmark/lmbench-signal-prot/config.json +++ b/test/benchmark/lmbench/signal_prot_lat/config.json @@ -3,5 +3,6 @@ "alert_tool": "customSmallerIsBetter", "search_pattern": "Protection fault:", "result_index": "3", - "description": "The latency to catch a protection fault on a single processor." -} + "description": "lat_sig prot", + "title": "[Signals] The cost of catching a segfault" +} \ No newline at end of file diff --git a/test/benchmark/lmbench-signal-prot/result_template.json b/test/benchmark/lmbench/signal_prot_lat/result_template.json similarity index 78% rename from test/benchmark/lmbench-signal-prot/result_template.json rename to test/benchmark/lmbench/signal_prot_lat/result_template.json index dbb1a152..e3690458 100644 --- a/test/benchmark/lmbench-signal-prot/result_template.json +++ b/test/benchmark/lmbench/signal_prot_lat/result_template.json @@ -3,12 +3,12 @@ "name": "Average protection fault latency on Linux", "unit": "µs", "value": 0, - "extra": "linux_avg" + "extra": "linux_result" }, { "name": "Average protection fault latency on Asterinas", "unit": "µs", "value": 0, - "extra": "aster_avg" + "extra": "aster_result" } ] \ No newline at end of file diff --git a/test/benchmark/lmbench-signal-prot/run.sh b/test/benchmark/lmbench/signal_prot_lat/run.sh similarity index 100% rename from test/benchmark/lmbench-signal-prot/run.sh rename to test/benchmark/lmbench/signal_prot_lat/run.sh diff --git a/test/benchmark/lmbench-tcp-bandwidth-localhost/config.json b/test/benchmark/lmbench/tcp_loopback_bw/config.json similarity index 60% rename from test/benchmark/lmbench-tcp-bandwidth-localhost/config.json rename to test/benchmark/lmbench/tcp_loopback_bw/config.json index cd40a4a5..4b49e560 100644 --- a/test/benchmark/lmbench-tcp-bandwidth-localhost/config.json +++ b/test/benchmark/lmbench/tcp_loopback_bw/config.json @@ -3,5 +3,6 @@ "alert_tool": "customBiggerIsBetter", "search_pattern": "0.004096 ", "result_index": "2", - "description": "The bandwidth of TCP with 4096 message size in localhost." -} + "description": "bw_tcp -l", + "title": "[TCP sockets] The bandwidth (localhost)" +} \ No newline at end of file diff --git a/test/benchmark/lmbench-tcp-bandwidth-localhost/result_template.json b/test/benchmark/lmbench/tcp_loopback_bw/result_template.json similarity index 77% rename from test/benchmark/lmbench-tcp-bandwidth-localhost/result_template.json rename to test/benchmark/lmbench/tcp_loopback_bw/result_template.json index b7d31939..5fd2e909 100644 --- a/test/benchmark/lmbench-tcp-bandwidth-localhost/result_template.json +++ b/test/benchmark/lmbench/tcp_loopback_bw/result_template.json @@ -3,12 +3,12 @@ "name": "Average TCP bandwidth on Linux", "unit": "MB/s", "value": 0, - "extra": "linux_avg" + "extra": "linux_result" }, { "name": "Average TCP bandwidth on Asterinas", "unit": "MB/s", "value": 0, - "extra": "aster_avg" + "extra": "aster_result" } ] \ No newline at end of file diff --git a/test/benchmark/lmbench-tcp-bandwidth-localhost/run.sh b/test/benchmark/lmbench/tcp_loopback_bw/run.sh similarity index 100% rename from test/benchmark/lmbench-tcp-bandwidth-localhost/run.sh rename to test/benchmark/lmbench/tcp_loopback_bw/run.sh diff --git a/test/benchmark/lmbench-tcp-connect-latency/config.json b/test/benchmark/lmbench/tcp_loopback_connect_lat/config.json similarity index 65% rename from test/benchmark/lmbench-tcp-connect-latency/config.json rename to test/benchmark/lmbench/tcp_loopback_connect_lat/config.json index bd15a67e..390d6363 100644 --- a/test/benchmark/lmbench-tcp-connect-latency/config.json +++ b/test/benchmark/lmbench/tcp_loopback_connect_lat/config.json @@ -3,5 +3,6 @@ "alert_tool": "customSmallerIsBetter", "search_pattern": "TCP\\/IP connection cost to 127.0.0.1:", "result_index": "6", - "description": "The latency of TCP connection on localhost." -} + "description": "lat_connect", + "title": "[TCP sockets] The latency of connect" +} \ No newline at end of file diff --git a/test/benchmark/lmbench-tcp-connect-latency/result_template.json b/test/benchmark/lmbench/tcp_loopback_connect_lat/result_template.json similarity index 78% rename from test/benchmark/lmbench-tcp-connect-latency/result_template.json rename to test/benchmark/lmbench/tcp_loopback_connect_lat/result_template.json index 52ea2219..63838f60 100644 --- a/test/benchmark/lmbench-tcp-connect-latency/result_template.json +++ b/test/benchmark/lmbench/tcp_loopback_connect_lat/result_template.json @@ -3,12 +3,12 @@ "name": "Average TCP connection latency on Linux", "unit": "µs", "value": 0, - "extra": "linux_avg" + "extra": "linux_result" }, { "name": "Average TCP connection latency on Asterinas", "unit": "µs", "value": 0, - "extra": "aster_avg" + "extra": "aster_result" } ] \ No newline at end of file diff --git a/test/benchmark/lmbench-tcp-connect-latency/run.sh b/test/benchmark/lmbench/tcp_loopback_connect_lat/run.sh similarity index 100% rename from test/benchmark/lmbench-tcp-connect-latency/run.sh rename to test/benchmark/lmbench/tcp_loopback_connect_lat/run.sh diff --git a/test/benchmark/lmbench-http-bandwidth/config.json b/test/benchmark/lmbench/tcp_loopback_http_bw/config.json similarity index 62% rename from test/benchmark/lmbench-http-bandwidth/config.json rename to test/benchmark/lmbench/tcp_loopback_http_bw/config.json index db89db16..f8a85003 100644 --- a/test/benchmark/lmbench-http-bandwidth/config.json +++ b/test/benchmark/lmbench/tcp_loopback_http_bw/config.json @@ -3,5 +3,6 @@ "alert_tool": "customBiggerIsBetter", "search_pattern": "Avg xfer: ", "result_index": "8", - "description": "The bandwidth of simple HTTP transaction with 64MB file." -} + "description": "bw_http", + "title": "[HTTP] The bandwidth" +} \ No newline at end of file diff --git a/test/benchmark/lmbench-http-bandwidth/result_template.json b/test/benchmark/lmbench/tcp_loopback_http_bw/result_template.json similarity index 80% rename from test/benchmark/lmbench-http-bandwidth/result_template.json rename to test/benchmark/lmbench/tcp_loopback_http_bw/result_template.json index 701cdb3e..26dc98a5 100644 --- a/test/benchmark/lmbench-http-bandwidth/result_template.json +++ b/test/benchmark/lmbench/tcp_loopback_http_bw/result_template.json @@ -3,12 +3,12 @@ "name": "Average simple HTTP transaction bandwidth on Linux", "unit": "MB/s", "value": 0, - "extra": "linux_avg" + "extra": "linux_result" }, { "name": "Average simple HTTP transaction bandwidth on Asterinas", "unit": "MB/s", "value": 0, - "extra": "aster_avg" + "extra": "aster_result" } ] \ No newline at end of file diff --git a/test/benchmark/lmbench-http-bandwidth/run.sh b/test/benchmark/lmbench/tcp_loopback_http_bw/run.sh similarity index 100% rename from test/benchmark/lmbench-http-bandwidth/run.sh rename to test/benchmark/lmbench/tcp_loopback_http_bw/run.sh diff --git a/test/benchmark/lmbench-tcp-latency-localhost/config.json b/test/benchmark/lmbench/tcp_loopback_lat/config.json similarity index 64% rename from test/benchmark/lmbench-tcp-latency-localhost/config.json rename to test/benchmark/lmbench/tcp_loopback_lat/config.json index 59dbd8f9..fbdea056 100644 --- a/test/benchmark/lmbench-tcp-latency-localhost/config.json +++ b/test/benchmark/lmbench/tcp_loopback_lat/config.json @@ -3,5 +3,6 @@ "alert_tool": "customSmallerIsBetter", "search_pattern": "TCP latency using 127.0.0.1:", "result_index": "5", - "description": "The latency of TCP on localhost." -} + "description": "lat_tcp", + "title": "[TCP sockets] The latency of write+read" +} \ No newline at end of file diff --git a/test/benchmark/lmbench-tcp-latency-localhost/result_template.json b/test/benchmark/lmbench/tcp_loopback_lat/result_template.json similarity index 76% rename from test/benchmark/lmbench-tcp-latency-localhost/result_template.json rename to test/benchmark/lmbench/tcp_loopback_lat/result_template.json index 90558be3..008c75bb 100644 --- a/test/benchmark/lmbench-tcp-latency-localhost/result_template.json +++ b/test/benchmark/lmbench/tcp_loopback_lat/result_template.json @@ -3,12 +3,12 @@ "name": "Average TCP latency on Linux", "unit": "µs", "value": 0, - "extra": "linux_avg" + "extra": "linux_result" }, { "name": "Average TCP latency on Asterinas", "unit": "µs", "value": 0, - "extra": "aster_avg" + "extra": "aster_result" } ] \ No newline at end of file diff --git a/test/benchmark/lmbench-tcp-latency-localhost/run.sh b/test/benchmark/lmbench/tcp_loopback_lat/run.sh similarity index 100% rename from test/benchmark/lmbench-tcp-latency-localhost/run.sh rename to test/benchmark/lmbench/tcp_loopback_lat/run.sh diff --git a/test/benchmark/lmbench-select-tcp/config.json b/test/benchmark/lmbench/tcp_loopback_select_lat/config.json similarity index 63% rename from test/benchmark/lmbench-select-tcp/config.json rename to test/benchmark/lmbench/tcp_loopback_select_lat/config.json index 5eb13ca9..f13d8ebc 100644 --- a/test/benchmark/lmbench-select-tcp/config.json +++ b/test/benchmark/lmbench/tcp_loopback_select_lat/config.json @@ -3,5 +3,6 @@ "alert_tool": "customSmallerIsBetter", "search_pattern": "Select on 200 tcp fd's:", "result_index": "6", - "description": "The latency of select TCP on a single processor." -} + "description": "lat_select", + "title": "[Network] The cost of select (TCP fds)" +} \ No newline at end of file diff --git a/test/benchmark/lmbench-select-tcp/result_template.json b/test/benchmark/lmbench/tcp_loopback_select_lat/result_template.json similarity index 78% rename from test/benchmark/lmbench-select-tcp/result_template.json rename to test/benchmark/lmbench/tcp_loopback_select_lat/result_template.json index 29d6bff7..793c3342 100644 --- a/test/benchmark/lmbench-select-tcp/result_template.json +++ b/test/benchmark/lmbench/tcp_loopback_select_lat/result_template.json @@ -3,12 +3,12 @@ "name": "Average select TCP latency on Linux", "unit": "µs", "value": 0, - "extra": "linux_avg" + "extra": "linux_result" }, { "name": "Average select TCP latency on Asterinas", "unit": "µs", "value": 0, - "extra": "aster_avg" + "extra": "aster_result" } ] \ No newline at end of file diff --git a/test/benchmark/lmbench-select-tcp/run.sh b/test/benchmark/lmbench/tcp_loopback_select_lat/run.sh similarity index 100% rename from test/benchmark/lmbench-select-tcp/run.sh rename to test/benchmark/lmbench/tcp_loopback_select_lat/run.sh diff --git a/test/benchmark/lmbench-udp-latency-localhost/config.json b/test/benchmark/lmbench/udp_loopback_lat/config.json similarity index 64% rename from test/benchmark/lmbench-udp-latency-localhost/config.json rename to test/benchmark/lmbench/udp_loopback_lat/config.json index a9bdd7d8..629139ae 100644 --- a/test/benchmark/lmbench-udp-latency-localhost/config.json +++ b/test/benchmark/lmbench/udp_loopback_lat/config.json @@ -3,5 +3,6 @@ "alert_tool": "customSmallerIsBetter", "search_pattern": "UDP latency using 127.0.0.1:", "result_index": "5", - "description": "The latency of UDP on localhost." -} + "description": "lat_udp", + "title": "[UDP sockets] The latency of write+read" +} \ No newline at end of file diff --git a/test/benchmark/lmbench-udp-latency-localhost/result_template.json b/test/benchmark/lmbench/udp_loopback_lat/result_template.json similarity index 76% rename from test/benchmark/lmbench-udp-latency-localhost/result_template.json rename to test/benchmark/lmbench/udp_loopback_lat/result_template.json index b4591152..bbd9d00c 100644 --- a/test/benchmark/lmbench-udp-latency-localhost/result_template.json +++ b/test/benchmark/lmbench/udp_loopback_lat/result_template.json @@ -3,12 +3,12 @@ "name": "Average UDP latency on Linux", "unit": "µs", "value": 0, - "extra": "linux_avg" + "extra": "linux_result" }, { "name": "Average UDP latency on Asterinas", "unit": "µs", "value": 0, - "extra": "aster_avg" + "extra": "aster_result" } ] \ No newline at end of file diff --git a/test/benchmark/lmbench-udp-latency-localhost/run.sh b/test/benchmark/lmbench/udp_loopback_lat/run.sh similarity index 100% rename from test/benchmark/lmbench-udp-latency-localhost/run.sh rename to test/benchmark/lmbench/udp_loopback_lat/run.sh diff --git a/test/benchmark/lmbench-unix-bandwidth/config.json b/test/benchmark/lmbench/unix_bw/config.json similarity index 61% rename from test/benchmark/lmbench-unix-bandwidth/config.json rename to test/benchmark/lmbench/unix_bw/config.json index 6123079e..3c056cb8 100644 --- a/test/benchmark/lmbench-unix-bandwidth/config.json +++ b/test/benchmark/lmbench/unix_bw/config.json @@ -3,5 +3,6 @@ "alert_tool": "customBiggerIsBetter", "search_pattern": "sock stream bandwidth", "result_index": "5", - "description": "The bandwidth of UNIX domain socket communication on a single processor." + "description": "bw_unix", + "title": "[Unix sockets] The bandwidth" } \ No newline at end of file diff --git a/test/benchmark/lmbench-unix-bandwidth/result_template.json b/test/benchmark/lmbench/unix_bw/result_template.json similarity index 77% rename from test/benchmark/lmbench-unix-bandwidth/result_template.json rename to test/benchmark/lmbench/unix_bw/result_template.json index df9e2f24..fb3111eb 100644 --- a/test/benchmark/lmbench-unix-bandwidth/result_template.json +++ b/test/benchmark/lmbench/unix_bw/result_template.json @@ -3,12 +3,12 @@ "name": "Average unix bandwidth on Linux", "unit": "MB/s", "value": 0, - "extra": "linux_avg" + "extra": "linux_result" }, { "name": "Average unix bandwidth on Asterinas", "unit": "MB/s", "value": 0, - "extra": "aster_avg" + "extra": "aster_result" } ] \ No newline at end of file diff --git a/test/benchmark/lmbench-unix-bandwidth/run.sh b/test/benchmark/lmbench/unix_bw/run.sh similarity index 100% rename from test/benchmark/lmbench-unix-bandwidth/run.sh rename to test/benchmark/lmbench/unix_bw/run.sh diff --git a/test/benchmark/lmbench-unix-connect-latency/config.json b/test/benchmark/lmbench/unix_connect_lat/config.json similarity index 62% rename from test/benchmark/lmbench-unix-connect-latency/config.json rename to test/benchmark/lmbench/unix_connect_lat/config.json index 13b91960..09e5c91b 100644 --- a/test/benchmark/lmbench-unix-connect-latency/config.json +++ b/test/benchmark/lmbench/unix_connect_lat/config.json @@ -3,5 +3,6 @@ "alert_tool": "customSmallerIsBetter", "search_pattern": "UNIX connection cost:", "result_index": "4", - "description": "The latency of UNIX domain socket connection on a single processor." + "description": "lat_connect", + "title": "[Unix sockets] The latency of connect" } \ No newline at end of file diff --git a/test/benchmark/lmbench-unix-connect-latency/result_template.json b/test/benchmark/lmbench/unix_connect_lat/result_template.json similarity index 78% rename from test/benchmark/lmbench-unix-connect-latency/result_template.json rename to test/benchmark/lmbench/unix_connect_lat/result_template.json index fc4d2f6c..894a30b4 100644 --- a/test/benchmark/lmbench-unix-connect-latency/result_template.json +++ b/test/benchmark/lmbench/unix_connect_lat/result_template.json @@ -3,12 +3,12 @@ "name": "Average unix connect latency on Linux", "unit": "µs", "value": 0, - "extra": "linux_avg" + "extra": "linux_result" }, { "name": "Average unix connect latency on Asterinas", "unit": "µs", "value": 0, - "extra": "aster_avg" + "extra": "aster_result" } ] \ No newline at end of file diff --git a/test/benchmark/lmbench-unix-connect-latency/run.sh b/test/benchmark/lmbench/unix_connect_lat/run.sh similarity index 100% rename from test/benchmark/lmbench-unix-connect-latency/run.sh rename to test/benchmark/lmbench/unix_connect_lat/run.sh diff --git a/test/benchmark/lmbench-unix-latency/config.json b/test/benchmark/lmbench/unix_lat/config.json similarity index 61% rename from test/benchmark/lmbench-unix-latency/config.json rename to test/benchmark/lmbench/unix_lat/config.json index 0f0c27c5..cee9a630 100644 --- a/test/benchmark/lmbench-unix-latency/config.json +++ b/test/benchmark/lmbench/unix_lat/config.json @@ -3,5 +3,6 @@ "alert_tool": "customSmallerIsBetter", "search_pattern": "sock stream latency", "result_index": "5", - "description": "The latency of UNIX domain socket communication on a single processor." + "description": "lat_unix", + "title": "[Unix sockets] The latency of write+read" } \ No newline at end of file diff --git a/test/benchmark/lmbench-unix-latency/result_template.json b/test/benchmark/lmbench/unix_lat/result_template.json similarity index 77% rename from test/benchmark/lmbench-unix-latency/result_template.json rename to test/benchmark/lmbench/unix_lat/result_template.json index 8015016b..0efb765a 100644 --- a/test/benchmark/lmbench-unix-latency/result_template.json +++ b/test/benchmark/lmbench/unix_lat/result_template.json @@ -3,12 +3,12 @@ "name": "Average unix latency on Linux", "unit": "µs", "value": 0, - "extra": "linux_avg" + "extra": "linux_result" }, { "name": "Average unix latency on Asterinas", "unit": "µs", "value": 0, - "extra": "aster_avg" + "extra": "aster_result" } ] \ No newline at end of file diff --git a/test/benchmark/lmbench-unix-latency/run.sh b/test/benchmark/lmbench/unix_lat/run.sh similarity index 100% rename from test/benchmark/lmbench-unix-latency/run.sh rename to test/benchmark/lmbench/unix_lat/run.sh diff --git a/test/benchmark/lmbench-fcntl/config.json b/test/benchmark/lmbench/vfs_fcntl_lat/config.json similarity index 59% rename from test/benchmark/lmbench-fcntl/config.json rename to test/benchmark/lmbench/vfs_fcntl_lat/config.json index 35d9a174..d1b46a57 100644 --- a/test/benchmark/lmbench-fcntl/config.json +++ b/test/benchmark/lmbench/vfs_fcntl_lat/config.json @@ -3,5 +3,6 @@ "alert_tool": "customSmallerIsBetter", "search_pattern": "Fcntl lock latency:", "result_index": "4", - "description": "The latency of file locking on a single processor." -} + "description": "lat_fcntl", + "title": "[VFS] The cost of record locking/unlocking via fcntl" +} \ No newline at end of file diff --git a/test/benchmark/lmbench-fcntl/result_template.json b/test/benchmark/lmbench/vfs_fcntl_lat/result_template.json similarity index 78% rename from test/benchmark/lmbench-fcntl/result_template.json rename to test/benchmark/lmbench/vfs_fcntl_lat/result_template.json index c36168b7..a358744a 100644 --- a/test/benchmark/lmbench-fcntl/result_template.json +++ b/test/benchmark/lmbench/vfs_fcntl_lat/result_template.json @@ -3,12 +3,12 @@ "name": "Average file locking latency on Linux", "unit": "µs", "value": 0, - "extra": "linux_avg" + "extra": "linux_result" }, { "name": "Average file locking latency on Asterinas", "unit": "µs", "value": 0, - "extra": "aster_avg" + "extra": "aster_result" } ] \ No newline at end of file diff --git a/test/benchmark/lmbench-fcntl/run.sh b/test/benchmark/lmbench/vfs_fcntl_lat/run.sh similarity index 100% rename from test/benchmark/lmbench-fcntl/run.sh rename to test/benchmark/lmbench/vfs_fcntl_lat/run.sh diff --git a/test/benchmark/lmbench-fstat/config.json b/test/benchmark/lmbench/vfs_fstat_lat/config.json similarity index 62% rename from test/benchmark/lmbench-fstat/config.json rename to test/benchmark/lmbench/vfs_fstat_lat/config.json index d61481ad..eabb9bf9 100644 --- a/test/benchmark/lmbench-fstat/config.json +++ b/test/benchmark/lmbench/vfs_fstat_lat/config.json @@ -3,5 +3,6 @@ "alert_tool": "customSmallerIsBetter", "search_pattern": "Simple fstat", "result_index": "3", - "description": "The latency of the fstat system call on a single processor." -} + "description": "lat_syscall fstat", + "title": "[VFS] The cost of fstat" +} \ No newline at end of file diff --git a/test/benchmark/lmbench-fstat/result_template.json b/test/benchmark/lmbench/vfs_fstat_lat/result_template.json similarity index 77% rename from test/benchmark/lmbench-fstat/result_template.json rename to test/benchmark/lmbench/vfs_fstat_lat/result_template.json index d6bf89e0..28b7c40b 100644 --- a/test/benchmark/lmbench-fstat/result_template.json +++ b/test/benchmark/lmbench/vfs_fstat_lat/result_template.json @@ -3,12 +3,12 @@ "name": "Average fstat latency on Linux", "unit": "µs", "value": 0, - "extra": "linux_avg" + "extra": "linux_result" }, { "name": "Average fstat latency on Asterinas", "unit": "µs", "value": 0, - "extra": "aster_avg" + "extra": "aster_result" } ] \ No newline at end of file diff --git a/test/benchmark/lmbench-fstat/run.sh b/test/benchmark/lmbench/vfs_fstat_lat/run.sh similarity index 100% rename from test/benchmark/lmbench-fstat/run.sh rename to test/benchmark/lmbench/vfs_fstat_lat/run.sh diff --git a/test/benchmark/lmbench-open/config.json b/test/benchmark/lmbench/vfs_open_lat/config.json similarity index 63% rename from test/benchmark/lmbench-open/config.json rename to test/benchmark/lmbench/vfs_open_lat/config.json index 9839e39b..39eae38e 100644 --- a/test/benchmark/lmbench-open/config.json +++ b/test/benchmark/lmbench/vfs_open_lat/config.json @@ -3,5 +3,6 @@ "alert_tool": "customSmallerIsBetter", "search_pattern": "Simple open\\/close", "result_index": "3", - "description": "The latency of the open system call on a single processor." -} + "description": "lat_syscall open", + "title": "[VFS] The cost of open+close" +} \ No newline at end of file diff --git a/test/benchmark/lmbench-open/result_template.json b/test/benchmark/lmbench/vfs_open_lat/result_template.json similarity index 77% rename from test/benchmark/lmbench-open/result_template.json rename to test/benchmark/lmbench/vfs_open_lat/result_template.json index 45e99829..353d332b 100644 --- a/test/benchmark/lmbench-open/result_template.json +++ b/test/benchmark/lmbench/vfs_open_lat/result_template.json @@ -3,12 +3,12 @@ "name": "Average open latency on Linux", "unit": "µs", "value": 0, - "extra": "linux_avg" + "extra": "linux_result" }, { "name": "Average open latency on Asterinas", "unit": "µs", "value": 0, - "extra": "aster_avg" + "extra": "aster_result" } ] \ No newline at end of file diff --git a/test/benchmark/lmbench-open/run.sh b/test/benchmark/lmbench/vfs_open_lat/run.sh similarity index 100% rename from test/benchmark/lmbench-open/run.sh rename to test/benchmark/lmbench/vfs_open_lat/run.sh diff --git a/test/benchmark/lmbench-read/config.json b/test/benchmark/lmbench/vfs_read_lat/config.json similarity index 60% rename from test/benchmark/lmbench-read/config.json rename to test/benchmark/lmbench/vfs_read_lat/config.json index 85520595..04a67839 100644 --- a/test/benchmark/lmbench-read/config.json +++ b/test/benchmark/lmbench/vfs_read_lat/config.json @@ -3,5 +3,6 @@ "alert_tool": "customSmallerIsBetter", "search_pattern": "Simple read:", "result_index": "3", - "description": "The latency of the read system call on a single processor." -} + "description": "lat_syscall read", + "title": "[VFS] The cost of read (/dev/zero)" +} \ No newline at end of file diff --git a/test/benchmark/lmbench-read/result_template.json b/test/benchmark/lmbench/vfs_read_lat/result_template.json similarity index 77% rename from test/benchmark/lmbench-read/result_template.json rename to test/benchmark/lmbench/vfs_read_lat/result_template.json index 3213b6c0..5ed99dec 100644 --- a/test/benchmark/lmbench-read/result_template.json +++ b/test/benchmark/lmbench/vfs_read_lat/result_template.json @@ -3,12 +3,12 @@ "name": "Average read latency on Linux", "unit": "µs", "value": 0, - "extra": "linux_avg" + "extra": "linux_result" }, { "name": "Average read latency on Asterinas", "unit": "µs", "value": 0, - "extra": "aster_avg" + "extra": "aster_result" } ] \ No newline at end of file diff --git a/test/benchmark/lmbench-read/run.sh b/test/benchmark/lmbench/vfs_read_lat/run.sh similarity index 100% rename from test/benchmark/lmbench-read/run.sh rename to test/benchmark/lmbench/vfs_read_lat/run.sh diff --git a/test/benchmark/lmbench-mem-fwr/config.json b/test/benchmark/lmbench/vfs_read_pagecache_bw/config.json similarity index 50% rename from test/benchmark/lmbench-mem-fwr/config.json rename to test/benchmark/lmbench/vfs_read_pagecache_bw/config.json index fc230247..f16e3ac0 100644 --- a/test/benchmark/lmbench-mem-fwr/config.json +++ b/test/benchmark/lmbench/vfs_read_pagecache_bw/config.json @@ -3,5 +3,6 @@ "alert_tool": "customBiggerIsBetter", "search_pattern": "536.87", "result_index": "2", - "description": "The memory bandwidth for writing 512 MB of data on a single processor using the fwr (fast write) method." -} + "description": "bw_file_rd", + "title": "[VFS] The bandwidth of file reads via page cache" +} \ No newline at end of file diff --git a/test/benchmark/lmbench-file-rd-bandwidth/result_template.json b/test/benchmark/lmbench/vfs_read_pagecache_bw/result_template.json similarity index 78% rename from test/benchmark/lmbench-file-rd-bandwidth/result_template.json rename to test/benchmark/lmbench/vfs_read_pagecache_bw/result_template.json index b570e046..b582df44 100644 --- a/test/benchmark/lmbench-file-rd-bandwidth/result_template.json +++ b/test/benchmark/lmbench/vfs_read_pagecache_bw/result_template.json @@ -3,12 +3,12 @@ "name": "Average file read bandwidth on Linux", "unit": "MB/s", "value": 0, - "extra": "linux_avg" + "extra": "linux_result" }, { "name": "Average file read bandwidth on Asterinas", "unit": "MB/s", "value": 0, - "extra": "aster_avg" + "extra": "aster_result" } ] \ No newline at end of file diff --git a/test/benchmark/lmbench-file-rd-bandwidth/run.sh b/test/benchmark/lmbench/vfs_read_pagecache_bw/run.sh similarity index 100% rename from test/benchmark/lmbench-file-rd-bandwidth/run.sh rename to test/benchmark/lmbench/vfs_read_pagecache_bw/run.sh diff --git a/test/benchmark/lmbench-select-file/config.json b/test/benchmark/lmbench/vfs_select_lat/config.json similarity index 60% rename from test/benchmark/lmbench-select-file/config.json rename to test/benchmark/lmbench/vfs_select_lat/config.json index d5990424..59ce9c04 100644 --- a/test/benchmark/lmbench-select-file/config.json +++ b/test/benchmark/lmbench/vfs_select_lat/config.json @@ -3,5 +3,6 @@ "alert_tool": "customSmallerIsBetter", "search_pattern": "Select on ", "result_index": "5", - "description": "The latency of select file on a single processor." -} + "description": "lat_select", + "title": "[Network] The cost of select (file fds)" +} \ No newline at end of file diff --git a/test/benchmark/lmbench-select-file/result_template.json b/test/benchmark/lmbench/vfs_select_lat/result_template.json similarity index 78% rename from test/benchmark/lmbench-select-file/result_template.json rename to test/benchmark/lmbench/vfs_select_lat/result_template.json index 1523fa68..bf985c5b 100644 --- a/test/benchmark/lmbench-select-file/result_template.json +++ b/test/benchmark/lmbench/vfs_select_lat/result_template.json @@ -3,12 +3,12 @@ "name": "Average select file latency on Linux", "unit": "µs", "value": 0, - "extra": "linux_avg" + "extra": "linux_result" }, { "name": "Average select file latency on Asterinas", "unit": "µs", "value": 0, - "extra": "aster_avg" + "extra": "aster_result" } ] \ No newline at end of file diff --git a/test/benchmark/lmbench-select-file/run.sh b/test/benchmark/lmbench/vfs_select_lat/run.sh similarity index 100% rename from test/benchmark/lmbench-select-file/run.sh rename to test/benchmark/lmbench/vfs_select_lat/run.sh diff --git a/test/benchmark/lmbench-stat/config.json b/test/benchmark/lmbench/vfs_stat_lat/config.json similarity index 62% rename from test/benchmark/lmbench-stat/config.json rename to test/benchmark/lmbench/vfs_stat_lat/config.json index d9efc43d..fe230bf4 100644 --- a/test/benchmark/lmbench-stat/config.json +++ b/test/benchmark/lmbench/vfs_stat_lat/config.json @@ -3,5 +3,6 @@ "alert_tool": "customSmallerIsBetter", "search_pattern": "Simple stat", "result_index": "3", - "description": "The latency of the stat system call on a single processor." -} + "description": "lat_syscall stat", + "title": "[VFS] The cost of stat" +} \ No newline at end of file diff --git a/test/benchmark/lmbench-stat/result_template.json b/test/benchmark/lmbench/vfs_stat_lat/result_template.json similarity index 77% rename from test/benchmark/lmbench-stat/result_template.json rename to test/benchmark/lmbench/vfs_stat_lat/result_template.json index 04d5f26a..b6fb3288 100644 --- a/test/benchmark/lmbench-stat/result_template.json +++ b/test/benchmark/lmbench/vfs_stat_lat/result_template.json @@ -3,12 +3,12 @@ "name": "Average stat latency on Linux", "unit": "µs", "value": 0, - "extra": "linux_avg" + "extra": "linux_result" }, { "name": "Average stat latency on Asterinas", "unit": "µs", "value": 0, - "extra": "aster_avg" + "extra": "aster_result" } ] \ No newline at end of file diff --git a/test/benchmark/lmbench-stat/run.sh b/test/benchmark/lmbench/vfs_stat_lat/run.sh similarity index 100% rename from test/benchmark/lmbench-stat/run.sh rename to test/benchmark/lmbench/vfs_stat_lat/run.sh diff --git a/test/benchmark/lmbench-write/config.json b/test/benchmark/lmbench/vfs_write_lat/config.json similarity index 60% rename from test/benchmark/lmbench-write/config.json rename to test/benchmark/lmbench/vfs_write_lat/config.json index 0abf20b2..0b718476 100644 --- a/test/benchmark/lmbench-write/config.json +++ b/test/benchmark/lmbench/vfs_write_lat/config.json @@ -3,5 +3,6 @@ "alert_tool": "customSmallerIsBetter", "search_pattern": "Simple write:", "result_index": "3", - "description": "The latency of the write system call on a single processor." -} + "description": "lat_syscall write", + "title": "[VFS] The cost of write (/dev/null)" +} \ No newline at end of file diff --git a/test/benchmark/lmbench-write/result_template.json b/test/benchmark/lmbench/vfs_write_lat/result_template.json similarity index 77% rename from test/benchmark/lmbench-write/result_template.json rename to test/benchmark/lmbench/vfs_write_lat/result_template.json index 096e734b..5432eb25 100644 --- a/test/benchmark/lmbench-write/result_template.json +++ b/test/benchmark/lmbench/vfs_write_lat/result_template.json @@ -3,12 +3,12 @@ "name": "Average write latency on Linux", "unit": "µs", "value": 0, - "extra": "linux_avg" + "extra": "linux_result" }, { "name": "Average write latency on Asterinas", "unit": "µs", "value": 0, - "extra": "aster_avg" + "extra": "aster_result" } ] \ No newline at end of file diff --git a/test/benchmark/lmbench-write/run.sh b/test/benchmark/lmbench/vfs_write_lat/run.sh similarity index 100% rename from test/benchmark/lmbench-write/run.sh rename to test/benchmark/lmbench/vfs_write_lat/run.sh diff --git a/test/benchmark/sysbench-cpu/config.json b/test/benchmark/sysbench/cpu_lat/config.json similarity index 51% rename from test/benchmark/sysbench-cpu/config.json rename to test/benchmark/sysbench/cpu_lat/config.json index b602fa8c..8ab66436 100644 --- a/test/benchmark/sysbench-cpu/config.json +++ b/test/benchmark/sysbench/cpu_lat/config.json @@ -3,5 +3,6 @@ "alert_tool": "customSmallerIsBetter", "search_pattern": "avg:", "result_index": "NF", - "description": "The average time it takes for each prime number calculation to complete during the sysbench CPU test." -} + "description": "sysbench cpu", + "title": "[CPU] CPU performance" +} \ No newline at end of file diff --git a/test/benchmark/sysbench-cpu/result_template.json b/test/benchmark/sysbench/cpu_lat/result_template.json similarity index 78% rename from test/benchmark/sysbench-cpu/result_template.json rename to test/benchmark/sysbench/cpu_lat/result_template.json index 07359836..097d0d72 100644 --- a/test/benchmark/sysbench-cpu/result_template.json +++ b/test/benchmark/sysbench/cpu_lat/result_template.json @@ -3,12 +3,12 @@ "name": "Average Execution Time per CPU on Linux", "unit": "ms", "value": 0, - "extra": "linux_avg" + "extra": "linux_result" }, { "name": "Average Execution Time per CPU on Asterinas", "unit": "ms", "value": 0, - "extra": "aster_avg" + "extra": "aster_result" } ] \ No newline at end of file diff --git a/test/benchmark/sysbench-cpu/run.sh b/test/benchmark/sysbench/cpu_lat/run.sh similarity index 100% rename from test/benchmark/sysbench-cpu/run.sh rename to test/benchmark/sysbench/cpu_lat/run.sh diff --git a/test/benchmark/sysbench-thread/config.json b/test/benchmark/sysbench/thread_lat/config.json similarity index 50% rename from test/benchmark/sysbench-thread/config.json rename to test/benchmark/sysbench/thread_lat/config.json index dbbbb423..62b619fd 100644 --- a/test/benchmark/sysbench-thread/config.json +++ b/test/benchmark/sysbench/thread_lat/config.json @@ -3,5 +3,6 @@ "alert_tool": "customSmallerIsBetter", "search_pattern": "avg:", "result_index": "NF", - "description": "The average latency it takes for each thread operation (creation, yielding, locking, etc.) to complete." -} + "description": "sysbench threads", + "title": "[Threads] Threads performance" +} \ No newline at end of file diff --git a/test/benchmark/sysbench-thread/result_template.json b/test/benchmark/sysbench/thread_lat/result_template.json similarity index 78% rename from test/benchmark/sysbench-thread/result_template.json rename to test/benchmark/sysbench/thread_lat/result_template.json index 922e0726..0ac122e9 100644 --- a/test/benchmark/sysbench-thread/result_template.json +++ b/test/benchmark/sysbench/thread_lat/result_template.json @@ -3,12 +3,12 @@ "name": "Average Execution Time per Thread on Linux", "unit": "ms", "value": 0, - "extra": "linux_avg" + "extra": "linux_result" }, { "name": "Average Execution Time per Thread on Asterinas", "unit": "ms", "value": 0, - "extra": "aster_avg" + "extra": "aster_result" } ] \ No newline at end of file diff --git a/test/benchmark/sysbench-thread/run.sh b/test/benchmark/sysbench/thread_lat/run.sh similarity index 100% rename from test/benchmark/sysbench-thread/run.sh rename to test/benchmark/sysbench/thread_lat/run.sh