3 /* chrono - demo of GRAS benchmarking features */
5 /* Copyright (c) 2005 Martin Quinson, Arnaud Legrand. All rights reserved. */
7 /* This program is free software; you can redistribute it and/or modify it
8 * under the terms of the license (GNU LGPL) which comes with this package. */
13 XBT_LOG_NEW_DEFAULT_CATEGORY(Chrono,"Messages specific to this example");
16 /* Function prototypes */
17 int multiplier (int argc,char *argv[]);
19 int multiplier (int argc,char *argv[])
27 gras_init(&argc, argv, NULL);
29 A = malloc(n*n*sizeof(double));
30 B = malloc(n*n*sizeof(double));
31 C = malloc(n*n*sizeof(double));
33 start=now=gras_os_time();
35 INFO1("Before computation: %lg", start);
39 GRAS_BENCH_ONCE_RUN_ONCE_BEGIN();
50 C[i*n+j] += A[i*n+k]*B[k*n+j];
52 GRAS_BENCH_ONCE_RUN_ONCE_END();
53 now=gras_os_time()-now;
54 INFO2("Iteration %d : %lg ", l, now);
57 now=gras_os_time()-start;
58 INFO2("After computation: %lg; Duration: %lg ", gras_os_time(), now);