* [LTP] Patch to fix kernbench integration issue
@ 2009-08-20 16:06 Poornima Nayak
2009-08-20 16:07 ` [LTP] Patch to fix make install issue in ebizzy Poornima Nayak
` (8 more replies)
0 siblings, 9 replies; 25+ messages in thread
From: Poornima Nayak @ 2009-08-20 16:06 UTC (permalink / raw)
To: vaidy, ltp-list, gautham, arun
Kernbench script's mode was not getting modified to executable as 'utils install'
was missing in LTP Makefile. Hence this patch fixes this issue.
Signed-off-by: poornima nayak <mpnayak@linux.vnet.ibm.com>
diff -uprN ltp-full-20090731_orig/Makefile ltp-full-20090731/Makefile
--- ltp-full-20090731_orig/Makefile 2009-08-20 19:59:13.000000000 +0530
+++ ltp-full-20090731/Makefile 2009-08-20 20:19:09.000000000 +0530
@@ -40,6 +40,7 @@ install: all
@$(MAKE) -C m4 install
@$(MAKE) -C doc/man1 install
@$(MAKE) -C doc/man3 install
+ @$(MAKE) -C utils install
ifneq ($(strip $(SKIP_IDCHECK)),1)
@./IDcheck.sh
endif
------------------------------------------------------------------------------
Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day
trial. Simplify your report design, integration and deployment - and focus on
what you do best, core application coding. Discover what's new with
Crystal Reports now. http://p.sf.net/sfu/bobj-july
_______________________________________________
Ltp-list mailing list
Ltp-list@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/ltp-list
^ permalink raw reply [flat|nested] 25+ messages in thread
* [LTP] Patch to fix make install issue in ebizzy
2009-08-20 16:06 [LTP] Patch to fix kernbench integration issue Poornima Nayak
@ 2009-08-20 16:07 ` Poornima Nayak
2009-08-20 16:52 ` Garrett Cooper
2009-08-20 16:07 ` [LTP] Patch to include workload for consolidation verification Poornima Nayak
` (7 subsequent siblings)
8 siblings, 1 reply; 25+ messages in thread
From: Poornima Nayak @ 2009-08-20 16:07 UTC (permalink / raw)
To: vaidy, ltp-list, gautham, arun
install: was missing in Makefile of ebizzy, hence make install was throwing error.
This patch will fix make install error.
Signed-off-by: poornima nayak <mpnayak@linux.vnet.ibm.com>
diff -uprN ltp-full-20090731_orig/utils/benchmark/ebizzy-0.3/Makefile ltp-full-20090731/utils/benchmark/ebizzy-0.3/Makefile
--- ltp-full-20090731_orig/utils/benchmark/ebizzy-0.3/Makefile 2009-08-20 19:59:13.000000000 +0530
+++ ltp-full-20090731/utils/benchmark/ebizzy-0.3/Makefile 2009-08-20 20:23:19.000000000 +0530
@@ -4,5 +4,7 @@ configure:
./configure
ebizzy: configure
gcc -Wall -Wshadow -lpthread -o ebizzy ebizzy.c
+install:
+
clean:
rm -f ebizzy *~
------------------------------------------------------------------------------
Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day
trial. Simplify your report design, integration and deployment - and focus on
what you do best, core application coding. Discover what's new with
Crystal Reports now. http://p.sf.net/sfu/bobj-july
_______________________________________________
Ltp-list mailing list
Ltp-list@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/ltp-list
^ permalink raw reply [flat|nested] 25+ messages in thread
* [LTP] Patch to include workload for consolidation verification
2009-08-20 16:06 [LTP] Patch to fix kernbench integration issue Poornima Nayak
2009-08-20 16:07 ` [LTP] Patch to fix make install issue in ebizzy Poornima Nayak
@ 2009-08-20 16:07 ` Poornima Nayak
2009-08-23 7:29 ` Subrata Modak
2009-08-20 16:07 ` [LTP] Patch to get max sched mc & smt values based on kernel version Poornima Nayak
` (6 subsequent siblings)
8 siblings, 1 reply; 25+ messages in thread
From: Poornima Nayak @ 2009-08-20 16:07 UTC (permalink / raw)
To: vaidy, ltp-list, gautham, arun
Modified to pass workload as a parameter for cpu cosolidation verifcation function.
This is required to verify cpu consolidation on Hypre threaded system for kernbench workload.
Signed-off-by: poornima nayak <mpnayak@linux.vnet.ibm.com>
diff -uprN ltp-full-20090731_orig/testcases/kernel/power_management/cpu_consolidation.py ltp-full-20090731/testcases/kernel/power_management/cpu_consolidation.py
--- ltp-full-20090731_orig/testcases/kernel/power_management/cpu_consolidation.py 2009-08-20 19:59:11.000000000 +0530
+++ ltp-full-20090731/testcases/kernel/power_management/cpu_consolidation.py 2009-08-20 20:39:25.000000000 +0530
@@ -45,7 +45,7 @@ def main(argv=None):
duration=60
trigger_workld(options.work_ld, options.stress, duration, background)
generate_report()
- status = validate_cpu_consolidation(options.mc_level, options.smt_level)
+ status = validate_cpu_consolidation(options.work_ld,options.mc_level, options.smt_level)
reset_schedmc()
if is_hyper_threaded():
reset_schedsmt()
------------------------------------------------------------------------------
Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day
trial. Simplify your report design, integration and deployment - and focus on
what you do best, core application coding. Discover what's new with
Crystal Reports now. http://p.sf.net/sfu/bobj-july
_______________________________________________
Ltp-list mailing list
Ltp-list@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/ltp-list
^ permalink raw reply [flat|nested] 25+ messages in thread
* [LTP] Patch to get max sched mc & smt values based on kernel version
2009-08-20 16:06 [LTP] Patch to fix kernbench integration issue Poornima Nayak
2009-08-20 16:07 ` [LTP] Patch to fix make install issue in ebizzy Poornima Nayak
2009-08-20 16:07 ` [LTP] Patch to include workload for consolidation verification Poornima Nayak
@ 2009-08-20 16:07 ` Poornima Nayak
2009-08-23 7:29 ` Subrata Modak
2009-08-20 16:07 ` [LTP] New & modified reusable functions for new & existing testcases Poornima Nayak
` (5 subsequent siblings)
8 siblings, 1 reply; 25+ messages in thread
From: Poornima Nayak @ 2009-08-20 16:07 UTC (permalink / raw)
To: vaidy, ltp-list, gautham, arun
Replaces shell function with C functions to get max sched_mc & sched_smt value.
Since this uses LTP libraray function to analyze kernel version maintenence of the
code will be easier.
Signed-off-by: poornima nayak <mpnayak@linux.vnet.ibm.com>
diff -uprN ltp-full-20090731_orig/testcases/kernel/power_management/get_sched_values.c ltp-full-20090731/testcases/kernel/power_management/get_sched_values.c
--- ltp-full-20090731_orig/testcases/kernel/power_management/get_sched_values.c 1970-01-01 05:30:00.000000000 +0530
+++ ltp-full-20090731/testcases/kernel/power_management/get_sched_values.c 2009-08-20 20:38:13.000000000 +0530
@@ -0,0 +1,53 @@
+/************************************************************************
+* Copyright (c) International Business Machines Corp., 2008
+* This program is free software; you can redistribute it and/or modify
+* it under the terms of the GNU General Public License as published by
+* the Free Software Foundation; either version 2 of the License, or
+* (at your option) any later version.
+*
+* This program is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See
+* the GNU General Public License for more details.
+* You should have received a copy of the GNU General Public License
+* along with this program; if not, write to the Free Software
+* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+*
+***************************************************************************/
+#include <stdio.h>
+#include <test.h>
+
+int get_supp_sched_mc(void) {
+ if (tst_kvercmp(2,6,29) < 0 )
+ return 1;
+ else
+ return 2;
+}
+
+int get_supp_sched_smt(void) {
+ if (tst_kvercmp(2,6,29) < 0 )
+ return 1;
+ else
+ return 2;
+}
+
+int main(int argc, char **argv)
+{
+ char *param;
+ if (argc == 0)
+ return 1;
+ else
+ {
+ param = argv[1];
+ if (strcmp(param, "sched_mc")==0)
+ if (get_supp_sched_mc() == 0)
+ return 0;
+ else
+ return 1;
+ if (strcmp(param, "sched_smt")==0)
+ if (get_supp_sched_smt() == 0)
+ return 0;
+ else
+ return 1;
+ }
+}
------------------------------------------------------------------------------
Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day
trial. Simplify your report design, integration and deployment - and focus on
what you do best, core application coding. Discover what's new with
Crystal Reports now. http://p.sf.net/sfu/bobj-july
_______________________________________________
Ltp-list mailing list
Ltp-list@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/ltp-list
^ permalink raw reply [flat|nested] 25+ messages in thread
* [LTP] New & modified reusable functions for new & existing testcases
2009-08-20 16:06 [LTP] Patch to fix kernbench integration issue Poornima Nayak
` (2 preceding siblings ...)
2009-08-20 16:07 ` [LTP] Patch to get max sched mc & smt values based on kernel version Poornima Nayak
@ 2009-08-20 16:07 ` Poornima Nayak
2009-08-20 16:51 ` Garrett Cooper
2009-08-20 16:07 ` [LTP] Patch for PM makefile for new testcases & fix test_sched_smt integration issue Poornima Nayak
` (4 subsequent siblings)
8 siblings, 1 reply; 25+ messages in thread
From: Poornima Nayak @ 2009-08-20 16:07 UTC (permalink / raw)
To: vaidy, ltp-list, gautham, arun
Implemented reusable functions to learn system architecture before executing
architecture specific testcases.
Signed-off-by: poornima nayak <mpnayak@linux.vnet.ibm.com>
diff -uprN ltp-full-20090731_orig/testcases/kernel/power_management/pm_include.sh ltp-full-20090731/testcases/kernel/power_management/pm_include.sh
--- ltp-full-20090731_orig/testcases/kernel/power_management/pm_include.sh 2009-08-20 19:59:11.000000000 +0530
+++ ltp-full-20090731/testcases/kernel/power_management/pm_include.sh 2009-08-20 20:29:21.000000000 +0530
@@ -112,6 +112,46 @@ function is_multi_socket() {
fi
}
+function is_multi_core() {
+ siblings=`cat /proc/cpuinfo | grep siblings | uniq | cut -f2 -d':'`
+ cpu_cores=`cat /proc/cpuinfo | grep "cpu cores" | uniq | cut -f2 -d':'`
+ echo "siblings count $siblings cores count $cpu_cores"
+ if [ $siblings -eq $cpu_cores ]; then
+ if [ $cpu_cores -gt 1 ]; then
+ return 0
+ else
+ return 1
+ fi
+ else
+ : $(( num_of_cpus = siblings / cpu_cores ))
+ if [ $num_of_cpus -gt 1 ]; then
+ return 0
+ else
+ return 1
+ fi
+ fi
+}
+
+function is_dual_core() {
+ siblings=`cat /proc/cpuinfo | grep siblings | uniq | cut -f2 -d':'`
+ cpu_cores=`cat /proc/cpuinfo | grep "cpu cores" | uniq | cut -f2 -d':'`
+ if [ $siblings -eq $cpu_cores ]; then
+ if [ $cpu_cores -eq 2 ]; then
+ return 1
+ else
+ return 0
+ fi
+ else
+ : $(( num_of_cpus = siblings / cpu_cores ))
+ if [ $num_of_cpus -eq 2 ]; then
+ echo "number of cpus $num_of_cpus"
+ return 1
+ else
+ return 0
+ fi
+ fi
+}
+
function get_kernel_version() {
# Get kernel minor version
export kernel_version=`uname -r | awk -F. '{print $1"."$2"."$3}' | cut -f1 -d'-'`
@@ -120,42 +160,12 @@ function get_kernel_version() {
function get_valid_input() {
kernel_version=$1
case "$kernel_version" in
- '2.6.29' | '2.6.30' | '2.6.31')
- export valid_input="0 1 2" ;;
- *) export valid_input="0 1" ;;
+ '2.6.26' | '2.6.27' | '2.6.28')
+ export valid_input="0 1" ;;
+ *) export valid_input="0 1 2" ;;
esac
}
-function get_max_sched_mc() {
- get_kernel_version
- case "$kernel_version" in
- '2.6.29' | '2.6.30' | '2.6.31')
- return 2
- ;;
- '2.6.26' | '2.6.27' | '2.6.28')
- return 1
- ;;
- *)
- return 0
- ;;
- esac
-}
-
-function get_max_sched_smt() {
- get_kernel_version
- case "$kernel_version" in
- '2.6.29' | '2.6.30' | '2.6.31')
- return 2
- ;;
- '2.6.26' | '2.6.27' | '2.6.28')
- return 1
- ;;
- *)
- return 0
- ;;
- esac
-}
-
function check_supp_wkld() {
sched_mcsmt=$1
work_load=$2
@@ -184,58 +194,33 @@ function analyze_wrt_workload_hyperthrea
work_load=$2
pass_count=$3
sched_smt=$4
- stress=$5
- if [ $sched_mc > $sched_smt ]; then
+ if [ $sched_mc -gt $sched_smt ]; then
check_supp_wkld $sched_mc $work_load; valid_workload=$?
else
check_supp_wkld $sched_smt $work_load; valid_workload=$?
fi
- if [ "$stress" = "thread" ]; then
- case "$valid_workload" in
- 0)
- if [ $pass_count -lt 5 ]; then
- RC=1
- tst_resm TFAIL "Consolidation at core level failed for \
-sched_mc=$sched_mc, sched_smt=$sched_smt for workload=$work_load"
- else
- tst_resm TPASS "Consolidation at core level passed for \
-sched_mc=$sched_mc, sched_smt=$sched_smt & workload=$work_load"
- fi ;;
- 1)
- if [ $pass_count -lt 5 ]; then
- tst_resm TPASS "Consolidation at core level failed for \
-unsupported workload $work_load when sched_mc=$sched_mc & sched_smt=$sched_smt"
- else
- RC=1
- tst_resm TFAIL "Consolidation at core level passed for \
-unsupported workload $work_load when sched_mc=$sched_mc & sched_smt=$sched_smt"
- fi ;;
- esac
- else
- case "$valid_workload" in
- 0)
- if [ $pass_count -lt 5 ]; then
- RC=1
- tst_resm TFAIL "Consolidation at package level failed for \
+ case "$valid_workload" in
+ 0)
+ if [ $pass_count -lt 5 ]; then
+ RC=1
+ tst_resm TFAIL "Consolidation at package level failed for \
sched_mc=$sched_mc, sched_smt=$sched_smt for workload=$work_load"
- else
- tst_resm TPASS "Consolidation at package level passed for \
+ else
+ tst_resm TPASS "Consolidation at package level passed for \
sched_mc=$sched_mc, sched_smt=$sched_smt & workload=$work_load"
- fi ;;
- 1)
- echo "pass count is $pass_count"
- if [ $pass_count -lt 5 ]; then
- tst_resm TPASS "Consolidation at package level failed for \
+ fi ;;
+ 1)
+ if [ $pass_count -lt 5 ]; then
+ tst_resm TPASS "Consolidation at package level failed for \
unsupported workload $work_load when sched_mc=$sched_mc & sched_smt=$sched_smt"
- else
- RC=1
- tst_resm TFAIL "Consolidation at package level passed for \
+ else
+ RC=1
+ tst_resm TFAIL "Consolidation at package level passed for \
unsupported workload $work_load when sched_mc=$sched_mc & sched_smt=$sched_smt"
- fi ;;
+ fi ;;
esac
- fi
}
function analyze_wrt_wkld() {
@@ -243,12 +228,11 @@ function analyze_wrt_wkld() {
work_load=$2
pass_count=$3
sched_smt=$4
- stress=$5
check_supp_wkld $sched_mc $work_load; valid_workload=$?
if [ $hyper_threaded -eq $YES ]; then
analyze_wrt_workload_hyperthreaded $sched_mc $work_load $pass_count\
- $sched_smt $stress
+ $sched_smt
else
case "$valid_workload" in
0)
@@ -278,74 +262,56 @@ function analyze_result_hyperthreaded()
work_load=$2
pass_count=$3
sched_smt=$4
- stress=$5
+ echo "sched_mc =$sched_mc work-load=$work_load pass_count=$pass_count sched_smt=$sched_smt"
case "$sched_mc" in
0)
if [ $sched_smt ]; then
case "$sched_smt" in
0)
- if [ "$stress" = "thread" ]; then
- if [ $pass_count -lt 1 ]; then
- tst_resm TPASS "Consolidation at core level failed for sched_mc=\
-$sched_mc & sched_smt=$sched_smt for workload=$work_load"
- else
- RC=1
- tst_resm TFAIL "Consolidation at core level passed for sched_mc=\
+ if [ "$pass_count" -lt 5 ]; then
+ tst_resm TPASS "cpu consolidation failed for sched_mc=\
$sched_mc & sched_smt=$sched_smt for workload=$work_load"
- fi
else
- if [ "$pass_count" -lt 1 ]; then
- tst_resm TPASS "cpu consolidation failed for sched_mc=\
-$sched_mc & sched_smt=$sched_smt for workload=$work_load"
- else
- RC=1
- tst_resm TFAIL "cpu consolidation passed for sched_mc=\
+ RC=1
+ tst_resm TFAIL "cpu consolidation passed for sched_mc=\
$sched_mc & sched_smt=$sched_smt for workload=$work_load"
- fi
fi
;;
*)
- if [ "$stress" = "thread" ]; then
- analyze_wrt_wkld $sched_mc $work_load $pass_count $sched_smt $stress
- else
- analyze_wrt_wkld $sched_mc $work_load $pass_count $sched_smt
- fi ;;
+ analyze_wrt_wkld $sched_mc $work_load $pass_count $sched_smt
+ ;;
esac
else
- if [ $pass_count -lt 1 ]; then
+ if [ $pass_count -lt 5 ]; then
tst_resm TPASS "cpu consolidation failed for sched_mc=\
$sched_mc for workload=$work_load"
else
RC=1
tst_resm TFAIL "cpu consolidation passed for sched_mc=\
-$sched_mc & sched_smt=$sched_smt for workload=$work_load"
+$sched_mc for workload=$work_load"
fi
fi
;;
*)
- if [ "$stress" = "thread" ]; then
- analyze_wrt_wkld $sched_mc $work_load $pass_count $sched_smt $stress
- else
analyze_wrt_wkld $sched_mc $work_load $pass_count $sched_smt
- fi
;;
esac
}
-function analyze_consolidation_result() {
+function analyze_package_consolidation_result() {
sched_mc=$1
work_load=$2
pass_count=$3
sched_smt=$4
- stress=$5
+ echo "sched mc $sched_mc sched smt is $sched_smt workload $work_load pass count $pass_count"
if [ $hyper_threaded -eq $YES ]; then
- analyze_result_hyperthreaded $sched_mc $work_load $pass_count $sched_smt $stress
+ analyze_result_hyperthreaded $sched_mc $work_load $pass_count $sched_smt
else
case "$sched_mc" in
0)
- if [ $pass_count -lt 1 ]; then
+ if [ $pass_count -lt 5 ]; then
tst_resm TPASS "cpu consolidation failed for sched_mc=\
$sched_mc for workload=$work_load"
else
@@ -360,6 +326,33 @@ $sched_mc for workload=$work_load"
fi
}
+function analyze_core_consolidation_result() {
+ sched_smt=$1
+ work_load=$2
+ pass_count=$3
+
+ case "$valid_workload" in
+ 0)
+ if [ $pass_count -lt 5 ]; then
+ RC=1
+ tst_resm TFAIL "Consolidation at core level failed for \
+sched_mc=$sched_mc, sched_smt=$sched_smt for workload=$work_load"
+ else
+ tst_resm TPASS "Consolidation at core level passed for \
+sched_mc=$sched_mc, sched_smt=$sched_smt & workload=$work_load"
+ fi ;;
+ 1)
+ if [ $pass_count -lt 5 ]; then
+ tst_resm TPASS "Consolidation at core level failed for \
+unsupported workload $work_load when sched_mc=$sched_mc & sched_smt=$sched_smt"
+ else
+ RC=1
+ tst_resm TFAIL "Consolidation at core level passed for \
+unsupported workload $work_load when sched_mc=$sched_mc & sched_smt=$sched_smt"
+ fi ;;
+ esac
+}
+
function analyze_sched_domain_result(){
sched_mc=$1
result=$2
------------------------------------------------------------------------------
Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day
trial. Simplify your report design, integration and deployment - and focus on
what you do best, core application coding. Discover what's new with
Crystal Reports now. http://p.sf.net/sfu/bobj-july
_______________________________________________
Ltp-list mailing list
Ltp-list@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/ltp-list
^ permalink raw reply [flat|nested] 25+ messages in thread
* [LTP] Patch for PM makefile for new testcases & fix test_sched_smt integration issue
2009-08-20 16:06 [LTP] Patch to fix kernbench integration issue Poornima Nayak
` (3 preceding siblings ...)
2009-08-20 16:07 ` [LTP] New & modified reusable functions for new & existing testcases Poornima Nayak
@ 2009-08-20 16:07 ` Poornima Nayak
2009-08-20 17:01 ` Garrett Cooper
2009-08-20 16:07 ` [LTP] Patch for PM Master script to integrate new testcases Poornima Nayak
` (3 subsequent siblings)
8 siblings, 1 reply; 25+ messages in thread
From: Poornima Nayak @ 2009-08-20 16:07 UTC (permalink / raw)
To: vaidy, ltp-list, gautham, arun
Patch to integrate test_sched_smt and timer_migration testcase to LTP.
Also intergrates the new file get_sched_value to LTP.
Signed-off-by: poornima nayak <mpnayak@linux.vnet.ibm.com>
diff -uprN ltp-full-20090731_orig/testcases/kernel/power_management/Makefile ltp-full-20090731/testcases/kernel/power_management/Makefile
--- ltp-full-20090731_orig/testcases/kernel/power_management/Makefile 2009-08-20 19:59:11.000000000 +0530
+++ ltp-full-20090731/testcases/kernel/power_management/Makefile 2009-08-20 20:26:39.000000000 +0530
@@ -23,12 +23,16 @@ SUBDIRS :=
all:
@set -e; for i in $(SUBDIRS); do $(MAKE) -C $$i $@; done;
$(MAKE) check_kv_arch ;
+ $(MAKE) get_sched_values ;
-check_kv_arch: check_kv_arch.c
+check_kv_arch: check_kv_arch.c
+ $(CC) -o $@ $< ../../../lib/tst_kvercmp.c -I../../../include
+get_sched_values: get_sched_values.c
$(CC) -o $@ $< ../../../lib/tst_kvercmp.c -I../../../include
install:
@set -e; ln -f check_kv_arch ../../bin/check_kv_arch; \
+ ln -f get_sched_values ../../bin/get_sched_values; \
ln -f change_freq.sh ../../bin/change_freq.sh; \
ln -f change_govr.sh ../../bin/change_govr.sh; \
ln -f check_cpufreq_sysfs_files.sh ../../bin/check_cpufreq_sysfs_files.sh; \
@@ -37,6 +41,8 @@ install:
ln -f pm_include.sh ../../bin/pm_include.sh; \
ln -f runpwtests.sh ../../bin/runpwtests.sh; \
ln -f test_sched_mc.sh ../../bin/test_sched_mc.sh; \
+ ln -f test_sched_mc.sh ../../bin/test_sched_smt.sh; \
+ ln -f test_sched_mc.sh ../../bin/test_timer_migration.sh; \
ln -f config_cpu_freq ../../bin/config_cpu_freq; \
ln -f config_cpu_idle ../../bin/config_cpu_idle; \
ln -f config_sched_mc ../../bin/config_sched_mc;
@@ -47,4 +53,4 @@ install:
clean:
@set -e; for i in $(SUBDIRS); do $(MAKE) -C $$i $@ ; done
rm -f check_kv_arch
-
+ rm -f get_sched_values
------------------------------------------------------------------------------
Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day
trial. Simplify your report design, integration and deployment - and focus on
what you do best, core application coding. Discover what's new with
Crystal Reports now. http://p.sf.net/sfu/bobj-july
_______________________________________________
Ltp-list mailing list
Ltp-list@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/ltp-list
^ permalink raw reply [flat|nested] 25+ messages in thread
* [LTP] Patch for PM Master script to integrate new testcases
2009-08-20 16:06 [LTP] Patch to fix kernbench integration issue Poornima Nayak
` (4 preceding siblings ...)
2009-08-20 16:07 ` [LTP] Patch for PM makefile for new testcases & fix test_sched_smt integration issue Poornima Nayak
@ 2009-08-20 16:07 ` Poornima Nayak
2009-08-23 7:29 ` Subrata Modak
2009-08-20 16:08 ` [LTP] Patch to fix cpu consolidation failure for kernbench on HT system Poornima Nayak
` (2 subsequent siblings)
8 siblings, 1 reply; 25+ messages in thread
From: Poornima Nayak @ 2009-08-20 16:07 UTC (permalink / raw)
To: vaidy, ltp-list, gautham, arun
Modified Master script of power management testcases to include new test case
and to increase test coverage on system which is not multi core but hyper threaded.
Signed-off-by: poornima nayak <mpnayak@linux.vnet.ibm.com>
diff -uprN ltp-full-20090731_orig/testcases/kernel/power_management/runpwtests.sh ltp-full-20090731/testcases/kernel/power_management/runpwtests.sh
--- ltp-full-20090731_orig/testcases/kernel/power_management/runpwtests.sh 2009-08-20 19:59:11.000000000 +0530
+++ ltp-full-20090731/testcases/kernel/power_management/runpwtests.sh 2009-08-20 20:41:02.000000000 +0530
@@ -40,6 +40,7 @@ export contacts="mpnayak@linux.vnet.ibm.
export analysis="/proctstat"
YES=0
+NO=1
#List of reusable functions defined in pm_include.sh
. ./pm_include.sh
@@ -61,34 +62,50 @@ if [ $RC -eq 1 ] ; then
fi
is_hyper_threaded; hyper_threaded=$?
+is_multi_socket; multi_socket=$?
+is_multi_core; multi_core=$?
+is_dual_core; dual_core=$?
#Checking sched_mc sysfs interface
#check_config.sh config_sched_mc || RC=$?
TST_COUNT=1
-if [ -f /sys/devices/system/cpu/sched_mc_power_savings ] ; then
- if test_sched_mc.sh ; then
- tst_resm TPASS "SCHED_MC sysfs tests"
+if [ $multi_socket -eq $YES -a $dual_core -eq $YES ] ; then
+ if [ -f /sys/devices/system/cpu/sched_mc_power_savings ] ; then
+ if test_sched_mc.sh ; then
+ tst_resm TPASS "SCHED_MC sysfs tests"
+ else
+ RC=$?
+ tst_resm TFAIL "SCHED_MC sysfs tests"
+ fi
else
- RC=$?
- tst_resm TFAIL "SCHED_MC sysfs tests"
+ tst_resm TCONF "Required kernel configuration for SCHED_MC NOT set"
fi
else
- tst_resm TCONF "Required kernel configuration for SCHED_MC NOT set"
+ if [ -f /sys/devices/system/cpu/sched_mc_power_savings ] ; then
+ tst_resm TFAIL "sched_mc_power_savings interface in system which is not a multi socket &(/) multi core"
+ else
+ tst_resm TCONF "Not a suitable architecture for SCHED_MC test"
+ fi
fi
# Test sched_smt_power_savings interface on HT machines
: $(( TST_COUNT += 1 ))
-if [ -f /sys/devices/system/cpu/sched_smt_power_savings ] ; then
- if test_sched_smt.sh; then
- tst_resm TPASS "SCHED_SMT sysfs test"
+if [ $hyper_threaded -eq $YES ]; then
+ if [ -f /sys/devices/system/cpu/sched_smt_power_savings ] ; then
+ if test_sched_smt.sh; then
+ tst_resm TPASS "SCHED_SMT sysfs test"
+ else
+ RC=$?
+ tst_resm TFAIL "SCHED_SMT sysfs test"
+ fi
else
RC=$?
- tst_resm TFAIL "SCHED_SMT sysfs test"
- fi
+ tst_resm TFAIL "Required kernel configuration for SCHED_SMT NOT set"
+ fi
else
- if [ $hyper_threaded -eq $YES ]; then
+ if [ -f /sys/devices/system/cpu/sched_smt_power_savings ] ; then
RC=$?
- tst_resm TFAIL "Required kernel configuration for SCHED_SMT NOT set"
+ tst_resm TFAIL "sched_smt_power_saving interface in system not hyper-threaded"
else
tst_resm TCONF "Required Hyper Threading support for SCHED_SMT test"
fi
@@ -152,13 +169,13 @@ if [ $? -ne 0 ] ; then
tst_resm TCONF "Python is not installed, CPU Consoldation\
test cannot run"
else
- get_max_sched_mc; max_sched_mc=$?
+ get_sched_values sched_mc; max_sched_mc=$?
for sched_mc in `seq 0 $max_sched_mc`; do
: $(( TST_COUNT+=1))
sched_domain.py -c $sched_mc; RC=$?
analyze_sched_domain_result $sched_mc $RC
if [ $hyper_threaded -eq $YES ]; then
- get_max_sched_smt ; max_sched_smt=$?
+ get_sched_values sched_smt; max_sched_smt=$?
for sched_smt in `seq 0 $max_sched_smt`; do
# Testcase to validate sched_domain tree
: $(( TST_COUNT+=1))
@@ -168,32 +185,54 @@ else
fi
done
fi
+
+: $(( TST_COUNT+=1))
+if [ -f /proc/sys/kernel/timer_migration ]; then
+ if test_timer_migration.sh; then
+ tst_resm TPASS "Timer Migration interface test"
+ else
+ RC=$?
+ tst_resm TFAIL "Timer migration interface test"
+ fi
+else
+ check_kv_arch "timer_migration"; supp=$?
+ if [ $supp -eq $YES ]; then
+ RC=$?
+ tst_resm TFAIL "Timer migration interface missing"
+ else
+ tst_resm TCONF "Kernel version does not support Timer migration"
+ fi
+fi
+
+: $(( TST_COUNT+=1))
+if check_cpufreq_sysfs_files.sh; then
+ tst_resm TPASS "CPUFREQ sysfs tests"
+ else
+ RC=$?
+ tst_resm TFAIL "CPUFREQ sysfs tests "
+ fi
+
if [ $# -gt 0 -a "$1" = "-exclusive" ]; then
# Test CPU consolidation
- which python > /dev/null
- if [ $? -ne 0 ] ; then
- tst_resm TCONF "Python is not installed, CPU Consoldation\
- test not run"
- else
- sched_mc_smt_pass_cnt=0
+ if [ $multi_socket -eq $YES -a $multi_core -eq $YES ]; then
work_loads_list="ebizzy kernbench"
for sched_mc in `seq 0 $max_sched_mc`; do
for work_load in ${work_loads_list}
- do
+ do
: $(( TST_COUNT += 1 ))
sched_mc_pass_cnt=0
for repeat_test in `seq 1 10`; do
- #Testcase to validate CPU consolidation for sched_mc
+ #Testcase to validate CPU consolidation for sched_mc
if cpu_consolidation.py -c $sched_mc -w $work_load ; then
: $(( sched_mc_pass_cnt += 1 ))
fi
done
- analyze_consolidation_result $sched_mc $work_load $sched_mc_pass_cnt
+ analyze_package_consolidation_result $sched_mc $work_load $sched_mc_pass_cnt
done
if [ $hyper_threaded -eq $YES ]; then
for sched_smt in `seq 0 $max_sched_smt`; do
for work_load in ${work_loads_list}; do
- : $(( TST_COUNT += 1 ))
+ : $(( TST_COUNT += 1 ))
sched_mc_smt_pass_cnt=0
for repeat_test in `seq 1 10`; do
# Testcase to validate CPU consolidation for
@@ -201,24 +240,26 @@ if [ $# -gt 0 -a "$1" = "-exclusive" ];
if cpu_consolidation.py -c $sched_mc -t $sched_smt -w $work_load; then
: $(( sched_mc_smt_pass_cnt += 1 ))
fi
+ echo "sched_mc_smt_pass_cnt = $sched_mc_smt_pass_cnt"
done
- analyze_consolidation_result $sched_mc $work_load $sched_mc_smt_pass_cnt $sched_smt
-
- #Testcase to validate consolidation at core level
- sched_mc_smt_pass_cnt=0
- stress="thread"
- : $(( TST_COUNT += 1 ))
- for repeat_test in `seq 1 10`; do
- if cpu_consolidation.py -c $sched_mc -t $sched_smt -w $work_load -s $stress; then
- : $(( sched_mc_smt_pass_cnt += 1 ))
- fi
- done
- analyze_consolidation_result $sched_mc $work_load $sched_mc_smt_pass_cnt $sched_smt $stress
+ analyze_package_consolidation_result $sched_mc $work_load $sched_mc_smt_pass_cnt $sched_smt
done
done
fi
done
fi
+ if [ $hyper_threaded -eq $YES ]; then
+ #Testcase to validate consolidation at core level
+ sched_smt_pass_cnt=0
+ : $(( TST_COUNT += 1 ))
+ stress="thread"
+ for repeat_test in `seq 1 10`; do
+ if cpu_consolidation.py -c $sched_mc -t $sched_smt -w $work_load -s $stress; then
+ : $(( sched_smt_pass_cnt += 1 ))
+ fi
+ done
+ analyze_core_consolidation_result $sched_smt $work_load $sched_smt_pass_cnt
+ fi
fi
exit $RC
------------------------------------------------------------------------------
Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day
trial. Simplify your report design, integration and deployment - and focus on
what you do best, core application coding. Discover what's new with
Crystal Reports now. http://p.sf.net/sfu/bobj-july
_______________________________________________
Ltp-list mailing list
Ltp-list@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/ltp-list
^ permalink raw reply [flat|nested] 25+ messages in thread
* [LTP] Patch to fix cpu consolidation failure for kernbench on HT system
2009-08-20 16:06 [LTP] Patch to fix kernbench integration issue Poornima Nayak
` (5 preceding siblings ...)
2009-08-20 16:07 ` [LTP] Patch for PM Master script to integrate new testcases Poornima Nayak
@ 2009-08-20 16:08 ` Poornima Nayak
2009-08-20 17:00 ` Garrett Cooper
2009-08-23 7:28 ` Subrata Modak
2009-08-20 16:08 ` [LTP] New testcase to test timer_migration interface Poornima Nayak
2009-08-20 16:53 ` [LTP] Patch to fix kernbench integration issue Garrett Cooper
8 siblings, 2 replies; 25+ messages in thread
From: Poornima Nayak @ 2009-08-20 16:08 UTC (permalink / raw)
To: vaidy, ltp-list, gautham, arun
Threshold and validation functions modified for testcases run on HT systems.
Signed-off-by: poornima nayak <mpnayak@linux.vnet.ibm.com>
diff -uprN ltp-full-20090731_orig/testcases/kernel/power_management/lib/sched_mc.py ltp-full-20090731/testcases/kernel/power_management/lib/sched_mc.py
--- ltp-full-20090731_orig/testcases/kernel/power_management/lib/sched_mc.py 2009-08-20 19:59:11.000000000 +0530
+++ ltp-full-20090731/testcases/kernel/power_management/lib/sched_mc.py 2009-08-20 20:33:21.000000000 +0530
@@ -193,6 +193,8 @@ def trigger_ebizzy (stress, duration, ba
threads = get_hyper_thread_count()
if stress == "partial":
threads = cpu_count / socket_count
+ if is_hyper_threaded():
+ threads = threads / get_hyper_thread_count()
if stress == "full":
threads = cpu_count
@@ -244,9 +246,11 @@ def trigger_kernbench (stress, backgroun
olddir = os.getcwd()
try:
if stress == "thread":
- threads = 2
+ threads = 2
if stress == "partial":
- threads = cpu_count / socket_count
+ threads = cpu_count / socket_count
+ if is_hyper_threaded():
+ threads = threads / get_hyper_thread_count()
if stress == "full":
threads = cpu_count
@@ -281,7 +285,8 @@ def trigger_kernbench (stress, backgroun
sys.exit(1)
get_proc_data(stats_start)
- os.system ( '%s/kernbench -o 2 -M -H -n 1 >/dev/null 2>&1' % benchmark_path)
+ os.system ( '%s/kernbench -o %s -M -H -n 1 >/dev/null 2>&1' % (benchmark_path, threads))
+ print threads
print "INFO: Workload kernbench triggerd"
os.chdir(olddir)
@@ -438,6 +443,8 @@ def validate_cpugrp_map(cpu_group, sched
for i in range(0, len(core_cpus)):
if core_cpus[i] in modi_cpu_grp:
modi_cpu_grp.remove(core_cpus[i])
+ if len(modi_cpu_grp) == 0:
+ return 0
else:
# If sched_smt == 0 then its oky if threads run
# in different cores of same package
@@ -499,24 +506,35 @@ def verify_sched_domain_dmesg(sched_mc_l
print "Reading dmesg failed", details
sys.exit(1)
-def validate_cpu_consolidation(sched_mc_level, sched_smt_level):
+def validate_cpu_consolidation(work_ld, sched_mc_level, sched_smt_level):
''' Verify if cpu's on which threads executed belong to same
package
'''
cpus_utilized = list()
try:
for l in sorted(stats_percentage.keys()):
- #modify threshold
- if stats_percentage[l][1] > 50:
- cpu_id = stats_percentage[l][0].split("cpu")
- if cpu_id[1] != '':
- cpus_utilized.append(int(cpu_id[1]))
- cpus_utilized.sort()
+ #modify threshold
+ if is_hyper_threaded():
+ if stats_percentage[l][1] > 25 and work_ld == "kernbench":
+ cpu_id = stats_percentage[l][0].split("cpu")
+ if cpu_id[1] != '':
+ cpus_utilized.append(int(cpu_id[1]))
+ else:
+ if stats_percentage[l][1] > 50:
+ cpu_id = stats_percentage[l][0].split("cpu")
+ if cpu_id[1] != '':
+ cpus_utilized.append(int(cpu_id[1]))
+ else:
+ if stats_percentage[l][1] > 50:
+ cpu_id = stats_percentage[l][0].split("cpu")
+ if cpu_id[1] != '':
+ cpus_utilized.append(int(cpu_id[1]))
+ cpus_utilized.sort()
print "INFO: CPU's utilized ", cpus_utilized
status = validate_cpugrp_map(cpus_utilized, sched_mc_level, sched_smt_level)
- if status == 1:
- print "INFO: CPUs utilized is not in same package or core"
+ if status == 1:
+ print "INFO: CPUs utilized is not in same package or core"
return(status)
except Exception, details:
print "Exception in validate_cpu_consolidation: ", details
------------------------------------------------------------------------------
Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day
trial. Simplify your report design, integration and deployment - and focus on
what you do best, core application coding. Discover what's new with
Crystal Reports now. http://p.sf.net/sfu/bobj-july
_______________________________________________
Ltp-list mailing list
Ltp-list@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/ltp-list
^ permalink raw reply [flat|nested] 25+ messages in thread
* [LTP] New testcase to test timer_migration interface
2009-08-20 16:06 [LTP] Patch to fix kernbench integration issue Poornima Nayak
` (6 preceding siblings ...)
2009-08-20 16:08 ` [LTP] Patch to fix cpu consolidation failure for kernbench on HT system Poornima Nayak
@ 2009-08-20 16:08 ` Poornima Nayak
2009-08-20 16:57 ` Garrett Cooper
2009-08-20 16:53 ` [LTP] Patch to fix kernbench integration issue Garrett Cooper
8 siblings, 1 reply; 25+ messages in thread
From: Poornima Nayak @ 2009-08-20 16:08 UTC (permalink / raw)
To: vaidy, ltp-list, gautham, arun
This is the new tescase to test timer migration interface.
Signed-off-by: poornima nayak <mpnayak@linux.vnet.ibm.com>
diff -uprN ltp-full-20090731_orig/testcases/kernel/power_management/test_timer_migration.sh ltp-full-20090731/testcases/kernel/power_management/test_timer_migration.sh
--- ltp-full-20090731_orig/testcases/kernel/power_management/test_timer_migration.sh 1970-01-01 05:30:00.000000000 +0530
+++ ltp-full-20090731/testcases/kernel/power_management/test_timer_migration.sh 2009-08-20 20:49:48.000000000 +0530
@@ -0,0 +1,22 @@
+#!/bin/bash
+
+. pm_include.sh
+
+valid_input="0 1"
+invalid_input="3 4 5 6 7 8 a abcefg x1999 xffff -1 -00000
+200000000000000000000000000000000000000000000000000000000000000000000000000000
+ox324 -0xfffffffffffffffffffff"
+test_file="/proc/sys/kernel/timer_migration"
+if [ ! -f ${test_file} ] ; then
+ echo "MISSING_FILE: missing file ${test_file}"
+ exit $MISSING_FILE
+fi
+
+RC=0
+echo "${0}: ---Valid test cases---"
+check_input "${valid_input}" valid $test_file
+RC=$?
+echo "${0}: ---Invalid test cases---"
+check_input "${invalid_input}" invalid $test_file
+RC=$(( RC | $? ))
+exit $RC
------------------------------------------------------------------------------
Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day
trial. Simplify your report design, integration and deployment - and focus on
what you do best, core application coding. Discover what's new with
Crystal Reports now. http://p.sf.net/sfu/bobj-july
_______________________________________________
Ltp-list mailing list
Ltp-list@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/ltp-list
^ permalink raw reply [flat|nested] 25+ messages in thread
* Re: [LTP] New & modified reusable functions for new & existing testcases
2009-08-20 16:07 ` [LTP] New & modified reusable functions for new & existing testcases Poornima Nayak
@ 2009-08-20 16:51 ` Garrett Cooper
2009-08-23 7:29 ` Subrata Modak
0 siblings, 1 reply; 25+ messages in thread
From: Garrett Cooper @ 2009-08-20 16:51 UTC (permalink / raw)
To: Poornima Nayak; +Cc: ltp-list, arun, vaidy, gautham
On Thu, Aug 20, 2009 at 9:07 AM, Poornima
Nayak<mpnayak@linux.vnet.ibm.com> wrote:
> Implemented reusable functions to learn system architecture before executing
> architecture specific testcases.
>
> Signed-off-by: poornima nayak <mpnayak@linux.vnet.ibm.com>
>
> diff -uprN ltp-full-20090731_orig/testcases/kernel/power_management/pm_include.sh ltp-full-20090731/testcases/kernel/power_management/pm_include.sh
> --- ltp-full-20090731_orig/testcases/kernel/power_management/pm_include.sh 2009-08-20 19:59:11.000000000 +0530
> +++ ltp-full-20090731/testcases/kernel/power_management/pm_include.sh 2009-08-20 20:29:21.000000000 +0530
> @@ -112,6 +112,46 @@ function is_multi_socket() {
> fi
> }
>
> +function is_multi_core() {
> + siblings=`cat /proc/cpuinfo | grep siblings | uniq | cut -f2 -d':'`
> + cpu_cores=`cat /proc/cpuinfo | grep "cpu cores" | uniq | cut -f2 -d':'`
> + echo "siblings count $siblings cores count $cpu_cores"
> + if [ $siblings -eq $cpu_cores ]; then
> + if [ $cpu_cores -gt 1 ]; then
> + return 0
> + else
> + return 1
> + fi
> + else
> + : $(( num_of_cpus = siblings / cpu_cores ))
> + if [ $num_of_cpus -gt 1 ]; then
> + return 0
> + else
> + return 1
> + fi
> + fi
> +}
> +
> +function is_dual_core() {
> + siblings=`cat /proc/cpuinfo | grep siblings | uniq | cut -f2 -d':'`
> + cpu_cores=`cat /proc/cpuinfo | grep "cpu cores" | uniq | cut -f2 -d':'`
> + if [ $siblings -eq $cpu_cores ]; then
> + if [ $cpu_cores -eq 2 ]; then
> + return 1
> + else
> + return 0
> + fi
> + else
> + : $(( num_of_cpus = siblings / cpu_cores ))
> + if [ $num_of_cpus -eq 2 ]; then
> + echo "number of cpus $num_of_cpus"
> + return 1
> + else
> + return 0
> + fi
> + fi
> +}
> +
> function get_kernel_version() {
> # Get kernel minor version
> export kernel_version=`uname -r | awk -F. '{print $1"."$2"."$3}' | cut -f1 -d'-'`
> @@ -120,42 +160,12 @@ function get_kernel_version() {
> function get_valid_input() {
> kernel_version=$1
> case "$kernel_version" in
> - '2.6.29' | '2.6.30' | '2.6.31')
> - export valid_input="0 1 2" ;;
> - *) export valid_input="0 1" ;;
> + '2.6.26' | '2.6.27' | '2.6.28')
> + export valid_input="0 1" ;;
> + *) export valid_input="0 1 2" ;;
> esac
> }
>
> -function get_max_sched_mc() {
> - get_kernel_version
> - case "$kernel_version" in
> - '2.6.29' | '2.6.30' | '2.6.31')
> - return 2
> - ;;
> - '2.6.26' | '2.6.27' | '2.6.28')
> - return 1
> - ;;
> - *)
> - return 0
> - ;;
> - esac
> -}
> -
> -function get_max_sched_smt() {
> - get_kernel_version
> - case "$kernel_version" in
> - '2.6.29' | '2.6.30' | '2.6.31')
> - return 2
> - ;;
> - '2.6.26' | '2.6.27' | '2.6.28')
> - return 1
> - ;;
> - *)
> - return 0
> - ;;
> - esac
> -}
> -
> function check_supp_wkld() {
> sched_mcsmt=$1
> work_load=$2
> @@ -184,58 +194,33 @@ function analyze_wrt_workload_hyperthrea
> work_load=$2
> pass_count=$3
> sched_smt=$4
> - stress=$5
>
> - if [ $sched_mc > $sched_smt ]; then
> + if [ $sched_mc -gt $sched_smt ]; then
> check_supp_wkld $sched_mc $work_load; valid_workload=$?
> else
> check_supp_wkld $sched_smt $work_load; valid_workload=$?
> fi
>
> - if [ "$stress" = "thread" ]; then
> - case "$valid_workload" in
> - 0)
> - if [ $pass_count -lt 5 ]; then
> - RC=1
> - tst_resm TFAIL "Consolidation at core level failed for \
> -sched_mc=$sched_mc, sched_smt=$sched_smt for workload=$work_load"
> - else
> - tst_resm TPASS "Consolidation at core level passed for \
> -sched_mc=$sched_mc, sched_smt=$sched_smt & workload=$work_load"
> - fi ;;
> - 1)
> - if [ $pass_count -lt 5 ]; then
> - tst_resm TPASS "Consolidation at core level failed for \
> -unsupported workload $work_load when sched_mc=$sched_mc & sched_smt=$sched_smt"
> - else
> - RC=1
> - tst_resm TFAIL "Consolidation at core level passed for \
> -unsupported workload $work_load when sched_mc=$sched_mc & sched_smt=$sched_smt"
> - fi ;;
> - esac
> - else
> - case "$valid_workload" in
> - 0)
> - if [ $pass_count -lt 5 ]; then
> - RC=1
> - tst_resm TFAIL "Consolidation at package level failed for \
> + case "$valid_workload" in
> + 0)
> + if [ $pass_count -lt 5 ]; then
> + RC=1
> + tst_resm TFAIL "Consolidation at package level failed for \
> sched_mc=$sched_mc, sched_smt=$sched_smt for workload=$work_load"
> - else
> - tst_resm TPASS "Consolidation at package level passed for \
> + else
> + tst_resm TPASS "Consolidation at package level passed for \
> sched_mc=$sched_mc, sched_smt=$sched_smt & workload=$work_load"
> - fi ;;
> - 1)
> - echo "pass count is $pass_count"
> - if [ $pass_count -lt 5 ]; then
> - tst_resm TPASS "Consolidation at package level failed for \
> + fi ;;
> + 1)
> + if [ $pass_count -lt 5 ]; then
> + tst_resm TPASS "Consolidation at package level failed for \
> unsupported workload $work_load when sched_mc=$sched_mc & sched_smt=$sched_smt"
> - else
> - RC=1
> - tst_resm TFAIL "Consolidation at package level passed for \
> + else
> + RC=1
> + tst_resm TFAIL "Consolidation at package level passed for \
> unsupported workload $work_load when sched_mc=$sched_mc & sched_smt=$sched_smt"
> - fi ;;
> + fi ;;
> esac
> - fi
> }
>
> function analyze_wrt_wkld() {
> @@ -243,12 +228,11 @@ function analyze_wrt_wkld() {
> work_load=$2
> pass_count=$3
> sched_smt=$4
> - stress=$5
>
> check_supp_wkld $sched_mc $work_load; valid_workload=$?
> if [ $hyper_threaded -eq $YES ]; then
> analyze_wrt_workload_hyperthreaded $sched_mc $work_load $pass_count\
> - $sched_smt $stress
> + $sched_smt
> else
> case "$valid_workload" in
> 0)
> @@ -278,74 +262,56 @@ function analyze_result_hyperthreaded()
> work_load=$2
> pass_count=$3
> sched_smt=$4
> - stress=$5
>
> + echo "sched_mc =$sched_mc work-load=$work_load pass_count=$pass_count sched_smt=$sched_smt"
> case "$sched_mc" in
> 0)
> if [ $sched_smt ]; then
> case "$sched_smt" in
> 0)
> - if [ "$stress" = "thread" ]; then
> - if [ $pass_count -lt 1 ]; then
> - tst_resm TPASS "Consolidation at core level failed for sched_mc=\
> -$sched_mc & sched_smt=$sched_smt for workload=$work_load"
> - else
> - RC=1
> - tst_resm TFAIL "Consolidation at core level passed for sched_mc=\
> + if [ "$pass_count" -lt 5 ]; then
> + tst_resm TPASS "cpu consolidation failed for sched_mc=\
> $sched_mc & sched_smt=$sched_smt for workload=$work_load"
> - fi
> else
> - if [ "$pass_count" -lt 1 ]; then
> - tst_resm TPASS "cpu consolidation failed for sched_mc=\
> -$sched_mc & sched_smt=$sched_smt for workload=$work_load"
> - else
> - RC=1
> - tst_resm TFAIL "cpu consolidation passed for sched_mc=\
> + RC=1
> + tst_resm TFAIL "cpu consolidation passed for sched_mc=\
> $sched_mc & sched_smt=$sched_smt for workload=$work_load"
> - fi
> fi
> ;;
> *)
> - if [ "$stress" = "thread" ]; then
> - analyze_wrt_wkld $sched_mc $work_load $pass_count $sched_smt $stress
> - else
> - analyze_wrt_wkld $sched_mc $work_load $pass_count $sched_smt
> - fi ;;
> + analyze_wrt_wkld $sched_mc $work_load $pass_count $sched_smt
> + ;;
> esac
> else
> - if [ $pass_count -lt 1 ]; then
> + if [ $pass_count -lt 5 ]; then
> tst_resm TPASS "cpu consolidation failed for sched_mc=\
> $sched_mc for workload=$work_load"
> else
> RC=1
> tst_resm TFAIL "cpu consolidation passed for sched_mc=\
> -$sched_mc & sched_smt=$sched_smt for workload=$work_load"
> +$sched_mc for workload=$work_load"
> fi
> fi
> ;;
> *)
> - if [ "$stress" = "thread" ]; then
> - analyze_wrt_wkld $sched_mc $work_load $pass_count $sched_smt $stress
> - else
> analyze_wrt_wkld $sched_mc $work_load $pass_count $sched_smt
> - fi
> ;;
> esac
> }
>
> -function analyze_consolidation_result() {
> +function analyze_package_consolidation_result() {
> sched_mc=$1
> work_load=$2
> pass_count=$3
> sched_smt=$4
> - stress=$5
>
> + echo "sched mc $sched_mc sched smt is $sched_smt workload $work_load pass count $pass_count"
> if [ $hyper_threaded -eq $YES ]; then
> - analyze_result_hyperthreaded $sched_mc $work_load $pass_count $sched_smt $stress
> + analyze_result_hyperthreaded $sched_mc $work_load $pass_count $sched_smt
> else
> case "$sched_mc" in
> 0)
> - if [ $pass_count -lt 1 ]; then
> + if [ $pass_count -lt 5 ]; then
> tst_resm TPASS "cpu consolidation failed for sched_mc=\
> $sched_mc for workload=$work_load"
> else
> @@ -360,6 +326,33 @@ $sched_mc for workload=$work_load"
> fi
> }
>
> +function analyze_core_consolidation_result() {
> + sched_smt=$1
> + work_load=$2
> + pass_count=$3
> +
> + case "$valid_workload" in
> + 0)
> + if [ $pass_count -lt 5 ]; then
> + RC=1
> + tst_resm TFAIL "Consolidation at core level failed for \
> +sched_mc=$sched_mc, sched_smt=$sched_smt for workload=$work_load"
> + else
> + tst_resm TPASS "Consolidation at core level passed for \
> +sched_mc=$sched_mc, sched_smt=$sched_smt & workload=$work_load"
> + fi ;;
> + 1)
> + if [ $pass_count -lt 5 ]; then
> + tst_resm TPASS "Consolidation at core level failed for \
> +unsupported workload $work_load when sched_mc=$sched_mc & sched_smt=$sched_smt"
> + else
> + RC=1
> + tst_resm TFAIL "Consolidation at core level passed for \
> +unsupported workload $work_load when sched_mc=$sched_mc & sched_smt=$sched_smt"
> + fi ;;
> + esac
> +}
> +
> function analyze_sched_domain_result(){
> sched_mc=$1
> result=$2
1. Check for files before cat'ing or at least redirect stderr to /dev/null.
2. Please quote any and all variables from files cat'ed out.
3. Please convert bash-ism's to bourne compatible routines, e.g.
function foo() {
}
... to...
foo() {
}
4. This form:
if [ $num_of_cpus -gt 1 ]; then
+ return 0
+ else
+ return 1
+ fi
Can be replaced by:
[ $num_of_cpus -gt 1 ]; return $?
etc.
Thanks,
-Garrett
------------------------------------------------------------------------------
Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day
trial. Simplify your report design, integration and deployment - and focus on
what you do best, core application coding. Discover what's new with
Crystal Reports now. http://p.sf.net/sfu/bobj-july
_______________________________________________
Ltp-list mailing list
Ltp-list@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/ltp-list
^ permalink raw reply [flat|nested] 25+ messages in thread
* Re: [LTP] Patch to fix make install issue in ebizzy
2009-08-20 16:07 ` [LTP] Patch to fix make install issue in ebizzy Poornima Nayak
@ 2009-08-20 16:52 ` Garrett Cooper
2009-08-23 7:29 ` Subrata Modak
0 siblings, 1 reply; 25+ messages in thread
From: Garrett Cooper @ 2009-08-20 16:52 UTC (permalink / raw)
To: Poornima Nayak; +Cc: ltp-list, arun, vaidy, gautham
On Thu, Aug 20, 2009 at 9:07 AM, Poornima
Nayak<mpnayak@linux.vnet.ibm.com> wrote:
> install: was missing in Makefile of ebizzy, hence make install was throwing error.
> This patch will fix make install error.
>
> Signed-off-by: poornima nayak <mpnayak@linux.vnet.ibm.com>
>
>
> diff -uprN ltp-full-20090731_orig/utils/benchmark/ebizzy-0.3/Makefile ltp-full-20090731/utils/benchmark/ebizzy-0.3/Makefile
> --- ltp-full-20090731_orig/utils/benchmark/ebizzy-0.3/Makefile 2009-08-20 19:59:13.000000000 +0530
> +++ ltp-full-20090731/utils/benchmark/ebizzy-0.3/Makefile 2009-08-20 20:23:19.000000000 +0530
> @@ -4,5 +4,7 @@ configure:
> ./configure
> ebizzy: configure
> gcc -Wall -Wshadow -lpthread -o ebizzy ebizzy.c
> +install:
> +
> clean:
> rm -f ebizzy *~
No need to address this. It's already been addressed in my
makefile-infra-rework patch.
Thanks,
-Garrett
------------------------------------------------------------------------------
Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day
trial. Simplify your report design, integration and deployment - and focus on
what you do best, core application coding. Discover what's new with
Crystal Reports now. http://p.sf.net/sfu/bobj-july
_______________________________________________
Ltp-list mailing list
Ltp-list@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/ltp-list
^ permalink raw reply [flat|nested] 25+ messages in thread
* Re: [LTP] Patch to fix kernbench integration issue
2009-08-20 16:06 [LTP] Patch to fix kernbench integration issue Poornima Nayak
` (7 preceding siblings ...)
2009-08-20 16:08 ` [LTP] New testcase to test timer_migration interface Poornima Nayak
@ 2009-08-20 16:53 ` Garrett Cooper
2009-08-23 7:29 ` Subrata Modak
8 siblings, 1 reply; 25+ messages in thread
From: Garrett Cooper @ 2009-08-20 16:53 UTC (permalink / raw)
To: Poornima Nayak; +Cc: ltp-list, arun, vaidy, gautham
On Thu, Aug 20, 2009 at 9:06 AM, Poornima
Nayak<mpnayak@linux.vnet.ibm.com> wrote:
> Kernbench script's mode was not getting modified to executable as 'utils install'
> was missing in LTP Makefile. Hence this patch fixes this issue.
>
> Signed-off-by: poornima nayak <mpnayak@linux.vnet.ibm.com>
>
> diff -uprN ltp-full-20090731_orig/Makefile ltp-full-20090731/Makefile
> --- ltp-full-20090731_orig/Makefile 2009-08-20 19:59:13.000000000 +0530
> +++ ltp-full-20090731/Makefile 2009-08-20 20:19:09.000000000 +0530
> @@ -40,6 +40,7 @@ install: all
> @$(MAKE) -C m4 install
> @$(MAKE) -C doc/man1 install
> @$(MAKE) -C doc/man3 install
> + @$(MAKE) -C utils install
> ifneq ($(strip $(SKIP_IDCHECK)),1)
> @./IDcheck.sh
> endif
No need to worry about this item either. It's already addressed in my
makefile-infra-rework patch.
Thanks,
-Garrett
------------------------------------------------------------------------------
Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day
trial. Simplify your report design, integration and deployment - and focus on
what you do best, core application coding. Discover what's new with
Crystal Reports now. http://p.sf.net/sfu/bobj-july
_______________________________________________
Ltp-list mailing list
Ltp-list@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/ltp-list
^ permalink raw reply [flat|nested] 25+ messages in thread
* Re: [LTP] New testcase to test timer_migration interface
2009-08-20 16:08 ` [LTP] New testcase to test timer_migration interface Poornima Nayak
@ 2009-08-20 16:57 ` Garrett Cooper
2009-08-20 16:57 ` Garrett Cooper
2009-08-23 7:29 ` Subrata Modak
0 siblings, 2 replies; 25+ messages in thread
From: Garrett Cooper @ 2009-08-20 16:57 UTC (permalink / raw)
To: Poornima Nayak; +Cc: ltp-list, arun, vaidy, gautham
On Thu, Aug 20, 2009 at 9:08 AM, Poornima
Nayak<mpnayak@linux.vnet.ibm.com> wrote:
> This is the new tescase to test timer migration interface.
>
> Signed-off-by: poornima nayak <mpnayak@linux.vnet.ibm.com>
>
> diff -uprN ltp-full-20090731_orig/testcases/kernel/power_management/test_timer_migration.sh ltp-full-20090731/testcases/kernel/power_management/test_timer_migration.sh
> --- ltp-full-20090731_orig/testcases/kernel/power_management/test_timer_migration.sh 1970-01-01 05:30:00.000000000 +0530
> +++ ltp-full-20090731/testcases/kernel/power_management/test_timer_migration.sh 2009-08-20 20:49:48.000000000 +0530
> @@ -0,0 +1,22 @@
> +#!/bin/bash
> +
> +. pm_include.sh
> +
> +valid_input="0 1"
> +invalid_input="3 4 5 6 7 8 a abcefg x1999 xffff -1 -00000
> +200000000000000000000000000000000000000000000000000000000000000000000000000000
> +ox324 -0xfffffffffffffffffffff"
> +test_file="/proc/sys/kernel/timer_migration"
> +if [ ! -f ${test_file} ] ; then
> + echo "MISSING_FILE: missing file ${test_file}"
> + exit $MISSING_FILE
> +fi
> +
> +RC=0
> +echo "${0}: ---Valid test cases---"
> +check_input "${valid_input}" valid $test_file
> +RC=$?
> +echo "${0}: ---Invalid test cases---"
> +check_input "${invalid_input}" invalid $test_file
> +RC=$(( RC | $? ))
> +exit $RC
1. Please replace
${0}
with:
${0##*}
2. Wouldn't it make more sense to say `exit $(( RC | $? )'?
Thanks,
-Garrett
------------------------------------------------------------------------------
Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day
trial. Simplify your report design, integration and deployment - and focus on
what you do best, core application coding. Discover what's new with
Crystal Reports now. http://p.sf.net/sfu/bobj-july
_______________________________________________
Ltp-list mailing list
Ltp-list@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/ltp-list
^ permalink raw reply [flat|nested] 25+ messages in thread
* Re: [LTP] New testcase to test timer_migration interface
2009-08-20 16:57 ` Garrett Cooper
@ 2009-08-20 16:57 ` Garrett Cooper
2009-08-23 7:29 ` Subrata Modak
1 sibling, 0 replies; 25+ messages in thread
From: Garrett Cooper @ 2009-08-20 16:57 UTC (permalink / raw)
To: Poornima Nayak; +Cc: ltp-list, arun, vaidy, gautham
On Thu, Aug 20, 2009 at 9:57 AM, Garrett Cooper<yanegomi@gmail.com> wrote:
> On Thu, Aug 20, 2009 at 9:08 AM, Poornima
> Nayak<mpnayak@linux.vnet.ibm.com> wrote:
>> This is the new tescase to test timer migration interface.
>>
>> Signed-off-by: poornima nayak <mpnayak@linux.vnet.ibm.com>
>>
>> diff -uprN ltp-full-20090731_orig/testcases/kernel/power_management/test_timer_migration.sh ltp-full-20090731/testcases/kernel/power_management/test_timer_migration.sh
>> --- ltp-full-20090731_orig/testcases/kernel/power_management/test_timer_migration.sh 1970-01-01 05:30:00.000000000 +0530
>> +++ ltp-full-20090731/testcases/kernel/power_management/test_timer_migration.sh 2009-08-20 20:49:48.000000000 +0530
>> @@ -0,0 +1,22 @@
>> +#!/bin/bash
>> +
>> +. pm_include.sh
>> +
>> +valid_input="0 1"
>> +invalid_input="3 4 5 6 7 8 a abcefg x1999 xffff -1 -00000
>> +200000000000000000000000000000000000000000000000000000000000000000000000000000
>> +ox324 -0xfffffffffffffffffffff"
>> +test_file="/proc/sys/kernel/timer_migration"
>> +if [ ! -f ${test_file} ] ; then
>> + echo "MISSING_FILE: missing file ${test_file}"
>> + exit $MISSING_FILE
>> +fi
>> +
>> +RC=0
>> +echo "${0}: ---Valid test cases---"
>> +check_input "${valid_input}" valid $test_file
>> +RC=$?
>> +echo "${0}: ---Invalid test cases---"
>> +check_input "${invalid_input}" invalid $test_file
>> +RC=$(( RC | $? ))
>> +exit $RC
>
> 1. Please replace
>
> ${0}
>
> with:
>
> ${0##*}
Sorry. I meant ${0##/*}
Thanks,
-Garrett
------------------------------------------------------------------------------
Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day
trial. Simplify your report design, integration and deployment - and focus on
what you do best, core application coding. Discover what's new with
Crystal Reports now. http://p.sf.net/sfu/bobj-july
_______________________________________________
Ltp-list mailing list
Ltp-list@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/ltp-list
^ permalink raw reply [flat|nested] 25+ messages in thread
* Re: [LTP] Patch to fix cpu consolidation failure for kernbench on HT system
2009-08-20 16:08 ` [LTP] Patch to fix cpu consolidation failure for kernbench on HT system Poornima Nayak
@ 2009-08-20 17:00 ` Garrett Cooper
2009-08-23 7:28 ` Subrata Modak
1 sibling, 0 replies; 25+ messages in thread
From: Garrett Cooper @ 2009-08-20 17:00 UTC (permalink / raw)
To: Poornima Nayak; +Cc: ltp-list, arun, vaidy, gautham
On Thu, Aug 20, 2009 at 9:08 AM, Poornima
Nayak<mpnayak@linux.vnet.ibm.com> wrote:
> Threshold and validation functions modified for testcases run on HT systems.
>
> Signed-off-by: poornima nayak <mpnayak@linux.vnet.ibm.com>
>
> diff -uprN ltp-full-20090731_orig/testcases/kernel/power_management/lib/sched_mc.py ltp-full-20090731/testcases/kernel/power_management/lib/sched_mc.py
> --- ltp-full-20090731_orig/testcases/kernel/power_management/lib/sched_mc.py 2009-08-20 19:59:11.000000000 +0530
> +++ ltp-full-20090731/testcases/kernel/power_management/lib/sched_mc.py 2009-08-20 20:33:21.000000000 +0530
> @@ -193,6 +193,8 @@ def trigger_ebizzy (stress, duration, ba
> threads = get_hyper_thread_count()
> if stress == "partial":
> threads = cpu_count / socket_count
> + if is_hyper_threaded():
> + threads = threads / get_hyper_thread_count()
> if stress == "full":
> threads = cpu_count
>
> @@ -244,9 +246,11 @@ def trigger_kernbench (stress, backgroun
> olddir = os.getcwd()
> try:
> if stress == "thread":
> - threads = 2
> + threads = 2
> if stress == "partial":
> - threads = cpu_count / socket_count
> + threads = cpu_count / socket_count
> + if is_hyper_threaded():
> + threads = threads / get_hyper_thread_count()
> if stress == "full":
> threads = cpu_count
>
> @@ -281,7 +285,8 @@ def trigger_kernbench (stress, backgroun
> sys.exit(1)
>
> get_proc_data(stats_start)
> - os.system ( '%s/kernbench -o 2 -M -H -n 1 >/dev/null 2>&1' % benchmark_path)
> + os.system ( '%s/kernbench -o %s -M -H -n 1 >/dev/null 2>&1' % (benchmark_path, threads))
> + print threads
>
> print "INFO: Workload kernbench triggerd"
> os.chdir(olddir)
> @@ -438,6 +443,8 @@ def validate_cpugrp_map(cpu_group, sched
> for i in range(0, len(core_cpus)):
> if core_cpus[i] in modi_cpu_grp:
> modi_cpu_grp.remove(core_cpus[i])
> + if len(modi_cpu_grp) == 0:
> + return 0
> else:
> # If sched_smt == 0 then its oky if threads run
> # in different cores of same package
> @@ -499,24 +506,35 @@ def verify_sched_domain_dmesg(sched_mc_l
> print "Reading dmesg failed", details
> sys.exit(1)
>
> -def validate_cpu_consolidation(sched_mc_level, sched_smt_level):
> +def validate_cpu_consolidation(work_ld, sched_mc_level, sched_smt_level):
> ''' Verify if cpu's on which threads executed belong to same
> package
> '''
> cpus_utilized = list()
> try:
> for l in sorted(stats_percentage.keys()):
> - #modify threshold
> - if stats_percentage[l][1] > 50:
> - cpu_id = stats_percentage[l][0].split("cpu")
> - if cpu_id[1] != '':
> - cpus_utilized.append(int(cpu_id[1]))
> - cpus_utilized.sort()
> + #modify threshold
> + if is_hyper_threaded():
> + if stats_percentage[l][1] > 25 and work_ld == "kernbench":
> + cpu_id = stats_percentage[l][0].split("cpu")
> + if cpu_id[1] != '':
> + cpus_utilized.append(int(cpu_id[1]))
> + else:
> + if stats_percentage[l][1] > 50:
> + cpu_id = stats_percentage[l][0].split("cpu")
> + if cpu_id[1] != '':
> + cpus_utilized.append(int(cpu_id[1]))
> + else:
> + if stats_percentage[l][1] > 50:
> + cpu_id = stats_percentage[l][0].split("cpu")
> + if cpu_id[1] != '':
> + cpus_utilized.append(int(cpu_id[1]))
> + cpus_utilized.sort()
> print "INFO: CPU's utilized ", cpus_utilized
>
> status = validate_cpugrp_map(cpus_utilized, sched_mc_level, sched_smt_level)
> - if status == 1:
> - print "INFO: CPUs utilized is not in same package or core"
> + if status == 1:
> + print "INFO: CPUs utilized is not in same package or core"
> return(status)
> except Exception, details:
> print "Exception in validate_cpu_consolidation: ", details
Why hyperthreaded? Why not multicore? I ask because hyperthreaded
processors are more difficult to disable and regulate IIRC (had to be
done at bootup), whereas multicore processors can be regulated by the
kernel scheduler and the relevant core setting.
Thanks,
-Garrett
------------------------------------------------------------------------------
Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day
trial. Simplify your report design, integration and deployment - and focus on
what you do best, core application coding. Discover what's new with
Crystal Reports now. http://p.sf.net/sfu/bobj-july
_______________________________________________
Ltp-list mailing list
Ltp-list@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/ltp-list
^ permalink raw reply [flat|nested] 25+ messages in thread
* Re: [LTP] Patch for PM makefile for new testcases & fix test_sched_smt integration issue
2009-08-20 16:07 ` [LTP] Patch for PM makefile for new testcases & fix test_sched_smt integration issue Poornima Nayak
@ 2009-08-20 17:01 ` Garrett Cooper
2009-08-23 7:28 ` Subrata Modak
0 siblings, 1 reply; 25+ messages in thread
From: Garrett Cooper @ 2009-08-20 17:01 UTC (permalink / raw)
To: Poornima Nayak; +Cc: ltp-list, arun, vaidy, gautham
On Thu, Aug 20, 2009 at 9:07 AM, Poornima
Nayak<mpnayak@linux.vnet.ibm.com> wrote:
> Patch to integrate test_sched_smt and timer_migration testcase to LTP.
> Also intergrates the new file get_sched_value to LTP.
>
> Signed-off-by: poornima nayak <mpnayak@linux.vnet.ibm.com>
>
> diff -uprN ltp-full-20090731_orig/testcases/kernel/power_management/Makefile ltp-full-20090731/testcases/kernel/power_management/Makefile
> --- ltp-full-20090731_orig/testcases/kernel/power_management/Makefile 2009-08-20 19:59:11.000000000 +0530
> +++ ltp-full-20090731/testcases/kernel/power_management/Makefile 2009-08-20 20:26:39.000000000 +0530
> @@ -23,12 +23,16 @@ SUBDIRS :=
> all:
> @set -e; for i in $(SUBDIRS); do $(MAKE) -C $$i $@; done;
> $(MAKE) check_kv_arch ;
> + $(MAKE) get_sched_values ;
>
> -check_kv_arch: check_kv_arch.c
> +check_kv_arch: check_kv_arch.c
> + $(CC) -o $@ $< ../../../lib/tst_kvercmp.c -I../../../include
> +get_sched_values: get_sched_values.c
> $(CC) -o $@ $< ../../../lib/tst_kvercmp.c -I../../../include
>
> install:
> @set -e; ln -f check_kv_arch ../../bin/check_kv_arch; \
> + ln -f get_sched_values ../../bin/get_sched_values; \
> ln -f change_freq.sh ../../bin/change_freq.sh; \
> ln -f change_govr.sh ../../bin/change_govr.sh; \
> ln -f check_cpufreq_sysfs_files.sh ../../bin/check_cpufreq_sysfs_files.sh; \
> @@ -37,6 +41,8 @@ install:
> ln -f pm_include.sh ../../bin/pm_include.sh; \
> ln -f runpwtests.sh ../../bin/runpwtests.sh; \
> ln -f test_sched_mc.sh ../../bin/test_sched_mc.sh; \
> + ln -f test_sched_mc.sh ../../bin/test_sched_smt.sh; \
> + ln -f test_sched_mc.sh ../../bin/test_timer_migration.sh; \
> ln -f config_cpu_freq ../../bin/config_cpu_freq; \
> ln -f config_cpu_idle ../../bin/config_cpu_idle; \
> ln -f config_sched_mc ../../bin/config_sched_mc;
> @@ -47,4 +53,4 @@ install:
> clean:
> @set -e; for i in $(SUBDIRS); do $(MAKE) -C $$i $@ ; done
> rm -f check_kv_arch
> -
> + rm -f get_sched_values
Please don't worry about this. It's handled in my makefile-infra-rework patch.
Thanks,
-Garrett
------------------------------------------------------------------------------
Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day
trial. Simplify your report design, integration and deployment - and focus on
what you do best, core application coding. Discover what's new with
Crystal Reports now. http://p.sf.net/sfu/bobj-july
_______________________________________________
Ltp-list mailing list
Ltp-list@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/ltp-list
^ permalink raw reply [flat|nested] 25+ messages in thread
* Re: [LTP] Patch for PM makefile for new testcases & fix test_sched_smt integration issue
2009-08-20 17:01 ` Garrett Cooper
@ 2009-08-23 7:28 ` Subrata Modak
0 siblings, 0 replies; 25+ messages in thread
From: Subrata Modak @ 2009-08-23 7:28 UTC (permalink / raw)
To: Garrett Cooper; +Cc: ltp-list, arun, vaidy, gautham
On Thu, 2009-08-20 at 10:01 -0700, Garrett Cooper wrote:
> On Thu, Aug 20, 2009 at 9:07 AM, Poornima
> Nayak<mpnayak@linux.vnet.ibm.com> wrote:
> > Patch to integrate test_sched_smt and timer_migration testcase to LTP.
> > Also intergrates the new file get_sched_value to LTP.
> >
> > Signed-off-by: poornima nayak <mpnayak@linux.vnet.ibm.com>
> >
> > diff -uprN ltp-full-20090731_orig/testcases/kernel/power_management/Makefile ltp-full-20090731/testcases/kernel/power_management/Makefile
> > --- ltp-full-20090731_orig/testcases/kernel/power_management/Makefile 2009-08-20 19:59:11.000000000 +0530
> > +++ ltp-full-20090731/testcases/kernel/power_management/Makefile 2009-08-20 20:26:39.000000000 +0530
> > @@ -23,12 +23,16 @@ SUBDIRS :=
> > all:
> > @set -e; for i in $(SUBDIRS); do $(MAKE) -C $$i $@; done;
> > $(MAKE) check_kv_arch ;
> > + $(MAKE) get_sched_values ;
> >
> > -check_kv_arch: check_kv_arch.c
> > +check_kv_arch: check_kv_arch.c
> > + $(CC) -o $@ $< ../../../lib/tst_kvercmp.c -I../../../include
> > +get_sched_values: get_sched_values.c
> > $(CC) -o $@ $< ../../../lib/tst_kvercmp.c -I../../../include
> >
> > install:
> > @set -e; ln -f check_kv_arch ../../bin/check_kv_arch; \
> > + ln -f get_sched_values ../../bin/get_sched_values; \
> > ln -f change_freq.sh ../../bin/change_freq.sh; \
> > ln -f change_govr.sh ../../bin/change_govr.sh; \
> > ln -f check_cpufreq_sysfs_files.sh ../../bin/check_cpufreq_sysfs_files.sh; \
> > @@ -37,6 +41,8 @@ install:
> > ln -f pm_include.sh ../../bin/pm_include.sh; \
> > ln -f runpwtests.sh ../../bin/runpwtests.sh; \
> > ln -f test_sched_mc.sh ../../bin/test_sched_mc.sh; \
> > + ln -f test_sched_mc.sh ../../bin/test_sched_smt.sh; \
> > + ln -f test_sched_mc.sh ../../bin/test_timer_migration.sh; \
> > ln -f config_cpu_freq ../../bin/config_cpu_freq; \
> > ln -f config_cpu_idle ../../bin/config_cpu_idle; \
> > ln -f config_sched_mc ../../bin/config_sched_mc;
> > @@ -47,4 +53,4 @@ install:
> > clean:
> > @set -e; for i in $(SUBDIRS); do $(MAKE) -C $$i $@ ; done
> > rm -f check_kv_arch
> > -
> > + rm -f get_sched_values
>
> Please don't worry about this. It's handled in my makefile-infra-rework patch.
I checked this till the Makefile work gets in.
Regards--
Subrata
> Thanks,
> -Garrett
>
> ------------------------------------------------------------------------------
> Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day
> trial. Simplify your report design, integration and deployment - and focus on
> what you do best, core application coding. Discover what's new with
> Crystal Reports now. http://p.sf.net/sfu/bobj-july
> _______________________________________________
> Ltp-list mailing list
> Ltp-list@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/ltp-list
------------------------------------------------------------------------------
Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day
trial. Simplify your report design, integration and deployment - and focus on
what you do best, core application coding. Discover what's new with
Crystal Reports now. http://p.sf.net/sfu/bobj-july
_______________________________________________
Ltp-list mailing list
Ltp-list@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/ltp-list
^ permalink raw reply [flat|nested] 25+ messages in thread
* Re: [LTP] Patch to fix cpu consolidation failure for kernbench on HT system
2009-08-20 16:08 ` [LTP] Patch to fix cpu consolidation failure for kernbench on HT system Poornima Nayak
2009-08-20 17:00 ` Garrett Cooper
@ 2009-08-23 7:28 ` Subrata Modak
1 sibling, 0 replies; 25+ messages in thread
From: Subrata Modak @ 2009-08-23 7:28 UTC (permalink / raw)
To: Poornima Nayak; +Cc: ltp-list, arun, vaidy, gautham
On Thu, 2009-08-20 at 21:38 +0530, Poornima Nayak wrote:
> Threshold and validation functions modified for testcases run on HT systems.
>
> Signed-off-by: poornima nayak <mpnayak@linux.vnet.ibm.com>
Thanks.
Regards--
Subrata
>
> diff -uprN ltp-full-20090731_orig/testcases/kernel/power_management/lib/sched_mc.py ltp-full-20090731/testcases/kernel/power_management/lib/sched_mc.py
> --- ltp-full-20090731_orig/testcases/kernel/power_management/lib/sched_mc.py 2009-08-20 19:59:11.000000000 +0530
> +++ ltp-full-20090731/testcases/kernel/power_management/lib/sched_mc.py 2009-08-20 20:33:21.000000000 +0530
> @@ -193,6 +193,8 @@ def trigger_ebizzy (stress, duration, ba
> threads = get_hyper_thread_count()
> if stress == "partial":
> threads = cpu_count / socket_count
> + if is_hyper_threaded():
> + threads = threads / get_hyper_thread_count()
> if stress == "full":
> threads = cpu_count
>
> @@ -244,9 +246,11 @@ def trigger_kernbench (stress, backgroun
> olddir = os.getcwd()
> try:
> if stress == "thread":
> - threads = 2
> + threads = 2
> if stress == "partial":
> - threads = cpu_count / socket_count
> + threads = cpu_count / socket_count
> + if is_hyper_threaded():
> + threads = threads / get_hyper_thread_count()
> if stress == "full":
> threads = cpu_count
>
> @@ -281,7 +285,8 @@ def trigger_kernbench (stress, backgroun
> sys.exit(1)
>
> get_proc_data(stats_start)
> - os.system ( '%s/kernbench -o 2 -M -H -n 1 >/dev/null 2>&1' % benchmark_path)
> + os.system ( '%s/kernbench -o %s -M -H -n 1 >/dev/null 2>&1' % (benchmark_path, threads))
> + print threads
>
> print "INFO: Workload kernbench triggerd"
> os.chdir(olddir)
> @@ -438,6 +443,8 @@ def validate_cpugrp_map(cpu_group, sched
> for i in range(0, len(core_cpus)):
> if core_cpus[i] in modi_cpu_grp:
> modi_cpu_grp.remove(core_cpus[i])
> + if len(modi_cpu_grp) == 0:
> + return 0
> else:
> # If sched_smt == 0 then its oky if threads run
> # in different cores of same package
> @@ -499,24 +506,35 @@ def verify_sched_domain_dmesg(sched_mc_l
> print "Reading dmesg failed", details
> sys.exit(1)
>
> -def validate_cpu_consolidation(sched_mc_level, sched_smt_level):
> +def validate_cpu_consolidation(work_ld, sched_mc_level, sched_smt_level):
> ''' Verify if cpu's on which threads executed belong to same
> package
> '''
> cpus_utilized = list()
> try:
> for l in sorted(stats_percentage.keys()):
> - #modify threshold
> - if stats_percentage[l][1] > 50:
> - cpu_id = stats_percentage[l][0].split("cpu")
> - if cpu_id[1] != '':
> - cpus_utilized.append(int(cpu_id[1]))
> - cpus_utilized.sort()
> + #modify threshold
> + if is_hyper_threaded():
> + if stats_percentage[l][1] > 25 and work_ld == "kernbench":
> + cpu_id = stats_percentage[l][0].split("cpu")
> + if cpu_id[1] != '':
> + cpus_utilized.append(int(cpu_id[1]))
> + else:
> + if stats_percentage[l][1] > 50:
> + cpu_id = stats_percentage[l][0].split("cpu")
> + if cpu_id[1] != '':
> + cpus_utilized.append(int(cpu_id[1]))
> + else:
> + if stats_percentage[l][1] > 50:
> + cpu_id = stats_percentage[l][0].split("cpu")
> + if cpu_id[1] != '':
> + cpus_utilized.append(int(cpu_id[1]))
> + cpus_utilized.sort()
> print "INFO: CPU's utilized ", cpus_utilized
>
> status = validate_cpugrp_map(cpus_utilized, sched_mc_level, sched_smt_level)
> - if status == 1:
> - print "INFO: CPUs utilized is not in same package or core"
> + if status == 1:
> + print "INFO: CPUs utilized is not in same package or core"
> return(status)
> except Exception, details:
> print "Exception in validate_cpu_consolidation: ", details
>
> ------------------------------------------------------------------------------
> Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day
> trial. Simplify your report design, integration and deployment - and focus on
> what you do best, core application coding. Discover what's new with
> Crystal Reports now. http://p.sf.net/sfu/bobj-july
> _______________________________________________
> Ltp-list mailing list
> Ltp-list@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/ltp-list
------------------------------------------------------------------------------
Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day
trial. Simplify your report design, integration and deployment - and focus on
what you do best, core application coding. Discover what's new with
Crystal Reports now. http://p.sf.net/sfu/bobj-july
_______________________________________________
Ltp-list mailing list
Ltp-list@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/ltp-list
^ permalink raw reply [flat|nested] 25+ messages in thread
* Re: [LTP] New testcase to test timer_migration interface
2009-08-20 16:57 ` Garrett Cooper
2009-08-20 16:57 ` Garrett Cooper
@ 2009-08-23 7:29 ` Subrata Modak
1 sibling, 0 replies; 25+ messages in thread
From: Subrata Modak @ 2009-08-23 7:29 UTC (permalink / raw)
To: Garrett Cooper, Poornima Nayak; +Cc: ltp-list, vaidy, gautham, arun
On Thu, 2009-08-20 at 09:57 -0700, Garrett Cooper wrote:
> On Thu, Aug 20, 2009 at 9:08 AM, Poornima
> Nayak<mpnayak@linux.vnet.ibm.com> wrote:
> > This is the new tescase to test timer migration interface.
> >
> > Signed-off-by: poornima nayak <mpnayak@linux.vnet.ibm.com>
> >
> > diff -uprN ltp-full-20090731_orig/testcases/kernel/power_management/test_timer_migration.sh ltp-full-20090731/testcases/kernel/power_management/test_timer_migration.sh
> > --- ltp-full-20090731_orig/testcases/kernel/power_management/test_timer_migration.sh 1970-01-01 05:30:00.000000000 +0530
> > +++ ltp-full-20090731/testcases/kernel/power_management/test_timer_migration.sh 2009-08-20 20:49:48.000000000 +0530
> > @@ -0,0 +1,22 @@
> > +#!/bin/bash
> > +
> > +. pm_include.sh
> > +
> > +valid_input="0 1"
> > +invalid_input="3 4 5 6 7 8 a abcefg x1999 xffff -1 -00000
> > +200000000000000000000000000000000000000000000000000000000000000000000000000000
> > +ox324 -0xfffffffffffffffffffff"
> > +test_file="/proc/sys/kernel/timer_migration"
> > +if [ ! -f ${test_file} ] ; then
> > + echo "MISSING_FILE: missing file ${test_file}"
> > + exit $MISSING_FILE
> > +fi
> > +
> > +RC=0
> > +echo "${0}: ---Valid test cases---"
> > +check_input "${valid_input}" valid $test_file
> > +RC=$?
> > +echo "${0}: ---Invalid test cases---"
> > +check_input "${invalid_input}" invalid $test_file
> > +RC=$(( RC | $? ))
> > +exit $RC
>
> 1. Please replace
>
> ${0}
>
> with:
>
> ${0##*}
>
> 2. Wouldn't it make more sense to say `exit $(( RC | $? )'?
>
Poornima,
Can you also please address them in a new patch ?
Regards--
Subrata
> Thanks,
> -Garrett
>
> ------------------------------------------------------------------------------
> Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day
> trial. Simplify your report design, integration and deployment - and focus on
> what you do best, core application coding. Discover what's new with
> Crystal Reports now. http://p.sf.net/sfu/bobj-july
> _______________________________________________
> Ltp-list mailing list
> Ltp-list@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/ltp-list
------------------------------------------------------------------------------
Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day
trial. Simplify your report design, integration and deployment - and focus on
what you do best, core application coding. Discover what's new with
Crystal Reports now. http://p.sf.net/sfu/bobj-july
_______________________________________________
Ltp-list mailing list
Ltp-list@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/ltp-list
^ permalink raw reply [flat|nested] 25+ messages in thread
* Re: [LTP] Patch to fix kernbench integration issue
2009-08-20 16:53 ` [LTP] Patch to fix kernbench integration issue Garrett Cooper
@ 2009-08-23 7:29 ` Subrata Modak
0 siblings, 0 replies; 25+ messages in thread
From: Subrata Modak @ 2009-08-23 7:29 UTC (permalink / raw)
To: Garrett Cooper, Poornima Nayak; +Cc: ltp-list, vaidy, gautham, arun
On Thu, 2009-08-20 at 09:53 -0700, Garrett Cooper wrote:
> On Thu, Aug 20, 2009 at 9:06 AM, Poornima
> Nayak<mpnayak@linux.vnet.ibm.com> wrote:
> > Kernbench script's mode was not getting modified to executable as 'utils install'
> > was missing in LTP Makefile. Hence this patch fixes this issue.
> >
> > Signed-off-by: poornima nayak <mpnayak@linux.vnet.ibm.com>
> >
> > diff -uprN ltp-full-20090731_orig/Makefile ltp-full-20090731/Makefile
> > --- ltp-full-20090731_orig/Makefile 2009-08-20 19:59:13.000000000 +0530
> > +++ ltp-full-20090731/Makefile 2009-08-20 20:19:09.000000000 +0530
> > @@ -40,6 +40,7 @@ install: all
> > @$(MAKE) -C m4 install
> > @$(MAKE) -C doc/man1 install
> > @$(MAKE) -C doc/man3 install
> > + @$(MAKE) -C utils install
> > ifneq ($(strip $(SKIP_IDCHECK)),1)
> > @./IDcheck.sh
> > endif
>
> No need to worry about this item either. It's already addressed in my
> makefile-infra-rework patch.
Came here. Keeping till the Makefile work gets in.
Regards--
Subrata
> Thanks,
> -Garrett
>
> ------------------------------------------------------------------------------
> Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day
> trial. Simplify your report design, integration and deployment - and focus on
> what you do best, core application coding. Discover what's new with
> Crystal Reports now. http://p.sf.net/sfu/bobj-july
> _______________________________________________
> Ltp-list mailing list
> Ltp-list@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/ltp-list
------------------------------------------------------------------------------
Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day
trial. Simplify your report design, integration and deployment - and focus on
what you do best, core application coding. Discover what's new with
Crystal Reports now. http://p.sf.net/sfu/bobj-july
_______________________________________________
Ltp-list mailing list
Ltp-list@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/ltp-list
^ permalink raw reply [flat|nested] 25+ messages in thread
* Re: [LTP] Patch to fix make install issue in ebizzy
2009-08-20 16:52 ` Garrett Cooper
@ 2009-08-23 7:29 ` Subrata Modak
0 siblings, 0 replies; 25+ messages in thread
From: Subrata Modak @ 2009-08-23 7:29 UTC (permalink / raw)
To: Garrett Cooper; +Cc: ltp-list, arun, vaidy, gautham
On Thu, 2009-08-20 at 09:52 -0700, Garrett Cooper wrote:
> On Thu, Aug 20, 2009 at 9:07 AM, Poornima
> Nayak<mpnayak@linux.vnet.ibm.com> wrote:
> > install: was missing in Makefile of ebizzy, hence make install was throwing error.
> > This patch will fix make install error.
> >
> > Signed-off-by: poornima nayak <mpnayak@linux.vnet.ibm.com>
> >
> >
> > diff -uprN ltp-full-20090731_orig/utils/benchmark/ebizzy-0.3/Makefile ltp-full-20090731/utils/benchmark/ebizzy-0.3/Makefile
> > --- ltp-full-20090731_orig/utils/benchmark/ebizzy-0.3/Makefile 2009-08-20 19:59:13.000000000 +0530
> > +++ ltp-full-20090731/utils/benchmark/ebizzy-0.3/Makefile 2009-08-20 20:23:19.000000000 +0530
> > @@ -4,5 +4,7 @@ configure:
> > ./configure
> > ebizzy: configure
> > gcc -Wall -Wshadow -lpthread -o ebizzy ebizzy.c
> > +install:
> > +
> > clean:
> > rm -f ebizzy *~
>
> No need to address this. It's already been addressed in my
> makefile-infra-rework patch.
Same as well.
Regards--
Subrata
> Thanks,
> -Garrett
>
> ------------------------------------------------------------------------------
> Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day
> trial. Simplify your report design, integration and deployment - and focus on
> what you do best, core application coding. Discover what's new with
> Crystal Reports now. http://p.sf.net/sfu/bobj-july
> _______________________________________________
> Ltp-list mailing list
> Ltp-list@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/ltp-list
------------------------------------------------------------------------------
Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day
trial. Simplify your report design, integration and deployment - and focus on
what you do best, core application coding. Discover what's new with
Crystal Reports now. http://p.sf.net/sfu/bobj-july
_______________________________________________
Ltp-list mailing list
Ltp-list@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/ltp-list
^ permalink raw reply [flat|nested] 25+ messages in thread
* Re: [LTP] New & modified reusable functions for new & existing testcases
2009-08-20 16:51 ` Garrett Cooper
@ 2009-08-23 7:29 ` Subrata Modak
0 siblings, 0 replies; 25+ messages in thread
From: Subrata Modak @ 2009-08-23 7:29 UTC (permalink / raw)
To: Garrett Cooper, Poornima Nayak; +Cc: ltp-list, vaidy, gautham, arun
On Thu, 2009-08-20 at 09:51 -0700, Garrett Cooper wrote:
> On Thu, Aug 20, 2009 at 9:07 AM, Poornima
> Nayak<mpnayak@linux.vnet.ibm.com> wrote:
> > Implemented reusable functions to learn system architecture before executing
> > architecture specific testcases.
> >
> > Signed-off-by: poornima nayak <mpnayak@linux.vnet.ibm.com>
> >
> > diff -uprN ltp-full-20090731_orig/testcases/kernel/power_management/pm_include.sh ltp-full-20090731/testcases/kernel/power_management/pm_include.sh
> > --- ltp-full-20090731_orig/testcases/kernel/power_management/pm_include.sh 2009-08-20 19:59:11.000000000 +0530
> > +++ ltp-full-20090731/testcases/kernel/power_management/pm_include.sh 2009-08-20 20:29:21.000000000 +0530
> > @@ -112,6 +112,46 @@ function is_multi_socket() {
> > fi
> > }
> >
> > +function is_multi_core() {
> > + siblings=`cat /proc/cpuinfo | grep siblings | uniq | cut -f2 -d':'`
> > + cpu_cores=`cat /proc/cpuinfo | grep "cpu cores" | uniq | cut -f2 -d':'`
> > + echo "siblings count $siblings cores count $cpu_cores"
> > + if [ $siblings -eq $cpu_cores ]; then
> > + if [ $cpu_cores -gt 1 ]; then
> > + return 0
> > + else
> > + return 1
> > + fi
> > + else
> > + : $(( num_of_cpus = siblings / cpu_cores ))
> > + if [ $num_of_cpus -gt 1 ]; then
> > + return 0
> > + else
> > + return 1
> > + fi
> > + fi
> > +}
> > +
> > +function is_dual_core() {
> > + siblings=`cat /proc/cpuinfo | grep siblings | uniq | cut -f2 -d':'`
> > + cpu_cores=`cat /proc/cpuinfo | grep "cpu cores" | uniq | cut -f2 -d':'`
> > + if [ $siblings -eq $cpu_cores ]; then
> > + if [ $cpu_cores -eq 2 ]; then
> > + return 1
> > + else
> > + return 0
> > + fi
> > + else
> > + : $(( num_of_cpus = siblings / cpu_cores ))
> > + if [ $num_of_cpus -eq 2 ]; then
> > + echo "number of cpus $num_of_cpus"
> > + return 1
> > + else
> > + return 0
> > + fi
> > + fi
> > +}
> > +
> > function get_kernel_version() {
> > # Get kernel minor version
> > export kernel_version=`uname -r | awk -F. '{print $1"."$2"."$3}' | cut -f1 -d'-'`
> > @@ -120,42 +160,12 @@ function get_kernel_version() {
> > function get_valid_input() {
> > kernel_version=$1
> > case "$kernel_version" in
> > - '2.6.29' | '2.6.30' | '2.6.31')
> > - export valid_input="0 1 2" ;;
> > - *) export valid_input="0 1" ;;
> > + '2.6.26' | '2.6.27' | '2.6.28')
> > + export valid_input="0 1" ;;
> > + *) export valid_input="0 1 2" ;;
> > esac
> > }
> >
> > -function get_max_sched_mc() {
> > - get_kernel_version
> > - case "$kernel_version" in
> > - '2.6.29' | '2.6.30' | '2.6.31')
> > - return 2
> > - ;;
> > - '2.6.26' | '2.6.27' | '2.6.28')
> > - return 1
> > - ;;
> > - *)
> > - return 0
> > - ;;
> > - esac
> > -}
> > -
> > -function get_max_sched_smt() {
> > - get_kernel_version
> > - case "$kernel_version" in
> > - '2.6.29' | '2.6.30' | '2.6.31')
> > - return 2
> > - ;;
> > - '2.6.26' | '2.6.27' | '2.6.28')
> > - return 1
> > - ;;
> > - *)
> > - return 0
> > - ;;
> > - esac
> > -}
> > -
> > function check_supp_wkld() {
> > sched_mcsmt=$1
> > work_load=$2
> > @@ -184,58 +194,33 @@ function analyze_wrt_workload_hyperthrea
> > work_load=$2
> > pass_count=$3
> > sched_smt=$4
> > - stress=$5
> >
> > - if [ $sched_mc > $sched_smt ]; then
> > + if [ $sched_mc -gt $sched_smt ]; then
> > check_supp_wkld $sched_mc $work_load; valid_workload=$?
> > else
> > check_supp_wkld $sched_smt $work_load; valid_workload=$?
> > fi
> >
> > - if [ "$stress" = "thread" ]; then
> > - case "$valid_workload" in
> > - 0)
> > - if [ $pass_count -lt 5 ]; then
> > - RC=1
> > - tst_resm TFAIL "Consolidation at core level failed for \
> > -sched_mc=$sched_mc, sched_smt=$sched_smt for workload=$work_load"
> > - else
> > - tst_resm TPASS "Consolidation at core level passed for \
> > -sched_mc=$sched_mc, sched_smt=$sched_smt & workload=$work_load"
> > - fi ;;
> > - 1)
> > - if [ $pass_count -lt 5 ]; then
> > - tst_resm TPASS "Consolidation at core level failed for \
> > -unsupported workload $work_load when sched_mc=$sched_mc & sched_smt=$sched_smt"
> > - else
> > - RC=1
> > - tst_resm TFAIL "Consolidation at core level passed for \
> > -unsupported workload $work_load when sched_mc=$sched_mc & sched_smt=$sched_smt"
> > - fi ;;
> > - esac
> > - else
> > - case "$valid_workload" in
> > - 0)
> > - if [ $pass_count -lt 5 ]; then
> > - RC=1
> > - tst_resm TFAIL "Consolidation at package level failed for \
> > + case "$valid_workload" in
> > + 0)
> > + if [ $pass_count -lt 5 ]; then
> > + RC=1
> > + tst_resm TFAIL "Consolidation at package level failed for \
> > sched_mc=$sched_mc, sched_smt=$sched_smt for workload=$work_load"
> > - else
> > - tst_resm TPASS "Consolidation at package level passed for \
> > + else
> > + tst_resm TPASS "Consolidation at package level passed for \
> > sched_mc=$sched_mc, sched_smt=$sched_smt & workload=$work_load"
> > - fi ;;
> > - 1)
> > - echo "pass count is $pass_count"
> > - if [ $pass_count -lt 5 ]; then
> > - tst_resm TPASS "Consolidation at package level failed for \
> > + fi ;;
> > + 1)
> > + if [ $pass_count -lt 5 ]; then
> > + tst_resm TPASS "Consolidation at package level failed for \
> > unsupported workload $work_load when sched_mc=$sched_mc & sched_smt=$sched_smt"
> > - else
> > - RC=1
> > - tst_resm TFAIL "Consolidation at package level passed for \
> > + else
> > + RC=1
> > + tst_resm TFAIL "Consolidation at package level passed for \
> > unsupported workload $work_load when sched_mc=$sched_mc & sched_smt=$sched_smt"
> > - fi ;;
> > + fi ;;
> > esac
> > - fi
> > }
> >
> > function analyze_wrt_wkld() {
> > @@ -243,12 +228,11 @@ function analyze_wrt_wkld() {
> > work_load=$2
> > pass_count=$3
> > sched_smt=$4
> > - stress=$5
> >
> > check_supp_wkld $sched_mc $work_load; valid_workload=$?
> > if [ $hyper_threaded -eq $YES ]; then
> > analyze_wrt_workload_hyperthreaded $sched_mc $work_load $pass_count\
> > - $sched_smt $stress
> > + $sched_smt
> > else
> > case "$valid_workload" in
> > 0)
> > @@ -278,74 +262,56 @@ function analyze_result_hyperthreaded()
> > work_load=$2
> > pass_count=$3
> > sched_smt=$4
> > - stress=$5
> >
> > + echo "sched_mc =$sched_mc work-load=$work_load pass_count=$pass_count sched_smt=$sched_smt"
> > case "$sched_mc" in
> > 0)
> > if [ $sched_smt ]; then
> > case "$sched_smt" in
> > 0)
> > - if [ "$stress" = "thread" ]; then
> > - if [ $pass_count -lt 1 ]; then
> > - tst_resm TPASS "Consolidation at core level failed for sched_mc=\
> > -$sched_mc & sched_smt=$sched_smt for workload=$work_load"
> > - else
> > - RC=1
> > - tst_resm TFAIL "Consolidation at core level passed for sched_mc=\
> > + if [ "$pass_count" -lt 5 ]; then
> > + tst_resm TPASS "cpu consolidation failed for sched_mc=\
> > $sched_mc & sched_smt=$sched_smt for workload=$work_load"
> > - fi
> > else
> > - if [ "$pass_count" -lt 1 ]; then
> > - tst_resm TPASS "cpu consolidation failed for sched_mc=\
> > -$sched_mc & sched_smt=$sched_smt for workload=$work_load"
> > - else
> > - RC=1
> > - tst_resm TFAIL "cpu consolidation passed for sched_mc=\
> > + RC=1
> > + tst_resm TFAIL "cpu consolidation passed for sched_mc=\
> > $sched_mc & sched_smt=$sched_smt for workload=$work_load"
> > - fi
> > fi
> > ;;
> > *)
> > - if [ "$stress" = "thread" ]; then
> > - analyze_wrt_wkld $sched_mc $work_load $pass_count $sched_smt $stress
> > - else
> > - analyze_wrt_wkld $sched_mc $work_load $pass_count $sched_smt
> > - fi ;;
> > + analyze_wrt_wkld $sched_mc $work_load $pass_count $sched_smt
> > + ;;
> > esac
> > else
> > - if [ $pass_count -lt 1 ]; then
> > + if [ $pass_count -lt 5 ]; then
> > tst_resm TPASS "cpu consolidation failed for sched_mc=\
> > $sched_mc for workload=$work_load"
> > else
> > RC=1
> > tst_resm TFAIL "cpu consolidation passed for sched_mc=\
> > -$sched_mc & sched_smt=$sched_smt for workload=$work_load"
> > +$sched_mc for workload=$work_load"
> > fi
> > fi
> > ;;
> > *)
> > - if [ "$stress" = "thread" ]; then
> > - analyze_wrt_wkld $sched_mc $work_load $pass_count $sched_smt $stress
> > - else
> > analyze_wrt_wkld $sched_mc $work_load $pass_count $sched_smt
> > - fi
> > ;;
> > esac
> > }
> >
> > -function analyze_consolidation_result() {
> > +function analyze_package_consolidation_result() {
> > sched_mc=$1
> > work_load=$2
> > pass_count=$3
> > sched_smt=$4
> > - stress=$5
> >
> > + echo "sched mc $sched_mc sched smt is $sched_smt workload $work_load pass count $pass_count"
> > if [ $hyper_threaded -eq $YES ]; then
> > - analyze_result_hyperthreaded $sched_mc $work_load $pass_count $sched_smt $stress
> > + analyze_result_hyperthreaded $sched_mc $work_load $pass_count $sched_smt
> > else
> > case "$sched_mc" in
> > 0)
> > - if [ $pass_count -lt 1 ]; then
> > + if [ $pass_count -lt 5 ]; then
> > tst_resm TPASS "cpu consolidation failed for sched_mc=\
> > $sched_mc for workload=$work_load"
> > else
> > @@ -360,6 +326,33 @@ $sched_mc for workload=$work_load"
> > fi
> > }
> >
> > +function analyze_core_consolidation_result() {
> > + sched_smt=$1
> > + work_load=$2
> > + pass_count=$3
> > +
> > + case "$valid_workload" in
> > + 0)
> > + if [ $pass_count -lt 5 ]; then
> > + RC=1
> > + tst_resm TFAIL "Consolidation at core level failed for \
> > +sched_mc=$sched_mc, sched_smt=$sched_smt for workload=$work_load"
> > + else
> > + tst_resm TPASS "Consolidation at core level passed for \
> > +sched_mc=$sched_mc, sched_smt=$sched_smt & workload=$work_load"
> > + fi ;;
> > + 1)
> > + if [ $pass_count -lt 5 ]; then
> > + tst_resm TPASS "Consolidation at core level failed for \
> > +unsupported workload $work_load when sched_mc=$sched_mc & sched_smt=$sched_smt"
> > + else
> > + RC=1
> > + tst_resm TFAIL "Consolidation at core level passed for \
> > +unsupported workload $work_load when sched_mc=$sched_mc & sched_smt=$sched_smt"
> > + fi ;;
> > + esac
> > +}
> > +
> > function analyze_sched_domain_result(){
> > sched_mc=$1
> > result=$2
>
> 1. Check for files before cat'ing or at least redirect stderr to /dev/null.
> 2. Please quote any and all variables from files cat'ed out.
> 3. Please convert bash-ism's to bourne compatible routines, e.g.
>
> function foo() {
>
> }
>
> ... to...
>
> foo() {
>
> }
>
> 4. This form:
>
> if [ $num_of_cpus -gt 1 ]; then
> + return 0
> + else
> + return 1
> + fi
>
> Can be replaced by:
>
> [ $num_of_cpus -gt 1 ]; return $?
>
> etc.
Poornima,
Please address them as well.
Regards--
Subrata
>
> Thanks,
> -Garrett
>
> ------------------------------------------------------------------------------
> Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day
> trial. Simplify your report design, integration and deployment - and focus on
> what you do best, core application coding. Discover what's new with
> Crystal Reports now. http://p.sf.net/sfu/bobj-july
> _______________________________________________
> Ltp-list mailing list
> Ltp-list@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/ltp-list
------------------------------------------------------------------------------
Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day
trial. Simplify your report design, integration and deployment - and focus on
what you do best, core application coding. Discover what's new with
Crystal Reports now. http://p.sf.net/sfu/bobj-july
_______________________________________________
Ltp-list mailing list
Ltp-list@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/ltp-list
^ permalink raw reply [flat|nested] 25+ messages in thread
* Re: [LTP] Patch for PM Master script to integrate new testcases
2009-08-20 16:07 ` [LTP] Patch for PM Master script to integrate new testcases Poornima Nayak
@ 2009-08-23 7:29 ` Subrata Modak
0 siblings, 0 replies; 25+ messages in thread
From: Subrata Modak @ 2009-08-23 7:29 UTC (permalink / raw)
To: Poornima Nayak; +Cc: ltp-list, arun, vaidy, gautham
On Thu, 2009-08-20 at 21:37 +0530, Poornima Nayak wrote:
> Modified Master script of power management testcases to include new test case
> and to increase test coverage on system which is not multi core but hyper threaded.
>
> Signed-off-by: poornima nayak <mpnayak@linux.vnet.ibm.com>
Thanks.
Regards--
Subrata
>
> diff -uprN ltp-full-20090731_orig/testcases/kernel/power_management/runpwtests.sh ltp-full-20090731/testcases/kernel/power_management/runpwtests.sh
> --- ltp-full-20090731_orig/testcases/kernel/power_management/runpwtests.sh 2009-08-20 19:59:11.000000000 +0530
> +++ ltp-full-20090731/testcases/kernel/power_management/runpwtests.sh 2009-08-20 20:41:02.000000000 +0530
> @@ -40,6 +40,7 @@ export contacts="mpnayak@linux.vnet.ibm.
> export analysis="/proctstat"
>
> YES=0
> +NO=1
> #List of reusable functions defined in pm_include.sh
> . ./pm_include.sh
>
> @@ -61,34 +62,50 @@ if [ $RC -eq 1 ] ; then
> fi
>
> is_hyper_threaded; hyper_threaded=$?
> +is_multi_socket; multi_socket=$?
> +is_multi_core; multi_core=$?
> +is_dual_core; dual_core=$?
>
> #Checking sched_mc sysfs interface
> #check_config.sh config_sched_mc || RC=$?
> TST_COUNT=1
> -if [ -f /sys/devices/system/cpu/sched_mc_power_savings ] ; then
> - if test_sched_mc.sh ; then
> - tst_resm TPASS "SCHED_MC sysfs tests"
> +if [ $multi_socket -eq $YES -a $dual_core -eq $YES ] ; then
> + if [ -f /sys/devices/system/cpu/sched_mc_power_savings ] ; then
> + if test_sched_mc.sh ; then
> + tst_resm TPASS "SCHED_MC sysfs tests"
> + else
> + RC=$?
> + tst_resm TFAIL "SCHED_MC sysfs tests"
> + fi
> else
> - RC=$?
> - tst_resm TFAIL "SCHED_MC sysfs tests"
> + tst_resm TCONF "Required kernel configuration for SCHED_MC NOT set"
> fi
> else
> - tst_resm TCONF "Required kernel configuration for SCHED_MC NOT set"
> + if [ -f /sys/devices/system/cpu/sched_mc_power_savings ] ; then
> + tst_resm TFAIL "sched_mc_power_savings interface in system which is not a multi socket &(/) multi core"
> + else
> + tst_resm TCONF "Not a suitable architecture for SCHED_MC test"
> + fi
> fi
>
> # Test sched_smt_power_savings interface on HT machines
> : $(( TST_COUNT += 1 ))
> -if [ -f /sys/devices/system/cpu/sched_smt_power_savings ] ; then
> - if test_sched_smt.sh; then
> - tst_resm TPASS "SCHED_SMT sysfs test"
> +if [ $hyper_threaded -eq $YES ]; then
> + if [ -f /sys/devices/system/cpu/sched_smt_power_savings ] ; then
> + if test_sched_smt.sh; then
> + tst_resm TPASS "SCHED_SMT sysfs test"
> + else
> + RC=$?
> + tst_resm TFAIL "SCHED_SMT sysfs test"
> + fi
> else
> RC=$?
> - tst_resm TFAIL "SCHED_SMT sysfs test"
> - fi
> + tst_resm TFAIL "Required kernel configuration for SCHED_SMT NOT set"
> + fi
> else
> - if [ $hyper_threaded -eq $YES ]; then
> + if [ -f /sys/devices/system/cpu/sched_smt_power_savings ] ; then
> RC=$?
> - tst_resm TFAIL "Required kernel configuration for SCHED_SMT NOT set"
> + tst_resm TFAIL "sched_smt_power_saving interface in system not hyper-threaded"
> else
> tst_resm TCONF "Required Hyper Threading support for SCHED_SMT test"
> fi
> @@ -152,13 +169,13 @@ if [ $? -ne 0 ] ; then
> tst_resm TCONF "Python is not installed, CPU Consoldation\
> test cannot run"
> else
> - get_max_sched_mc; max_sched_mc=$?
> + get_sched_values sched_mc; max_sched_mc=$?
> for sched_mc in `seq 0 $max_sched_mc`; do
> : $(( TST_COUNT+=1))
> sched_domain.py -c $sched_mc; RC=$?
> analyze_sched_domain_result $sched_mc $RC
> if [ $hyper_threaded -eq $YES ]; then
> - get_max_sched_smt ; max_sched_smt=$?
> + get_sched_values sched_smt; max_sched_smt=$?
> for sched_smt in `seq 0 $max_sched_smt`; do
> # Testcase to validate sched_domain tree
> : $(( TST_COUNT+=1))
> @@ -168,32 +185,54 @@ else
> fi
> done
> fi
> +
> +: $(( TST_COUNT+=1))
> +if [ -f /proc/sys/kernel/timer_migration ]; then
> + if test_timer_migration.sh; then
> + tst_resm TPASS "Timer Migration interface test"
> + else
> + RC=$?
> + tst_resm TFAIL "Timer migration interface test"
> + fi
> +else
> + check_kv_arch "timer_migration"; supp=$?
> + if [ $supp -eq $YES ]; then
> + RC=$?
> + tst_resm TFAIL "Timer migration interface missing"
> + else
> + tst_resm TCONF "Kernel version does not support Timer migration"
> + fi
> +fi
> +
> +: $(( TST_COUNT+=1))
> +if check_cpufreq_sysfs_files.sh; then
> + tst_resm TPASS "CPUFREQ sysfs tests"
> + else
> + RC=$?
> + tst_resm TFAIL "CPUFREQ sysfs tests "
> + fi
> +
> if [ $# -gt 0 -a "$1" = "-exclusive" ]; then
> # Test CPU consolidation
> - which python > /dev/null
> - if [ $? -ne 0 ] ; then
> - tst_resm TCONF "Python is not installed, CPU Consoldation\
> - test not run"
> - else
> - sched_mc_smt_pass_cnt=0
> + if [ $multi_socket -eq $YES -a $multi_core -eq $YES ]; then
> work_loads_list="ebizzy kernbench"
> for sched_mc in `seq 0 $max_sched_mc`; do
> for work_load in ${work_loads_list}
> - do
> + do
> : $(( TST_COUNT += 1 ))
> sched_mc_pass_cnt=0
> for repeat_test in `seq 1 10`; do
> - #Testcase to validate CPU consolidation for sched_mc
> + #Testcase to validate CPU consolidation for sched_mc
> if cpu_consolidation.py -c $sched_mc -w $work_load ; then
> : $(( sched_mc_pass_cnt += 1 ))
> fi
> done
> - analyze_consolidation_result $sched_mc $work_load $sched_mc_pass_cnt
> + analyze_package_consolidation_result $sched_mc $work_load $sched_mc_pass_cnt
> done
> if [ $hyper_threaded -eq $YES ]; then
> for sched_smt in `seq 0 $max_sched_smt`; do
> for work_load in ${work_loads_list}; do
> - : $(( TST_COUNT += 1 ))
> + : $(( TST_COUNT += 1 ))
> sched_mc_smt_pass_cnt=0
> for repeat_test in `seq 1 10`; do
> # Testcase to validate CPU consolidation for
> @@ -201,24 +240,26 @@ if [ $# -gt 0 -a "$1" = "-exclusive" ];
> if cpu_consolidation.py -c $sched_mc -t $sched_smt -w $work_load; then
> : $(( sched_mc_smt_pass_cnt += 1 ))
> fi
> + echo "sched_mc_smt_pass_cnt = $sched_mc_smt_pass_cnt"
> done
> - analyze_consolidation_result $sched_mc $work_load $sched_mc_smt_pass_cnt $sched_smt
> -
> - #Testcase to validate consolidation at core level
> - sched_mc_smt_pass_cnt=0
> - stress="thread"
> - : $(( TST_COUNT += 1 ))
> - for repeat_test in `seq 1 10`; do
> - if cpu_consolidation.py -c $sched_mc -t $sched_smt -w $work_load -s $stress; then
> - : $(( sched_mc_smt_pass_cnt += 1 ))
> - fi
> - done
> - analyze_consolidation_result $sched_mc $work_load $sched_mc_smt_pass_cnt $sched_smt $stress
> + analyze_package_consolidation_result $sched_mc $work_load $sched_mc_smt_pass_cnt $sched_smt
> done
> done
> fi
> done
> fi
> + if [ $hyper_threaded -eq $YES ]; then
> + #Testcase to validate consolidation at core level
> + sched_smt_pass_cnt=0
> + : $(( TST_COUNT += 1 ))
> + stress="thread"
> + for repeat_test in `seq 1 10`; do
> + if cpu_consolidation.py -c $sched_mc -t $sched_smt -w $work_load -s $stress; then
> + : $(( sched_smt_pass_cnt += 1 ))
> + fi
> + done
> + analyze_core_consolidation_result $sched_smt $work_load $sched_smt_pass_cnt
> + fi
> fi
>
> exit $RC
>
> ------------------------------------------------------------------------------
> Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day
> trial. Simplify your report design, integration and deployment - and focus on
> what you do best, core application coding. Discover what's new with
> Crystal Reports now. http://p.sf.net/sfu/bobj-july
> _______________________________________________
> Ltp-list mailing list
> Ltp-list@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/ltp-list
------------------------------------------------------------------------------
Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day
trial. Simplify your report design, integration and deployment - and focus on
what you do best, core application coding. Discover what's new with
Crystal Reports now. http://p.sf.net/sfu/bobj-july
_______________________________________________
Ltp-list mailing list
Ltp-list@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/ltp-list
^ permalink raw reply [flat|nested] 25+ messages in thread
* Re: [LTP] Patch to get max sched mc & smt values based on kernel version
2009-08-20 16:07 ` [LTP] Patch to get max sched mc & smt values based on kernel version Poornima Nayak
@ 2009-08-23 7:29 ` Subrata Modak
0 siblings, 0 replies; 25+ messages in thread
From: Subrata Modak @ 2009-08-23 7:29 UTC (permalink / raw)
To: Poornima Nayak; +Cc: ltp-list, arun, vaidy, gautham
On Thu, 2009-08-20 at 21:37 +0530, Poornima Nayak wrote:
> Replaces shell function with C functions to get max sched_mc & sched_smt value.
> Since this uses LTP libraray function to analyze kernel version maintenence of the
> code will be easier.
>
> Signed-off-by: poornima nayak <mpnayak@linux.vnet.ibm.com>
Thanks.
>
>
> diff -uprN ltp-full-20090731_orig/testcases/kernel/power_management/get_sched_values.c ltp-full-20090731/testcases/kernel/power_management/get_sched_values.c
> --- ltp-full-20090731_orig/testcases/kernel/power_management/get_sched_values.c 1970-01-01 05:30:00.000000000 +0530
> +++ ltp-full-20090731/testcases/kernel/power_management/get_sched_values.c 2009-08-20 20:38:13.000000000 +0530
> @@ -0,0 +1,53 @@
> +/************************************************************************
> +* Copyright (c) International Business Machines Corp., 2008
> +* This program is free software; you can redistribute it and/or modify
> +* it under the terms of the GNU General Public License as published by
> +* the Free Software Foundation; either version 2 of the License, or
> +* (at your option) any later version.
> +*
> +* This program is distributed in the hope that it will be useful,
> +* but WITHOUT ANY WARRANTY; without even the implied warranty of
> +* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See
> +* the GNU General Public License for more details.
> +* You should have received a copy of the GNU General Public License
> +* along with this program; if not, write to the Free Software
> +* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
> +*
> +***************************************************************************/
> +#include <stdio.h>
> +#include <test.h>
> +
> +int get_supp_sched_mc(void) {
> + if (tst_kvercmp(2,6,29) < 0 )
> + return 1;
> + else
> + return 2;
> +}
> +
> +int get_supp_sched_smt(void) {
> + if (tst_kvercmp(2,6,29) < 0 )
> + return 1;
> + else
> + return 2;
> +}
> +
> +int main(int argc, char **argv)
> +{
> + char *param;
> + if (argc == 0)
> + return 1;
> + else
> + {
> + param = argv[1];
> + if (strcmp(param, "sched_mc")==0)
> + if (get_supp_sched_mc() == 0)
> + return 0;
> + else
> + return 1;
> + if (strcmp(param, "sched_smt")==0)
> + if (get_supp_sched_smt() == 0)
> + return 0;
> + else
> + return 1;
> + }
> +}
>
> ------------------------------------------------------------------------------
> Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day
> trial. Simplify your report design, integration and deployment - and focus on
> what you do best, core application coding. Discover what's new with
> Crystal Reports now. http://p.sf.net/sfu/bobj-july
> _______________________________________________
> Ltp-list mailing list
> Ltp-list@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/ltp-list
------------------------------------------------------------------------------
Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day
trial. Simplify your report design, integration and deployment - and focus on
what you do best, core application coding. Discover what's new with
Crystal Reports now. http://p.sf.net/sfu/bobj-july
_______________________________________________
Ltp-list mailing list
Ltp-list@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/ltp-list
^ permalink raw reply [flat|nested] 25+ messages in thread
* Re: [LTP] Patch to include workload for consolidation verification
2009-08-20 16:07 ` [LTP] Patch to include workload for consolidation verification Poornima Nayak
@ 2009-08-23 7:29 ` Subrata Modak
0 siblings, 0 replies; 25+ messages in thread
From: Subrata Modak @ 2009-08-23 7:29 UTC (permalink / raw)
To: Poornima Nayak; +Cc: ltp-list, arun, vaidy, gautham
On Thu, 2009-08-20 at 21:37 +0530, Poornima Nayak wrote:
> Modified to pass workload as a parameter for cpu cosolidation verifcation function.
> This is required to verify cpu consolidation on Hypre threaded system for kernbench workload.
>
> Signed-off-by: poornima nayak <mpnayak@linux.vnet.ibm.com>
Thanks.
Regards--
Subrata
>
> diff -uprN ltp-full-20090731_orig/testcases/kernel/power_management/cpu_consolidation.py ltp-full-20090731/testcases/kernel/power_management/cpu_consolidation.py
> --- ltp-full-20090731_orig/testcases/kernel/power_management/cpu_consolidation.py 2009-08-20 19:59:11.000000000 +0530
> +++ ltp-full-20090731/testcases/kernel/power_management/cpu_consolidation.py 2009-08-20 20:39:25.000000000 +0530
> @@ -45,7 +45,7 @@ def main(argv=None):
> duration=60
> trigger_workld(options.work_ld, options.stress, duration, background)
> generate_report()
> - status = validate_cpu_consolidation(options.mc_level, options.smt_level)
> + status = validate_cpu_consolidation(options.work_ld,options.mc_level, options.smt_level)
> reset_schedmc()
> if is_hyper_threaded():
> reset_schedsmt()
>
> ------------------------------------------------------------------------------
> Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day
> trial. Simplify your report design, integration and deployment - and focus on
> what you do best, core application coding. Discover what's new with
> Crystal Reports now. http://p.sf.net/sfu/bobj-july
> _______________________________________________
> Ltp-list mailing list
> Ltp-list@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/ltp-list
------------------------------------------------------------------------------
Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day
trial. Simplify your report design, integration and deployment - and focus on
what you do best, core application coding. Discover what's new with
Crystal Reports now. http://p.sf.net/sfu/bobj-july
_______________________________________________
Ltp-list mailing list
Ltp-list@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/ltp-list
^ permalink raw reply [flat|nested] 25+ messages in thread
end of thread, other threads:[~2009-08-23 7:30 UTC | newest]
Thread overview: 25+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2009-08-20 16:06 [LTP] Patch to fix kernbench integration issue Poornima Nayak
2009-08-20 16:07 ` [LTP] Patch to fix make install issue in ebizzy Poornima Nayak
2009-08-20 16:52 ` Garrett Cooper
2009-08-23 7:29 ` Subrata Modak
2009-08-20 16:07 ` [LTP] Patch to include workload for consolidation verification Poornima Nayak
2009-08-23 7:29 ` Subrata Modak
2009-08-20 16:07 ` [LTP] Patch to get max sched mc & smt values based on kernel version Poornima Nayak
2009-08-23 7:29 ` Subrata Modak
2009-08-20 16:07 ` [LTP] New & modified reusable functions for new & existing testcases Poornima Nayak
2009-08-20 16:51 ` Garrett Cooper
2009-08-23 7:29 ` Subrata Modak
2009-08-20 16:07 ` [LTP] Patch for PM makefile for new testcases & fix test_sched_smt integration issue Poornima Nayak
2009-08-20 17:01 ` Garrett Cooper
2009-08-23 7:28 ` Subrata Modak
2009-08-20 16:07 ` [LTP] Patch for PM Master script to integrate new testcases Poornima Nayak
2009-08-23 7:29 ` Subrata Modak
2009-08-20 16:08 ` [LTP] Patch to fix cpu consolidation failure for kernbench on HT system Poornima Nayak
2009-08-20 17:00 ` Garrett Cooper
2009-08-23 7:28 ` Subrata Modak
2009-08-20 16:08 ` [LTP] New testcase to test timer_migration interface Poornima Nayak
2009-08-20 16:57 ` Garrett Cooper
2009-08-20 16:57 ` Garrett Cooper
2009-08-23 7:29 ` Subrata Modak
2009-08-20 16:53 ` [LTP] Patch to fix kernbench integration issue Garrett Cooper
2009-08-23 7:29 ` Subrata Modak
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox