From: "Alex Bennée" <alex.bennee@linaro.org>
To: Ahmed Karaman <ahmedkhaledkaraman@gmail.com>
Cc: ldoktor@redhat.com, ehabkost@redhat.com, jsnow@redhat.com,
qemu-devel@nongnu.org, philmd@redhat.com,
aleksandar.qemu.devel@gmail.com, crosa@redhat.com,
rth@twiddle.net
Subject: Re: [PATCH 7/9] tests/performance: Add nightly tests
Date: Wed, 02 Sep 2020 14:26:29 +0100 [thread overview]
Message-ID: <87zh6848e2.fsf@linaro.org> (raw)
In-Reply-To: <20200828104102.4490-8-ahmedkhaledkaraman@gmail.com>
Ahmed Karaman <ahmedkhaledkaraman@gmail.com> writes:
> A nightly performance testing system to monitor any change in QEMU
> performance across seventeen different targets.
>
> The system includes eight different benchmarks to provide a variety
> of testing workloads.
>
> dijkstra_double:
> Find the shortest path between the source node and all other nodes
> using Dijkstra’s algorithm. The graph contains n nodes where all nxn
> distances are double values. The value of n can be specified using
> the -n flag. The default value is 2000.
>
> dijkstra_int32:
> Find the shortest path between the source node and all other nodes
> using Dijkstra’s algorithm. The graph contains n nodes where all nxn
> distances are int32 values. The value of n can be specified using
> the -n flag. The default value is 2000.
>
> matmult_double:
> Standard matrix multiplication of an n*n matrix of randomly generated
> double numbers from 0 to 100. The value of n is passed as an argument
> with the -n flag. The default value is 200.
>
> matmult_int32:
> Standard matrix multiplication of an n*n matrix of randomly generated
> integer numbers from 0 to 100. The value of n is passed as an
> argument with the -n flag. The default value is 200.
>
> qsort_double:
> Quick sort of an array of n randomly generated double numbers from 0
> to 1000. The value of n is passed as an argument with the -n flag.
> The default value is 300000.
>
> qsort_int32:
> Quick sort of an array of n randomly generated integer numbers from 0
> to 50000000. The value of n is passed as an argument with the -n
> flag.The default value is 300000.
>
> qsort_string:
> Quick sort of an array of 10000 randomly generated strings of size 8
> (including null terminating character). The sort process is repeated
> n number of times. The value of n is passed as an argument with the
> -n flag. The default value is 20.
>
> search_string:
> Search for the occurrence of a small string in a much larger random
> string (“needle in a hay”). The search process is repeated n number
> of times and each time, a different large random string (“hay”) is
> generated. The value of n can be specified using the -n flag. The
> default value is 20.
>
> Syntax:
> nightly_tests_core.py [-h] [-r REF]
> Optional arguments:
> -h, --help Show this help message and exit
> -r REF, --reference REF
> Reference QEMU version - Default is v5.1.0
> Example of usage:
> nightly_tests_core.py -r v5.1.0 2>log.txt
>
> The following report includes detailed setup and execution details
> of the system:
> https://ahmedkrmn.github.io/TCG-Continuous-Benchmarking/QEMU-Nightly-Performance-Tests/
>
> Signed-off-by: Ahmed Karaman <ahmedkhaledkaraman@gmail.com>
> ---
> tests/performance/nightly-tests/README.md | 243 +++++
> .../source/dijkstra_double/dijkstra_double.c | 194 ++++
> .../source/dijkstra_int32/dijkstra_int32.c | 192 ++++
> .../source/matmult_double/matmult_double.c | 123 +++
> .../source/matmult_int32/matmult_int32.c | 121 +++
> .../source/qsort_double/qsort_double.c | 104 ++
> .../source/qsort_int32/qsort_int32.c | 103 ++
> .../source/qsort_string/qsort_string.c | 122 +++
> .../source/search_string/search_string.c | 110 +++
> .../scripts/nightly_tests_core.py | 920 ++++++++++++++++++
> .../scripts/run_nightly_tests.py | 135 +++
> .../nightly-tests/scripts/send_email.py | 56 ++
> 12 files changed, 2423 insertions(+)
> create mode 100644 tests/performance/nightly-tests/README.md
> create mode 100644 tests/performance/nightly-tests/benchmarks/source/dijkstra_double/dijkstra_double.c
> create mode 100644 tests/performance/nightly-tests/benchmarks/source/dijkstra_int32/dijkstra_int32.c
> create mode 100644 tests/performance/nightly-tests/benchmarks/source/matmult_double/matmult_double.c
> create mode 100644 tests/performance/nightly-tests/benchmarks/source/matmult_int32/matmult_int32.c
> create mode 100644 tests/performance/nightly-tests/benchmarks/source/qsort_double/qsort_double.c
> create mode 100644 tests/performance/nightly-tests/benchmarks/source/qsort_int32/qsort_int32.c
> create mode 100644 tests/performance/nightly-tests/benchmarks/source/qsort_string/qsort_string.c
> create mode 100644
> tests/performance/nightly-tests/benchmarks/source/search_string/search_string.c
Perhaps we could compress these paths down to:
tests/tcg/benchmarks/foo.c
tests/tcg/benchmarks/bar.c
and then we can also ensure they are built using the existing TCG tests
cross compile framework.
> create mode 100755 tests/performance/nightly-tests/scripts/nightly_tests_core.py
> create mode 100755 tests/performance/nightly-tests/scripts/run_nightly_tests.py
> create mode 100644 tests/performance/nightly-tests/scripts/send_email.py
>
> diff --git a/tests/performance/nightly-tests/README.md b/tests/performance/nightly-tests/README.md
> new file mode 100644
> index 0000000000..6db3b351b3
> --- /dev/null
> +++ b/tests/performance/nightly-tests/README.md
> @@ -0,0 +1,243 @@
> +### QEMU Nightly Tests
> +
> +**Required settings:**
> +
> +Update the `GMAIL_USER` object in `send_email.py` with your credentials.
> +
> +For more details on how the system works, please check the [eighth
> report](https://ahmedkrmn.github.io/TCG-Continuous-Benchmarking/QEMU-Nightly-Performance-Tests/)
> of the "TCG Continuos Benchmarking" series.
As external URLs are potentially unstable I think we want to distil the
details into a rst do in docs/devel/
<snip>
--
Alex Bennée
next prev parent reply other threads:[~2020-09-02 13:27 UTC|newest]
Thread overview: 26+ messages / expand[flat|nested] mbox.gz Atom feed top
2020-08-28 10:40 [PATCH 0/9] GSoC 2020 - TCG Continuous Benchmarking scripts and tools Ahmed Karaman
2020-08-28 10:40 ` [PATCH 1/9] scripts/performance: Refactor topN_perf.py Ahmed Karaman
2020-09-07 20:52 ` Aleksandar Markovic
2020-09-18 20:33 ` Aleksandar Markovic
2020-09-19 11:17 ` Bottleneck problem to merge Python patches Philippe Mathieu-Daudé
2020-09-21 14:49 ` John Snow
2020-09-21 15:54 ` Eduardo Habkost
2020-09-21 17:57 ` Cleber Rosa
2020-10-01 20:41 ` [PATCH 1/9] scripts/performance: Refactor topN_perf.py John Snow
2020-10-01 21:59 ` John Snow
2020-08-28 10:40 ` [PATCH 2/9] scripts/performance: Refactor topN_callgrind.py Ahmed Karaman
2020-09-07 20:53 ` Aleksandar Markovic
2020-08-28 10:40 ` [PATCH 3/9] scripts/performance: Refactor dissect.py Ahmed Karaman
2020-09-02 8:48 ` Aleksandar Markovic
2020-08-28 10:40 ` [PATCH 4/9] scripts/performance: Add list_fn_callees.py script Ahmed Karaman
2020-08-28 10:40 ` [PATCH 5/9] scripts/performance: Add list_helpers.py script Ahmed Karaman
2020-08-28 10:40 ` [PATCH 6/9] scripts/performance: Add bisect.py script Ahmed Karaman
2020-08-28 10:41 ` [PATCH 7/9] tests/performance: Add nightly tests Ahmed Karaman
2020-09-02 8:36 ` Aleksandar Markovic
2020-09-02 13:26 ` Alex Bennée [this message]
2020-09-02 17:29 ` Ahmed Karaman
2020-09-15 16:39 ` Aleksandar Markovic
2020-09-16 8:31 ` Alex Bennée
2020-08-28 10:41 ` [PATCH 8/9] MAINTAINERS: Add 'tests/performance' to 'Performance Tools and Tests' subsection Ahmed Karaman
2020-09-02 8:37 ` Aleksandar Markovic
2020-08-28 10:41 ` [PATCH 9/9] scripts/performance: Add topN_system.py script Ahmed Karaman
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=87zh6848e2.fsf@linaro.org \
--to=alex.bennee@linaro.org \
--cc=ahmedkhaledkaraman@gmail.com \
--cc=aleksandar.qemu.devel@gmail.com \
--cc=crosa@redhat.com \
--cc=ehabkost@redhat.com \
--cc=jsnow@redhat.com \
--cc=ldoktor@redhat.com \
--cc=philmd@redhat.com \
--cc=qemu-devel@nongnu.org \
--cc=rth@twiddle.net \
/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).