New testcase to validate Ideal Load Balancer Functionality.
By default sets sched_mc_power_savings & sched_smt_power savings to the value
passed as argument and then triggers kernbench by pinning it to the CPUn

Signed-off-by: poornima nayak <[email protected]>

diff -uprN ltp_orig/testcases/kernel/power_management/ilb_test.py 
ltp/testcases/kernel/power_management/ilb_test.py
--- ltp_orig/testcases/kernel/power_management/ilb_test.py      1970-01-01 
05:30:00.000000000 +0530
+++ ltp/testcases/kernel/power_management/ilb_test.py   2009-08-28 
12:13:27.000000000 +0530
@@ -0,0 +1,57 @@
+#!/usr/bin/python
+''' This Python script interprets interrupt values.
+    Validates Ideal load balancer runs in same package where workload is 
running
+'''
+
+import os
+import sys
+LIB_DIR = "%s/testcases/kernel/power_management/lib" % os.environ['LTPROOT']
+sys.path.append(LIB_DIR)
+from optparse import OptionParser
+from sched_mc import *
+
+__author__ = "Poornima Nayak <[email protected]>"
+
+class Usage(Exception):
+    def __init__(self, msg):
+        self.msg = msg
+
+def main(argv=None):
+    if argv is None:
+        argv = sys.argv
+
+    usage = "-w"
+    parser = OptionParser(usage)
+    parser.add_option("-c", "--mc_level", dest="mc_level",
+        default=0, help="Sched mc power saving value 0/1/2")
+    parser.add_option("-t", "--smt_level", dest="smt_level",
+        default=0, help="Sched smt power saving value 0/1/2")
+    parser.add_option("-w", "--workload", dest="work_ld",
+        default="kernbench", help="Workload can be ebizzy/kernbench")
+    (options, args) = parser.parse_args()
+
+    try:
+        count_num_cpu()
+        count_num_sockets()
+        if is_multi_socket():
+            set_sched_mc_power(options.mc_level)
+        if is_hyper_threaded():
+            set_sched_smt_power(options.smt_level)
+        map_cpuid_pkgid()
+        print "INFO: Created table mapping cpu to package"
+        background="no"
+        duration=60
+        pinned="yes"
+        trigger_workld(options.work_ld, "single_job", duration, background, 
pinned)
+        generate_loc_intr_report()
+        status = validate_ilb(options.mc_level, options.smt_level)
+        reset_schedmc()
+        if is_hyper_threaded():
+            reset_schedsmt()
+        return(status)        
+    except Exception, details:
+        print "INFO: Idle Load Balancer test failed", details
+        return(1)
+
+if __name__ == "__main__":
+    sys.exit(main())

------------------------------------------------------------------------------
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
[email protected]
https://lists.sourceforge.net/lists/listinfo/ltp-list

Reply via email to