From 803f059493ac18a3e12aac6eedbbe56b98bcb804 Mon Sep 17 00:00:00 2001 From: Chen Chengjun Date: Fri, 16 Aug 2024 13:26:02 +0800 Subject: [PATCH] Add page fault lmbench --- .github/workflows/benchmark_asterinas.yml | 2 ++ test/benchmark/lmbench-pagefault/config.json | 7 +++++++ .../lmbench-pagefault/result_template.json | 14 ++++++++++++++ test/benchmark/lmbench-pagefault/run.sh | 10 ++++++++++ 4 files changed, 33 insertions(+) create mode 100644 test/benchmark/lmbench-pagefault/config.json create mode 100644 test/benchmark/lmbench-pagefault/result_template.json create mode 100644 test/benchmark/lmbench-pagefault/run.sh diff --git a/.github/workflows/benchmark_asterinas.yml b/.github/workflows/benchmark_asterinas.yml index 6d4394dcc..290f830c7 100644 --- a/.github/workflows/benchmark_asterinas.yml +++ b/.github/workflows/benchmark_asterinas.yml @@ -43,6 +43,8 @@ jobs: - lmbench-select-file - lmbench-fs-create-delete-files-0k - lmbench-fs-create-delete-files-10k + # Mmap-related benchmarks + - lmbench-pagefault fail-fast: false timeout-minutes: 60 container: diff --git a/test/benchmark/lmbench-pagefault/config.json b/test/benchmark/lmbench-pagefault/config.json new file mode 100644 index 000000000..b9d3cebd8 --- /dev/null +++ b/test/benchmark/lmbench-pagefault/config.json @@ -0,0 +1,7 @@ +{ + "alert_threshold": "125%", + "alert_tool": "customSmallerIsBetter", + "search_pattern": "Pagefaults on ", + "result_index": "4", + "description": "The latency of handling page fault on a single processor." +} diff --git a/test/benchmark/lmbench-pagefault/result_template.json b/test/benchmark/lmbench-pagefault/result_template.json new file mode 100644 index 000000000..218e497f2 --- /dev/null +++ b/test/benchmark/lmbench-pagefault/result_template.json @@ -0,0 +1,14 @@ +[ + { + "name": "Average page fault latency on Linux", + "unit": "µs", + "value": 0, + "extra": "linux_avg" + }, + { + "name": "Average page fault latency on Asterinas", + "unit": "µs", + "value": 0, + "extra": "aster_avg" + } +] \ No newline at end of file diff --git a/test/benchmark/lmbench-pagefault/run.sh b/test/benchmark/lmbench-pagefault/run.sh new file mode 100644 index 000000000..606b5768f --- /dev/null +++ b/test/benchmark/lmbench-pagefault/run.sh @@ -0,0 +1,10 @@ +#!/bin/sh + +# SPDX-License-Identifier: MPL-2.0 + +set -e + +echo "*** Running the LMbench page fault latency test ***" + +dd if=/dev/zero of=/ext2/test_file bs=1M count=256 +/benchmark/bin/lmbench/lat_pagefault -P 1 /ext2/test_file \ No newline at end of file