Skip to content
Snippets Groups Projects
Commit a870d75a authored by Dominic Kempf's avatar Dominic Kempf
Browse files

Make opcounting work withou volume integrals present

parent 9b768b42
No related branches found
No related tags found
No related merge requests found
......@@ -9,6 +9,7 @@ from dune.perftool.generation import (backend,
constructor_parameter,
domain,
dump_accumulate_timer,
generator_factory,
get_backend,
get_global_context_value,
global_context,
......@@ -569,12 +570,19 @@ def name_time_dumper_exec():
return "exec"
@generator_factory(item_tags=("cached",), cache_key_generator=lambda **kw: None)
def name_example_kernel(name=None):
return name
class TimerMethod(ClassMember):
def __init__(self):
os = name_time_dumper_os()
reset = name_time_dumper_reset()
t = name_time_dumper_t()
ex = name_time_dumper_exec()
knl = name_example_kernel()
assert(knl is not None)
# TODO: operator counting only works if alpha_volume_kernel exists
content = ["template <typename Stream>",
......@@ -582,7 +590,7 @@ class TimerMethod(ClassMember):
"{",
" double {} = 0.0;".format(t),
"#ifdef ENABLE_COUNTER",
" auto counter = HP_TIMER_OPCOUNTERS(alpha_volume_kernel);",
" auto counter = HP_TIMER_OPCOUNTERS({});".format(knl),
" counter.reset();",
"#endif",
""]
......@@ -617,6 +625,7 @@ class LoopyKernelMethod(ClassMember):
# Start timer
if add_timings and get_option('timer'):
timer_name = assembler_routine_name() + '_kernel'
name_example_kernel(name=timer_name)
post_include('HP_DECLARE_TIMER({});'.format(timer_name), filetag='operatorfile')
content.append(' ' + 'HP_TIMER_START({});'.format(timer_name))
dump_accumulate_timer(timer_name)
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment