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