All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH 00/28] Implement build performance test script in Python
@ 2016-06-24 10:37 Markus Lehtonen
  2016-06-24 10:37 ` [PATCH 01/28] oeqa.utils.commands: Introduce get_bb_vars() Markus Lehtonen
                   ` (27 more replies)
  0 siblings, 28 replies; 31+ messages in thread
From: Markus Lehtonen @ 2016-06-24 10:37 UTC (permalink / raw)
  To: openembedded-core

This patchset re-implements the existing scripts/contrib/build-perf-test.sh
script in Python. The new script is meant as a nearly drop-in replacement for
the old shell script. The aim is to simplify the build performance test script
and make it easier to maintain and extend. Further patchsets will enhance it
and refine the test results output format, for example.

Major difference to the old shell script is that the new script has to be run
in an initialized bitbake build environment. Thus, the caller is now
responsible for setting up the build environment, including config which the
old shell script somewhat affected.  All the unused (in practice) command line
options are dropped. Test result output format remains the same, though.

The last patch of this patchset introduces a wrapper shell script that takes
care of setting up the build environment, running the script and archiving the
results. It replicates the default build configuration used by the old shell
script as well as the setup used to generate the Yocto build performance test
results
(https://wiki.yoctoproject.org/charts/perf_milestone/performance_test.html).

[YOCTO #9623]

The following changes since commit afb40bf179a58b7f3a8e365d87510ba2c54437d0:

  puzzles: fix Samba conflict, clean up recipe (2016-06-23 14:23:42 +0100)

are available in the git repository at:

  git://git.openembedded.org/openembedded-core-contrib marquiz/build-perf/python-rewrite
  http://git.openembedded.org/openembedded-core-contrib/log/?h=marquiz/build-perf/python-rewrite


Markus Lehtonen (28):
  oeqa.utils.commands: Introduce get_bb_vars()
  oeqa.utils.commands: use get_bb_vars() in get_bb_var()
  oeqa.utils.commands: runCmd: gracefully handle empty output
  oeqa.utils.commands: runCmd: return stderr output, too
  scripts: introduce oe-build-perf-test
  oe-build-perf-test: add pre-run sanity check
  oe-build-perf-test: introduce oeqa.buildperf module
  oeqa.buildperf: functionality to drop kernel caches
  oeqa.buildperf: add BuildPerfTest class
  oeqa.buildperf: method for measuring system resource usage
  oeqa.buildperf: add method to log shell commands
  oeqa.buildperf: add method for measuring file disk usage
  oeqa.buildperf: add method for saving buildstats
  oeqa.buildperf: implement BuildPerfTestRunner class
  oeqa.buildperf: add test Test1P1
  oeqa.buildperf: add test Test1P2
  oeqa.buildperf: add test Test1P3
  oeqa.buildperf: add test Test2
  oeqa.buildperf: add test Test3
  oeqa.buildperf: add test Test4
  oeqa.buildperf: archive build/conf into test results
  oe-build-perf-test: enable logging into file
  oeqa.utils: add git module
  oeqa.buildperf: add git revision and branch to result data
  oe-build-perf-test: implement --globalres-file option
  oe-build-perf-test: enable locking
  oe-build-perf-test: add --out-dir command line argument
  scripts/contrib: introduce build-perf-test-wrapper.sh

 meta/lib/oeqa/buildperf/__init__.py        |  15 ++
 meta/lib/oeqa/buildperf/base.py            | 330 +++++++++++++++++++++++++++++
 meta/lib/oeqa/buildperf/basic_tests.py     | 133 ++++++++++++
 meta/lib/oeqa/utils/commands.py            |  53 +++--
 meta/lib/oeqa/utils/git.py                 |  38 ++++
 scripts/contrib/build-perf-test-wrapper.sh | 102 +++++++++
 scripts/oe-build-perf-test                 | 133 ++++++++++++
 7 files changed, 790 insertions(+), 14 deletions(-)
 create mode 100644 meta/lib/oeqa/buildperf/__init__.py
 create mode 100644 meta/lib/oeqa/buildperf/base.py
 create mode 100644 meta/lib/oeqa/buildperf/basic_tests.py
 create mode 100644 meta/lib/oeqa/utils/git.py
 create mode 100755 scripts/contrib/build-perf-test-wrapper.sh
 create mode 100755 scripts/oe-build-perf-test

-- 
2.6.6



^ permalink raw reply	[flat|nested] 31+ messages in thread

end of thread, other threads:[~2016-06-30 14:06 UTC | newest]

Thread overview: 31+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2016-06-24 10:37 [PATCH 00/28] Implement build performance test script in Python Markus Lehtonen
2016-06-24 10:37 ` [PATCH 01/28] oeqa.utils.commands: Introduce get_bb_vars() Markus Lehtonen
2016-06-24 10:37 ` [PATCH 02/28] oeqa.utils.commands: use get_bb_vars() in get_bb_var() Markus Lehtonen
2016-06-24 10:37 ` [PATCH 03/28] oeqa.utils.commands: runCmd: gracefully handle empty output Markus Lehtonen
2016-06-24 10:37 ` [PATCH 04/28] oeqa.utils.commands: runCmd: return stderr output, too Markus Lehtonen
2016-06-24 10:37 ` [PATCH 05/28] scripts: introduce oe-build-perf-test Markus Lehtonen
2016-06-24 10:37 ` [PATCH 06/28] oe-build-perf-test: add pre-run sanity check Markus Lehtonen
2016-06-24 10:37 ` [PATCH 07/28] oe-build-perf-test: introduce oeqa.buildperf module Markus Lehtonen
2016-06-24 10:37 ` [PATCH 08/28] oeqa.buildperf: functionality to drop kernel caches Markus Lehtonen
2016-06-24 10:37 ` [PATCH 09/28] oeqa.buildperf: add BuildPerfTest class Markus Lehtonen
2016-06-27 12:12   ` Joshua G Lock
2016-06-30 14:06     ` Markus Lehtonen
2016-06-24 10:37 ` [PATCH 10/28] oeqa.buildperf: method for measuring system resource usage Markus Lehtonen
2016-06-24 10:37 ` [PATCH 11/28] oeqa.buildperf: add method to log shell commands Markus Lehtonen
2016-06-24 10:37 ` [PATCH 12/28] oeqa.buildperf: add method for measuring file disk usage Markus Lehtonen
2016-06-24 10:37 ` [PATCH 13/28] oeqa.buildperf: add method for saving buildstats Markus Lehtonen
2016-06-24 10:37 ` [PATCH 14/28] oeqa.buildperf: implement BuildPerfTestRunner class Markus Lehtonen
2016-06-24 10:37 ` [PATCH 15/28] oeqa.buildperf: add test Test1P1 Markus Lehtonen
2016-06-24 10:37 ` [PATCH 16/28] oeqa.buildperf: add test Test1P2 Markus Lehtonen
2016-06-24 10:37 ` [PATCH 17/28] oeqa.buildperf: add test Test1P3 Markus Lehtonen
2016-06-24 10:37 ` [PATCH 18/28] oeqa.buildperf: add test Test2 Markus Lehtonen
2016-06-24 10:37 ` [PATCH 19/28] oeqa.buildperf: add test Test3 Markus Lehtonen
2016-06-24 10:37 ` [PATCH 20/28] oeqa.buildperf: add test Test4 Markus Lehtonen
2016-06-24 10:37 ` [PATCH 21/28] oeqa.buildperf: archive build/conf into test results Markus Lehtonen
2016-06-24 10:37 ` [PATCH 22/28] oe-build-perf-test: enable logging into file Markus Lehtonen
2016-06-24 10:37 ` [PATCH 23/28] oeqa.utils: add git module Markus Lehtonen
2016-06-24 10:37 ` [PATCH 24/28] oeqa.buildperf: add git revision and branch to result data Markus Lehtonen
2016-06-24 10:37 ` [PATCH 25/28] oe-build-perf-test: implement --globalres-file option Markus Lehtonen
2016-06-24 10:37 ` [PATCH 26/28] oe-build-perf-test: enable locking Markus Lehtonen
2016-06-24 10:37 ` [PATCH 27/28] oe-build-perf-test: add --out-dir command line argument Markus Lehtonen
2016-06-24 10:37 ` [PATCH 28/28] scripts/contrib: introduce build-perf-test-wrapper.sh Markus Lehtonen

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.