From: Reinette Chatre <reinette.chatre@intel.com>
To: "Ilpo Järvinen" <ilpo.jarvinen@linux.intel.com>,
linux-kselftest@vger.kernel.org, "Shuah Khan" <shuah@kernel.org>,
"Shaopeng Tan" <tan.shaopeng@jp.fujitsu.com>,
"Maciej Wieczór-Retman" <maciej.wieczor-retman@intel.com>,
"Fenghua Yu" <fenghua.yu@intel.com>
Cc: <linux-kernel@vger.kernel.org>
Subject: Re: [PATCH 08/24] selftests/resctrl: Split show_cache_info() to test specific and generic parts
Date: Thu, 2 Nov 2023 10:48:43 -0700 [thread overview]
Message-ID: <5d504c29-896d-451a-bf85-eaef315bb822@intel.com> (raw)
In-Reply-To: <20231024092634.7122-9-ilpo.jarvinen@linux.intel.com>
Hi Ilpo,
On 10/24/2023 2:26 AM, Ilpo Järvinen wrote:
> show_cache_info() calculates results and provides generic cache
> information. This makes it hard to alter pass/fail conditions.
>
> Separate the test specific checks into CAT and CMT test files and
> leave only the generic information part into show_cache_info().
>
> Signed-off-by: Ilpo Järvinen <ilpo.jarvinen@linux.intel.com>
> ---
> tools/testing/selftests/resctrl/cache.c | 40 ++++------------------
> tools/testing/selftests/resctrl/cat_test.c | 30 ++++++++++++++--
> tools/testing/selftests/resctrl/cmt_test.c | 32 +++++++++++++++--
> tools/testing/selftests/resctrl/resctrl.h | 6 ++--
> 4 files changed, 65 insertions(+), 43 deletions(-)
>
> diff --git a/tools/testing/selftests/resctrl/cache.c b/tools/testing/selftests/resctrl/cache.c
> index 299d9508221f..95489d4b42b7 100644
> --- a/tools/testing/selftests/resctrl/cache.c
> +++ b/tools/testing/selftests/resctrl/cache.c
> @@ -267,43 +267,17 @@ int cat_val(struct resctrl_val_param *param, size_t span)
> }
>
> /*
> - * show_cache_info: show cache test result information
> - * @sum_llc_val: sum of LLC cache result data
> + * show_cache_info: show generic cache test information
> * @no_of_bits: number of bits
> - * @cache_span: cache span in bytes for CMT or in lines for CAT
> - * @max_diff: max difference
> - * @max_diff_percent: max difference percentage
> - * @num_of_runs: number of runs
> - * @platform: show test information on this platform
> - * @cmt: CMT test or CAT test
> - *
> - * Return: 0 on success. non-zero on failure.
> + * @avg_llc_val: avg of LLC cache result data
> + * @cache_span: cache span
> + * @lines: cache span in lines or bytes
It may be helpful to directly connect it to the other parameter:
@cache_span in lines or bytes
> */
> -int show_cache_info(unsigned long sum_llc_val, int no_of_bits,
> - size_t cache_span, unsigned long max_diff,
> - unsigned long max_diff_percent, unsigned long num_of_runs,
> - bool platform, bool cmt)
> +void show_cache_info(int no_of_bits, unsigned long avg_llc_val,
> + size_t cache_span, bool lines)
> {
> - unsigned long avg_llc_val = 0;
> - float diff_percent;
> - long avg_diff = 0;
> - int ret;
> -
> - avg_llc_val = sum_llc_val / num_of_runs;
> - avg_diff = (long)abs(cache_span - avg_llc_val);
> - diff_percent = ((float)cache_span - avg_llc_val) / cache_span * 100;
> -
> - ret = platform && abs((int)diff_percent) > max_diff_percent &&
> - (cmt ? (abs(avg_diff) > max_diff) : true);
> -
> - ksft_print_msg("%s Check cache miss rate within %lu%%\n",
> - ret ? "Fail:" : "Pass:", max_diff_percent);
> -
> - ksft_print_msg("Percent diff=%d\n", abs((int)diff_percent));
> ksft_print_msg("Number of bits: %d\n", no_of_bits);
> ksft_print_msg("Average LLC val: %lu\n", avg_llc_val);
> - ksft_print_msg("Cache span (%s): %zu\n", cmt ? "bytes" : "lines",
> + ksft_print_msg("Cache span (%s): %zu\n", !lines ? "bytes" : "lines",
> cache_span);
I think it would be easier to read as: lines ? "lines" : "bytes"
Reinette
next prev parent reply other threads:[~2023-11-02 17:48 UTC|newest]
Thread overview: 72+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-10-24 9:26 [PATCH 00/24] selftests/resctrl: CAT test improvements & generalized test framework Ilpo Järvinen
2023-10-24 9:26 ` [PATCH 01/24] selftests/resctrl: Split fill_buf to allow tests finer-grained control Ilpo Järvinen
2023-10-27 11:24 ` Maciej Wieczór-Retman
2023-11-02 17:46 ` Reinette Chatre
2023-10-24 9:26 ` [PATCH 02/24] selftests/resctrl: Refactor fill_buf functions Ilpo Järvinen
2023-10-27 11:32 ` Maciej Wieczór-Retman
2023-10-27 11:41 ` Ilpo Järvinen
2023-10-24 9:26 ` [PATCH 03/24] selftests/resctrl: Refactor get_cbm_mask() Ilpo Järvinen
2023-10-27 11:39 ` Maciej Wieczór-Retman
2023-11-02 17:47 ` Reinette Chatre
2023-11-03 12:09 ` Ilpo Järvinen
2023-10-24 9:26 ` [PATCH 04/24] selftests/resctrl: Mark get_cache_size() cache_type const Ilpo Järvinen
2023-10-24 9:26 ` [PATCH 05/24] selftests/resctrl: Create cache_size() helper Ilpo Järvinen
2023-11-02 17:47 ` Reinette Chatre
2023-11-03 8:53 ` Ilpo Järvinen
2023-11-03 22:49 ` Reinette Chatre
2023-10-24 9:26 ` [PATCH 06/24] selftests/resctrl: Exclude shareable bits from schemata in CAT test Ilpo Järvinen
2023-11-02 17:48 ` Reinette Chatre
2023-10-24 9:26 ` [PATCH 07/24] selftests/resctrl: Split measure_cache_vals() function Ilpo Järvinen
2023-11-02 17:48 ` Reinette Chatre
2023-10-24 9:26 ` [PATCH 08/24] selftests/resctrl: Split show_cache_info() to test specific and generic parts Ilpo Järvinen
2023-11-02 17:48 ` Reinette Chatre [this message]
2023-10-24 9:26 ` [PATCH 09/24] selftests/resctrl: Remove unnecessary __u64 -> unsigned long conversion Ilpo Järvinen
2023-11-02 17:48 ` Reinette Chatre
2023-11-03 9:19 ` Ilpo Järvinen
2023-10-24 9:26 ` [PATCH 10/24] selftests/resctrl: Remove nested calls in perf event handling Ilpo Järvinen
2023-11-02 17:49 ` Reinette Chatre
2023-11-03 9:45 ` Ilpo Järvinen
2023-10-24 9:26 ` [PATCH 11/24] selftests/resctrl: Consolidate naming of perf event related things Ilpo Järvinen
2023-10-24 9:26 ` [PATCH 12/24] selftests/resctrl: Improve perf init Ilpo Järvinen
2023-10-27 11:45 ` Maciej Wieczór-Retman
2023-10-24 9:26 ` [PATCH 13/24] selftests/resctrl: Convert perf related globals to locals Ilpo Järvinen
2023-10-27 11:47 ` Maciej Wieczór-Retman
2023-10-24 9:26 ` [PATCH 14/24] selftests/resctrl: Move cat_val() to cat_test.c and rename to cat_test() Ilpo Järvinen
2023-10-27 11:51 ` Maciej Wieczór-Retman
2023-10-27 12:18 ` Ilpo Järvinen
2023-10-24 9:26 ` [PATCH 15/24] selftests/resctrl: Read in less obvious order to defeat prefetch optimizations Ilpo Järvinen
2023-10-24 9:26 ` [PATCH 16/24] selftests/resctrl: Rewrite Cache Allocation Technology (CAT) test Ilpo Järvinen
2023-10-27 12:05 ` Maciej Wieczór-Retman
[not found] ` <fb5e1a50-ba7-1ee8-8bf2-bb8b64b27b1@linux.intel.com>
2023-10-31 7:24 ` Maciej Wieczór-Retman
2023-11-02 17:51 ` Reinette Chatre
2023-11-03 10:57 ` Ilpo Järvinen
2023-11-03 22:50 ` Reinette Chatre
2023-10-24 9:26 ` [PATCH 17/24] selftests/resctrl: Create struct for input parameter Ilpo Järvinen
2023-10-27 12:07 ` Maciej Wieczór-Retman
2023-11-02 17:51 ` Reinette Chatre
2023-11-03 11:24 ` Ilpo Järvinen
2023-11-03 22:50 ` Reinette Chatre
2023-11-06 9:06 ` Ilpo Järvinen
2023-10-24 9:26 ` [PATCH 18/24] selftests/resctrl: Introduce generalized test framework Ilpo Järvinen
2023-11-02 17:52 ` Reinette Chatre
2023-11-03 9:54 ` Ilpo Järvinen
2023-11-03 22:50 ` Reinette Chatre
2023-10-24 9:26 ` [PATCH 19/24] selftests/resctrl: Pass write_schemata() resource instead of test name Ilpo Järvinen
2023-10-24 9:26 ` [PATCH 20/24] selftests/resctrl: Add helper to convert L2/3 to integer Ilpo Järvinen
2023-10-27 12:09 ` Maciej Wieczór-Retman
2023-10-24 9:26 ` [PATCH 21/24] selftests/resctrl: Get resource id from cache id Ilpo Järvinen
[not found] ` <cb2ctfignowlom7lb2t5zhdgtm4s2jlzlvtumlnvxecwwtjk34@ysgepmgkv6bb>
[not found] ` <ab4c6aa5-ea49-363a-ff7b-2215665f185d@linux.intel.com>
2023-10-31 7:58 ` Maciej Wieczór-Retman
2023-10-24 9:26 ` [PATCH 22/24] selftests/resctrl: Add test groups and name L3 CAT test L3_CAT Ilpo Järvinen
2023-10-24 9:26 ` [PATCH 23/24] selftests/resctrl: Add L2 CAT test Ilpo Järvinen
2023-11-02 17:57 ` Reinette Chatre
2023-11-03 10:39 ` Ilpo Järvinen
2023-11-03 22:53 ` Reinette Chatre
2023-11-06 9:53 ` Ilpo Järvinen
2023-11-06 17:03 ` Reinette Chatre
2023-11-06 21:22 ` Reinette Chatre
2023-11-07 9:33 ` Ilpo Järvinen
2023-11-08 16:31 ` Reinette Chatre
2023-10-24 9:26 ` [PATCH 24/24] selftests/resctrl: Ignore failures from L2 CAT test with <= 2 bits Ilpo Järvinen
2023-11-02 17:57 ` Reinette Chatre
2023-11-03 10:24 ` Ilpo Järvinen
2023-11-03 22:53 ` Reinette Chatre
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=5d504c29-896d-451a-bf85-eaef315bb822@intel.com \
--to=reinette.chatre@intel.com \
--cc=fenghua.yu@intel.com \
--cc=ilpo.jarvinen@linux.intel.com \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-kselftest@vger.kernel.org \
--cc=maciej.wieczor-retman@intel.com \
--cc=shuah@kernel.org \
--cc=tan.shaopeng@jp.fujitsu.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox