Signed-off-by: Gilles Carry <[EMAIL PROTECTED]>
Cc: Darren Hart <[EMAIL PROTECTED]>
Cc: Tim Chavez <[EMAIL PROTECTED]>
---
 .../func/periodic_cpu_load/periodic_cpu_load.c     |   22 +++++++++++++------
 1 files changed, 15 insertions(+), 7 deletions(-)

diff --git a/testcases/realtime/func/periodic_cpu_load/periodic_cpu_load.c 
b/testcases/realtime/func/periodic_cpu_load/periodic_cpu_load.c
index b8c7b53..26aeb3e 100644
--- a/testcases/realtime/func/periodic_cpu_load/periodic_cpu_load.c
+++ b/testcases/realtime/func/periodic_cpu_load/periodic_cpu_load.c
@@ -71,6 +71,7 @@ stats_quantiles_t quantiles[THREADS_PER_GROUP * NUM_GROUPS];
 static const char groupname[NUM_GROUPS] = "ABC";
 
 static int run_jvmsim = 0;
+static int iterations = ITERATIONS;
 static int ret = 0;
 
 void usage(void)
@@ -87,6 +88,9 @@ int parse_args(int c, char *v)
                case 'j':
                        run_jvmsim = 1;
                        break;
+               case 'i':
+                       iterations = atoi(v);
+                       break;
                case 'h':
                        usage();
                        exit(0);
@@ -167,12 +171,16 @@ int main(int argc, char *argv[])
        int i;
        setup();
 
-       rt_init("jh", parse_args, argc, argv);
+       rt_init("jhi:", parse_args, argc, argv);
+
+       if (iterations < 100) {
+               fprintf(stderr, "Iteration cannot be less than 100.\n");
+       }
 
        printf("------------------------------------\n");
        printf("Periodic CPU Load Execution Variance\n");
        printf("------------------------------------\n\n");
-       printf("Running %d iterations per thread\n", ITERATIONS);
+       printf("Running %d iterations per thread\n", iterations);
        printf("Thread Group A:\n");
        printf("  threads: %d\n", THREADS_PER_GROUP);
        printf("  priority: %d\n", PRIO_A);
@@ -195,13 +203,13 @@ int main(int argc, char *argv[])
        }
 
        for (i=0; i<(THREADS_PER_GROUP * NUM_GROUPS); i++) {
-               stats_container_init(&dat[i], ITERATIONS);
-               stats_quantiles_init(&quantiles[i], (int)log10(ITERATIONS));
+               stats_container_init(&dat[i], iterations);
+               stats_quantiles_init(&quantiles[i], (int)log10(iterations));
        }
 
-       struct periodic_arg parg_a = {PERIOD_A, ITERATIONS, calc, (void 
*)CALC_LOOPS_A };
-       struct periodic_arg parg_b = {PERIOD_B, ITERATIONS, calc, (void 
*)CALC_LOOPS_B };
-       struct periodic_arg parg_c = {PERIOD_C, ITERATIONS, calc, (void 
*)CALC_LOOPS_C };
+       struct periodic_arg parg_a = {PERIOD_A, iterations, calc, (void 
*)CALC_LOOPS_A };
+       struct periodic_arg parg_b = {PERIOD_B, iterations, calc, (void 
*)CALC_LOOPS_B };
+       struct periodic_arg parg_c = {PERIOD_C, iterations, calc, (void 
*)CALC_LOOPS_C };
 
        for (i=0; i < THREADS_PER_GROUP; i++)
                create_fifo_thread(periodic_thread, (void*)&parg_a, PRIO_A);
-- 
1.5.4.3.450.gb92176


-------------------------------------------------------------------------
This SF.net email is sponsored by: Microsoft
Defy all challenges. Microsoft(R) Visual Studio 2008.
http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/
_______________________________________________
Ltp-list mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/ltp-list

Reply via email to