From afcc773d66b0590a796470d51adbdae30add9440 Mon Sep 17 00:00:00 2001 From: Dominic Kempf <dominic.kempf@iwr.uni-heidelberg.de> Date: Tue, 24 Jan 2017 17:00:35 +0100 Subject: [PATCH] Avoid warnings for precomputation temporaries --- python/dune/perftool/pdelab/localoperator.py | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/python/dune/perftool/pdelab/localoperator.py b/python/dune/perftool/pdelab/localoperator.py index 9cb31a24..271432b5 100644 --- a/python/dune/perftool/pdelab/localoperator.py +++ b/python/dune/perftool/pdelab/localoperator.py @@ -505,8 +505,16 @@ def extract_kernel_from_cache(tag, wrap_in_cgen=True): # Precompute all the substrules for sr in substrules: try: - kernel = lp.precompute(kernel, sr.name) - except: + tmpname = "precompute_{}".format(sr.name) + kernel = lp.precompute(kernel, + sr.name, + temporary_name=tmpname, + ) + # Vectorization strategies are actually very likely to eliminate the + # precomputation temporary. To avoid the temporary elimination warning + # we need to explicitly disable it. + kernel = kernel.copy(silenced_warnings=kernel.silenced_warnings + ["temp_to_write({})".format(tmpname)]) + except RunTimeError: pass from loopy import make_reduction_inames_unique -- GitLab