The default behaviour of matrix_mult is changed.
Stats are saved only when requested.
Signed-off-by: Gilles Carry <[EMAIL PROTECTED]>
Cc: Darren Hart <[EMAIL PROTECTED]>
Cc: Tim Chavez <[EMAIL PROTECTED]>
---
testcases/realtime/func/matrix_mult/matrix_mult.c | 45 +++++++++++++--------
1 files changed, 28 insertions(+), 17 deletions(-)
diff --git a/testcases/realtime/func/matrix_mult/matrix_mult.c
b/testcases/realtime/func/matrix_mult/matrix_mult.c
index 6ea68b6..fa52048 100644
--- a/testcases/realtime/func/matrix_mult/matrix_mult.c
+++ b/testcases/realtime/func/matrix_mult/matrix_mult.c
@@ -55,6 +55,7 @@
static int run_jvmsim = 0;
static int ops_multiplier = DEF_OPS_MULTIPLIER;
static int ops;
+static int save_stats = 0;
void usage(void)
{
@@ -62,6 +63,7 @@ void usage(void)
printf("matrix_mult specific options:\n");
printf(" -j enable jvmsim\n");
printf(" -l# #: number of multiplications per iteration per
cpu (load)\n");
+ printf(" -s save stats\n");
}
int parse_args(int c, char *v)
@@ -77,6 +79,9 @@ int parse_args(int c, char *v)
case 'h':
usage();
exit(0);
+ case 's':
+ save_stats = 1;
+ break;
default:
handled = 0;
break;
@@ -137,7 +142,7 @@ int main(int argc, char *argv[])
int criteria;
setup();
- rt_init("jl:h", parse_args, argc, argv);
+ rt_init("jl:hs", parse_args, argc, argv);
numcpus = sysconf(_SC_NPROCESSORS_ONLN);
criteria = MAX(1, numcpus/2); // the minimum avg concurrent multiplier
to pass
ops = numcpus * ops_multiplier;
@@ -159,6 +164,8 @@ int main(int argc, char *argv[])
printf("jvmsim disabled\n");
}
+ printf("Stats %sto be saved\n", save_stats ? "" : "*not* ");
+
stats_container_t sdat, cdat;
stats_container_t shist, chist;
if ( stats_container_init(&sdat, ITERATIONS) ||
@@ -198,15 +205,17 @@ int main(int argc, char *argv[])
printf("Avg: %.4f us\n", savg);
printf("StdDev: %.4f us\n", stats_stddev(&sdat));
- if (
- stats_hist(&shist, &sdat) ||
+ if (save_stats) {
+ if (
+ stats_hist(&shist, &sdat) ||
- stats_container_save("sequential", "Matrix Multiplication
Sequential Execution Runtime Scatter Plot",
- "Iteration", "Runtime (us)", &sdat, "points") ||
- stats_container_save("sequential_hist", "Matrix Multiplicatoin
Sequential Execution Runtime Histogram",
- "Runtime (us)", "Samples", &shist, "steps")
- ) {
- fprintf(stderr, "Warning: could not save sequential mults
stats\n");
+ stats_container_save("sequential", "Matrix
Multiplication Sequential Execution Runtime Scatter Plot",
+ "Iteration", "Runtime (us)", &sdat,
"points") ||
+ stats_container_save("sequential_hist", "Matrix
Multiplicatoin Sequential Execution Runtime Histogram",
+ "Runtime (us)", "Samples", &shist,
"steps")
+ ) {
+ fprintf(stderr, "Warning: could not save sequential
mults stats\n");
+ }
}
// run matrix mult operation concurrently
@@ -246,15 +255,17 @@ int main(int argc, char *argv[])
printf("Avg: %.4f us\n", cavg);
printf("StdDev: %.4f us\n", stats_stddev(&cdat));
- if (
- stats_hist(&chist, &cdat) ||
+ if (save_stats) {
+ if (
+ stats_hist(&chist, &cdat) ||
- stats_container_save("concurrent", "Matrix Multiplication
Concurrent Execution Runtime Scatter Plot",
- "Iteration", "Runtime (us)", &cdat,
"points") ||
- stats_container_save("concurrent_hist", "Matrix Multiplication
Concurrent Execution Runtime Histogram",
- "Iteration", "Runtime (us)", &chist,
"steps")
- ) {
- fprintf(stderr, "Warning: could not save concurrent mults
stats\n");
+ stats_container_save("concurrent", "Matrix
Multiplication Concurrent Execution Runtime Scatter Plot",
+ "Iteration", "Runtime (us)",
&cdat, "points") ||
+ stats_container_save("concurrent_hist", "Matrix
Multiplication Concurrent Execution Runtime Histogram",
+ "Iteration", "Runtime (us)",
&chist, "steps")
+ ) {
+ fprintf(stderr, "Warning: could not save concurrent
mults stats\n");
+ }
}
printf("\nSeq/Conc Ratios:\n");
--
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