aboutsummaryrefslogtreecommitdiff
path: root/mg2d.c
diff options
context:
space:
mode:
authorAnton Khirnov <anton@khirnov.net>2019-03-25 18:50:38 +0100
committerAnton Khirnov <anton@khirnov.net>2019-03-25 18:50:38 +0100
commitb742ce05034ab8e844487c0c767d470b706cb71f (patch)
tree210ae070913908b02abf391a1a69f50679451c4b /mg2d.c
parentd97e85e51dc43b2e78ddf42903573a7aa8ad75cf (diff)
egs: add more timers
Diffstat (limited to 'mg2d.c')
-rw-r--r--mg2d.c16
1 files changed, 12 insertions, 4 deletions
diff --git a/mg2d.c b/mg2d.c
index 3e02ac1..0ae651b 100644
--- a/mg2d.c
+++ b/mg2d.c
@@ -792,9 +792,14 @@ void mg2d_print_stats(MG2DContext *ctx, const char *prefix)
}
ret = snprintf(p, sizeof(buf) - (p - buf),
- "||%2.2f%% residual %2.2f%% boundaries",
+ "||%2.2f%% init %2.2f%% residual %2.2f%% boundaries (%2.2f%% fixval %2.2f%% reflect %2.2f%% falloff %2.2f%% corners)",
+ level->solver->time_init * 100.0 / level->solver->time_total,
level->solver->time_res_calc * 100.0 / level->solver->time_total,
- level->solver->time_boundaries * 100.0 / level->solver->time_total);
+ level->solver->time_boundaries * 100.0 / level->solver->time_total,
+ level->solver->time_bnd_fixval * 100.0 / level->solver->time_total,
+ level->solver->time_bnd_reflect * 100.0 / level->solver->time_total,
+ level->solver->time_bnd_falloff * 100.0 / level->solver->time_total,
+ level->solver->time_bnd_corners * 100.0 / level->solver->time_total);
if (ret > 0)
p += ret;
@@ -806,9 +811,12 @@ void mg2d_print_stats(MG2DContext *ctx, const char *prefix)
p += ret;
} else if (e) {
ret = snprintf(p, sizeof(buf) - (p - buf),
- " %2.2f%% matrix construct %2.2f%% linear solve",
+ " %2.2f%% const %2.2f%% transp %2.2f%% bicgstab %2.2f%% lu %2.2f%% export",
e->time_mat_construct * 100.0 / level->solver->time_total,
- e->time_lin_solve * 100.0 / level->solver->time_total);
+ e->time_mat_transpose * 100.0 / level->solver->time_total,
+ e->time_bicgstab_solve * 100.0 / level->solver->time_total,
+ e->time_lu_solve * 100.0 / level->solver->time_total,
+ e->time_export * 100.0 / level->solver->time_total);
if (ret > 0)
p += ret;
}