linux-kselftest.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Doug Smythies <dsmythies@telus.net>
To: Pratik Rajesh Sampat <psampat@linux.ibm.com>
Cc: rjw@rjwysocki.net, Daniel Lezcano <daniel.lezcano@linaro.org>,
	shuah@kernel.org, ego@linux.vnet.ibm.com, svaidy@linux.ibm.com,
	Linux PM list <linux-pm@vger.kernel.org>,
	Linux Kernel Mailing List <linux-kernel@vger.kernel.org>,
	linux-kselftest@vger.kernel.org, pratik.r.sampat@gmail.com,
	dsmythies <dsmythies@telus.net>
Subject: Re: [RFC v4 2/2] selftest/cpuidle: Add support for cpuidle latency measurement
Date: Sun, 25 Apr 2021 13:49:32 -0700	[thread overview]
Message-ID: <CAAYoRsXhH3d8AwBgHD1kyWjw2GUvMQ42br72CfjHTx6NSYKp6w@mail.gmail.com> (raw)
In-Reply-To: <20210412074309.38484-3-psampat@linux.ibm.com>

Hi Pratik,

On Mon, Apr 12, 2021 at 12:43 AM Pratik Rajesh Sampat
<psampat@linux.ibm.com> wrote:
>
> The cpuidle latency selftest provides support to systematically extract,
> analyse and present IPI and timer based wakeup latencies for each CPU
> and each idle state available on the system.
>
> The selftest leverages test-cpuidle_latency module's debugfs interface
> to interact and extract latency information from the kernel.
>
> The selftest inserts the module if already not inserted, disables all
> the idle states and enables them one by one testing the following:
> 1. Keeping source CPU constant, iterate through all the CPUS measuring
>   IPI latency for baseline (CPU is busy with cat /dev/random > /dev/null
>   workload) and then when the CPU is allowed to be at rest
> 2. Iterating through all the CPUs, sending expected timer durations to
>   be equivalent to the residency of the deepest idle state enabled
>   and extracting the difference in time between the time of wakeup and
>   the expected timer duration
>
> The timer based test produces run to run variance on some intel based
> systems that sport a mechansim "C-state pre-wake" which can
> pre-wake a CPU from an idle state when timers are armed. For systems and
> architectures that don't have this mechansim can leverage timer tests
> with the -i option.
>
> To run this test specifically:
> $ sudo make -C tools/testing/selftests TARGETS="cpuidle" run_tests
>
> There are a few optional arguments too that the script can take
>         [-h <help>]
>         [-i <run timer tests>]
>         [-m <location of the module>]
>         [-o <location of the output>]
>         [-v <verbose> (run on all cpus)]
> Default Output location in: tools/testing/selftest/cpuidle/cpuidle.log
>
> To run the test without re-compiling:
> $ cd tools/testing/selftest/cpuidle/
> $ sudo ./cpuidle.sh
>
> Signed-off-by: Pratik Rajesh Sampat <psampat@linux.ibm.com>

Reviewed-by: Doug Smythies <dsmythies@telus.net>
...

  reply	other threads:[~2021-04-25 20:49 UTC|newest]

Thread overview: 6+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-04-12  7:43 [RFC v4 0/2] CPU-Idle latency selftest framework Pratik Rajesh Sampat
2021-04-12  7:43 ` [RFC v4 1/2] cpuidle: Extract IPI based and timer based wakeup latency from idle states Pratik Rajesh Sampat
2021-04-25 20:47   ` Doug Smythies
2021-04-12  7:43 ` [RFC v4 2/2] selftest/cpuidle: Add support for cpuidle latency measurement Pratik Rajesh Sampat
2021-04-25 20:49   ` Doug Smythies [this message]
2021-04-13 14:52 ` [RFC v4 0/2] CPU-Idle latency selftest framework Doug Smythies

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=CAAYoRsXhH3d8AwBgHD1kyWjw2GUvMQ42br72CfjHTx6NSYKp6w@mail.gmail.com \
    --to=dsmythies@telus.net \
    --cc=daniel.lezcano@linaro.org \
    --cc=ego@linux.vnet.ibm.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-kselftest@vger.kernel.org \
    --cc=linux-pm@vger.kernel.org \
    --cc=pratik.r.sampat@gmail.com \
    --cc=psampat@linux.ibm.com \
    --cc=rjw@rjwysocki.net \
    --cc=shuah@kernel.org \
    --cc=svaidy@linux.ibm.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;
as well as URLs for NNTP newsgroup(s).