Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- *** reduction.py 2010-10-16 14:30:39.000000000 -0600
- --- mymod.py 2011-06-10 13:29:24.609524758 -0600
- ***************
- *** 144,149 ****
- --- 144,150 ----
- "name": name,
- "preamble": preamble
- }
- +
- return SourceModule(src, options=options, keep=keep)
- ***************
- *** 175,182 ****
- class ReductionKernel:
- def __init__(self, dtype_out,
- neutral, reduce_expr, map_expr=None, arguments=None,
- ! name="reduce_kernel", keep=False, options=[], preamble=""):
- !
- self.dtype_out = dtype_out
- self.block_size = 512
- --- 176,183 ----
- class ReductionKernel:
- def __init__(self, dtype_out,
- neutral, reduce_expr, map_expr=None, arguments=None,
- ! name="reduce_kernel", keep=False, options=[], preamble="", hack=False):
- ! self.hack = hack
- self.dtype_out = dtype_out
- self.block_size = 512
- ***************
- *** 189,194 ****
- --- 190,203 ----
- self.stage1_func = s1_func.prepared_async_call
- # stage 2 has only one input and no map expression
- + if hack:
- + s2_func, self.stage2_arg_types = get_reduction_kernel_and_types(
- + dtype_to_ctype(dtype_out), self.block_size,
- + neutral, reduce_expr, arguments="float *in, " + arguments,
- + name=name+"_stage2", keep=keep, options=options,
- + preamble=preamble)
- + self.stage2_func = s2_func.prepared_async_call
- + else:
- s2_func, self.stage2_arg_types = get_reduction_kernel_and_types(
- dtype_to_ctype(dtype_out), self.block_size,
- neutral, reduce_expr,
- ***************
- *** 256,261 ****
- --- 265,273 ----
- else:
- f = s2_func
- arg_types = self.stage2_arg_types
- + if self.hack:
- + args = [result].extend(args)
- + else:
- args = [result]
Add Comment
Please, Sign In to add comment