diff mbox

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

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

Commit Message

Mike Holmes Jan. 6, 2016, 6:57 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>
---
v2:
   drop   .../test/performance/tests-performance.env
   ensure odp_scheduling is installed in testdir

 platform/linux-generic/m4/configure.m4             |  1 +
 platform/linux-generic/test/Makefile.am            |  4 ++++
 .../linux-generic/test/performance/Makefile.am     | 13 +++++++++++
 .../test/performance/odp_scheduling_proc_run       | 25 ++++++++++++++++++++++
 test/performance/Makefile.am                       |  2 +-
 5 files changed, 44 insertions(+), 1 deletion(-)
 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/Makefile.am b/platform/linux-generic/test/performance/Makefile.am
new file mode 100644
index 0000000..22d46d5
--- /dev/null
+++ b/platform/linux-generic/test/performance/Makefile.am
@@ -0,0 +1,13 @@ 
+include $(top_srcdir)/test/Makefile.inc
+TESTS_ENVIRONMENT += TEST_DIR=${top_builddir}/test/performance
+
+TESTS = odp_scheduling_proc_run
+
+dist_check_SCRIPTS = odp_scheduling_proc_run tests-performance.env
+
+test_SCRIPTS = $(dist_check_SCRIPTS)
+
+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..0fbb5ca
--- /dev/null
+++ b/platform/linux-generic/test/performance/odp_scheduling_proc_run
@@ -0,0 +1,25 @@ 
+#!/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)}"
+ret=0
+
+run()
+{
+	echo odp_scheduling_proc_run starts with $1 worker threads
+	echo ===============================================
+
+	$TEST_DIR/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