diff mbox

[v3,2/2] linux-generic: test: add performance test framework

Message ID 1453919833-19364-2-git-send-email-mike.holmes@linaro.org
State New
Headers show

Commit Message

Mike Holmes Jan. 27, 2016, 6:37 p.m. UTC
Add infrastructure for platform dependent performance testing.
Added scheduler performance test using process mode.

Signed-off-by: Mike Holmes <mike.holmes@linaro.org>
---
v3:
   Fixes running by hand (Bill)
   Cleanups for installcheck etc (Stuart)

 platform/linux-generic/m4/configure.m4             |  1 +
 platform/linux-generic/test/Makefile.am            |  4 ++++
 platform/linux-generic/test/performance/.gitignore |  1 +
 .../linux-generic/test/performance/Makefile.am     | 22 +++++++++++++++++
 .../test/performance/odp_scheduling_proc_run       | 28 ++++++++++++++++++++++
 test/performance/Makefile.am                       |  2 +-
 6 files changed, 57 insertions(+), 1 deletion(-)
 create mode 100644 platform/linux-generic/test/performance/.gitignore
 create mode 100644 platform/linux-generic/test/performance/Makefile.am
 create mode 100755 platform/linux-generic/test/performance/odp_scheduling_proc_run
diff mbox

Patch

diff --git a/platform/linux-generic/m4/configure.m4 b/platform/linux-generic/m4/configure.m4
index 97c15fa..82b7c5e 100644
--- a/platform/linux-generic/m4/configure.m4
+++ b/platform/linux-generic/m4/configure.m4
@@ -23,5 +23,6 @@  m4_include([platform/linux-generic/m4/odp_pcap.m4])
 
 AC_CONFIG_FILES([platform/linux-generic/Makefile
 		 platform/linux-generic/test/Makefile
+		 platform/linux-generic/test/performance/Makefile
 		 platform/linux-generic/test/validation/Makefile
 		 platform/linux-generic/test/validation/pktio/Makefile])
diff --git a/platform/linux-generic/test/Makefile.am b/platform/linux-generic/test/Makefile.am
index 3cf638d..7fe79c9 100644
--- a/platform/linux-generic/test/Makefile.am
+++ b/platform/linux-generic/test/Makefile.am
@@ -4,6 +4,10 @@  if test_vald
 SUBDIRS += validation
 endif
 
+if test_perf
+SUBDIRS += performance
+endif
+
 if test_installdir
 installcheck-local:
 	$(DESTDIR)/$(testdir)/run-test
diff --git a/platform/linux-generic/test/performance/.gitignore b/platform/linux-generic/test/performance/.gitignore
new file mode 100644
index 0000000..93778a9
--- /dev/null
+++ b/platform/linux-generic/test/performance/.gitignore
@@ -0,0 +1 @@ 
+tests-performance.env
diff --git a/platform/linux-generic/test/performance/Makefile.am b/platform/linux-generic/test/performance/Makefile.am
new file mode 100644
index 0000000..7b0c096
--- /dev/null
+++ b/platform/linux-generic/test/performance/Makefile.am
@@ -0,0 +1,22 @@ 
+include $(top_srcdir)/test/Makefile.inc
+TESTS_ENVIRONMENT += TEST_DIR=${top_builddir}/test/performance
+
+if test_perf
+TESTS = odp_scheduling_proc_run
+endif
+
+TEST_ENV = tests-performance.env
+
+dist_check_SCRIPTS = odp_scheduling_proc_run $(TEST_ENV) $(LOG_COMPILER)
+
+test_SCRIPTS = $(dist_check_SCRIPTS)
+
+.PHONY: performance-test-env
+performance-test-env:
+
+clean-local: tests-performance.env
+
+tests-performance.env:
+	echo "TESTS=\"$(TESTS)\""    > $@
+	echo "$(TESTS_ENVIRONMENT)" >> $@
+	echo "$(LOG_COMPILER)"      >> $@
diff --git a/platform/linux-generic/test/performance/odp_scheduling_proc_run b/platform/linux-generic/test/performance/odp_scheduling_proc_run
new file mode 100755
index 0000000..31d43be
--- /dev/null
+++ b/platform/linux-generic/test/performance/odp_scheduling_proc_run
@@ -0,0 +1,28 @@ 
+#!/bin/sh
+#
+# Copyright (c) 2015, Linaro Limited
+# All rights reserved.
+#
+# SPDX-License-Identifier:	BSD-3-Clause
+#
+# Script that passes command line arguments to odp_scheduling test when
+# launched by 'make check'
+TEST_DIR="${TEST_DIR:-$(dirname $0)}"
+
+PATH=${TEST_DIR}:$PATH
+PATH=$(dirname $0)/../../../../test/performance:$PATH
+
+ret=0
+
+run()
+{
+	echo odp_scheduling_proc_run starts with $1 worker threads
+	echo ===============================================
+
+	odp_scheduling${EXEEXT} -c $1 --proc || ret=1
+}
+
+run 1
+run 8
+
+exit $ret
diff --git a/test/performance/Makefile.am b/test/performance/Makefile.am
index 721615b..719be2b 100644
--- a/test/performance/Makefile.am
+++ b/test/performance/Makefile.am
@@ -14,7 +14,7 @@  if test_perf
 TESTS = $(EXECUTABLES) $(TESTSCRIPTS)
 endif
 
-bin_PROGRAMS = $(EXECUTABLES) $(COMPILE_ONLY)
+test_PROGRAMS = $(EXECUTABLES) $(COMPILE_ONLY)
 
 odp_atomic_LDFLAGS = $(AM_LDFLAGS) -static
 odp_atomic_CFLAGS = $(AM_CFLAGS) -I${top_srcdir}/test