From 353b739e2c1142ee9d2b83a5baf83a55d3569a86 Mon Sep 17 00:00:00 2001 From: Andreas Kloeckner Date: Fri, 7 Jul 2017 09:11:57 -0400 Subject: [PATCH 1/2] Make hello-loopy example work again --- examples/python/hello-loopy.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/examples/python/hello-loopy.py b/examples/python/hello-loopy.py index 82ff2e60d..7c5de5a1b 100644 --- a/examples/python/hello-loopy.py +++ b/examples/python/hello-loopy.py @@ -26,5 +26,5 @@ knl = lp.split_iname(knl, "i", 128, outer_tag="g.0", inner_tag="l.0") evt, (out,) = knl(queue, a=a) # ENDEXAMPLE -cknl = lp.CompiledKernel(ctx, knl) -print(cknl.get_highlighted_code({"a": np.float32})) +knl = lp.add_and_infer_dtypes(knl, {"a": np.dtype(np.float32)}) +print(lp.generate_code_v2(knl).device_code()) -- GitLab From b4f0093f80c89d2113d37ad1311993e1a45ace88 Mon Sep 17 00:00:00 2001 From: Andreas Kloeckner Date: Fri, 7 Jul 2017 09:12:22 -0400 Subject: [PATCH 2/2] Minor speed-up in prepare_for_caching --- loopy/preprocess.py | 14 ++++++++------ 1 file changed, 8 insertions(+), 6 deletions(-) diff --git a/loopy/preprocess.py b/loopy/preprocess.py index 17226b63a..c331ccc82 100644 --- a/loopy/preprocess.py +++ b/loopy/preprocess.py @@ -48,20 +48,22 @@ def prepare_for_caching(kernel): import loopy as lp new_args = [] + tgt = kernel.target + for arg in kernel.args: dtype = arg.dtype - if dtype is not None and dtype is not lp.auto: - dtype = dtype.with_target(kernel.target) + if dtype is not None and dtype is not lp.auto and dtype.target is not tgt: + arg = arg.copy(dtype=dtype.with_target(kernel.target)) - new_args.append(arg.copy(dtype=dtype)) + new_args.append(arg) new_temporary_variables = {} for name, temp in six.iteritems(kernel.temporary_variables): dtype = temp.dtype - if dtype is not None and dtype is not lp.auto: - dtype = dtype.with_target(kernel.target) + if dtype is not None and dtype is not lp.auto and dtype.target is not tgt: + temp = temp.copy(dtype=dtype.with_target(tgt)) - new_temporary_variables[name] = temp.copy(dtype=dtype) + new_temporary_variables[name] = temp kernel = kernel.copy( args=new_args, -- GitLab