From 591ecc83c8684ece302596d38173e6d499834087 Mon Sep 17 00:00:00 2001 From: Andreas Kloeckner <inform@tiker.net> Date: Fri, 2 Jun 2017 20:16:56 -0400 Subject: [PATCH] Better kernel names for Random123 RNG --- pyopencl/clrandom.py | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/pyopencl/clrandom.py b/pyopencl/clrandom.py index a30ffaf9..795474b3 100644 --- a/pyopencl/clrandom.py +++ b/pyopencl/clrandom.py @@ -520,6 +520,7 @@ class Random123GeneratorBase(object): "unsupported RNG distribution/data type combination '%s/%s'" % rng_key) + kernel_name = "rng_gen_%s_%s" % (self.generator_name, distribution) src = """//CL// #include <%(header_name)s> @@ -559,7 +560,7 @@ class Random123GeneratorBase(object): #define GET_RANDOM_NUM(gen) %(rng_expr)s - kernel void generate( + kernel void %(kernel_name)s( int k1, #if %(key_length)s > 2 int k2, int k3, @@ -599,6 +600,7 @@ class Random123GeneratorBase(object): output[idx+3] = tail_ran.w; } """ % { + "kernel_name": kernel_name, "gen_name": self.generator_name, "header_name": self.header_name, "output_t": c_type, @@ -608,7 +610,7 @@ class Random123GeneratorBase(object): } prg = cl.Program(self.context, src).build() - knl = prg.generate + knl = getattr(prg, kernel_name) knl.set_scalar_arg_dtypes( [np.int32] * (self.key_length - 1 + 4) + [None, np.int64, arg_dtype, arg_dtype]) -- GitLab