From e1acfd28e51d33b05bdfd09ebe973620e08b33bb Mon Sep 17 00:00:00 2001
From: Dominic Kempf <dominic.kempf@iwr.uni-heidelberg.de>
Date: Thu, 19 Jan 2017 11:05:20 +0100
Subject: [PATCH] Some more fixes to instrumentation_level 3, 4

---
 applications/convection_diffusion/conv_diff_dg.mini | 1 +
 applications/poisson_dg/poisson_dg.mini             | 1 +
 python/dune/perftool/generation/cpp.py              | 4 +---
 python/dune/perftool/pdelab/driver.py               | 2 +-
 python/dune/perftool/pdelab/localoperator.py        | 8 ++++----
 5 files changed, 8 insertions(+), 8 deletions(-)

diff --git a/applications/convection_diffusion/conv_diff_dg.mini b/applications/convection_diffusion/conv_diff_dg.mini
index 904f1e6e..712fab48 100644
--- a/applications/convection_diffusion/conv_diff_dg.mini
+++ b/applications/convection_diffusion/conv_diff_dg.mini
@@ -2,6 +2,7 @@ __name = app_conv_diff_{__exec_suffix}
 __exec_suffix = deg{formcompiler.ufl_variants.degree}_{opcount_suffix}_level{formcompiler.instrumentation_level}
 
 opcount_suffix = opcount, nonopcount | expand opcount
+{opcount_suffix} == opcount and {formcompiler.instrumentation_level} != 2 | exclude
 
 # Calculate the size of the grid to equlibritate it to 100 MB/rank
 # Input parameters
diff --git a/applications/poisson_dg/poisson_dg.mini b/applications/poisson_dg/poisson_dg.mini
index 14426746..bea38c8f 100644
--- a/applications/poisson_dg/poisson_dg.mini
+++ b/applications/poisson_dg/poisson_dg.mini
@@ -2,6 +2,7 @@ __name = app_poisson_dg_{__exec_suffix}
 __exec_suffix = deg{formcompiler.ufl_variants.degree}_{opcount_suffix}_level{formcompiler.instrumentation_level}
 
 opcount_suffix = opcount, nonopcount | expand opcount
+{opcount_suffix} == opcount and {formcompiler.instrumentation_level} != 2 | exclude
 
 # Calculate the size of the grid to equlibritate it to 100 MB/rank
 # Input parameters
diff --git a/python/dune/perftool/generation/cpp.py b/python/dune/perftool/generation/cpp.py
index f3dba1d4..57dd91c8 100644
--- a/python/dune/perftool/generation/cpp.py
+++ b/python/dune/perftool/generation/cpp.py
@@ -42,9 +42,7 @@ def constructor_parameter(_type, name):
 
 @generator_factory(item_tags=("dump_timers",))
 def dump_accumulate_timer(name):
-    from dune.perftool.pdelab.localoperator import (name_time_dumper_os,
-                                                    name_time_dumper_reset,
-                                                    name_time_dumper_exec,)
+    from dune.perftool.pdelab.localoperator import name_time_dumper_os
     os = name_time_dumper_os()
     # reset = name_time_dumper_reset()
     reset = 'false'
diff --git a/python/dune/perftool/pdelab/driver.py b/python/dune/perftool/pdelab/driver.py
index 34eb37d2..58e55ce4 100644
--- a/python/dune/perftool/pdelab/driver.py
+++ b/python/dune/perftool/pdelab/driver.py
@@ -1427,7 +1427,7 @@ def setup_timer():
 @preamble
 def define_timing_identifier(name):
     ini = name_initree()
-    return "auto {} = {}.get<std::string>(\"identifier\", argv[0]);".format(name, ini)
+    return "auto {} = {}.get<char*>(\"identifier\", argv[0]);".format(name, ini)
 
 
 def name_timing_identifier():
diff --git a/python/dune/perftool/pdelab/localoperator.py b/python/dune/perftool/pdelab/localoperator.py
index f6ffbec8..039dc3a2 100644
--- a/python/dune/perftool/pdelab/localoperator.py
+++ b/python/dune/perftool/pdelab/localoperator.py
@@ -530,8 +530,8 @@ def name_time_dumper_reset():
     return "reset"
 
 
-def name_time_dumper_exec():
-    return "exec"
+def name_time_dumper_ident():
+    return "ident"
 
 
 @generator_factory(item_tags=("cached",), cache_key_generator=lambda **kw: None)
@@ -543,12 +543,12 @@ class TimerMethod(ClassMember):
     def __init__(self):
         os = name_time_dumper_os()
         reset = name_time_dumper_reset()
-        ex = name_time_dumper_exec()
+        ident = name_time_dumper_ident()
         knl = name_example_kernel()
         assert(knl is not None)
 
         content = ["template <typename Stream>",
-                   "void dump_timers(Stream& {}, char* {}, bool {})".format(os, ex, reset),
+                   "void dump_timers(Stream& {}, char* {}, bool {})".format(os, ident, reset),
                    "{"]
         dump_timers = [i for i in retrieve_cache_items(condition='dump_timers')]
         content.extend(map(lambda x: '  ' + x, dump_timers))
-- 
GitLab