Safe Haskell | None |
---|---|
Language | Haskell2010 |
Documentation
segRed :: (MonadFreshNames m, HasScope Kernels m) => Pattern Kernels -> SubExp -> SubExp -> [SegRedOp InKernel] -> Lambda InKernel -> [VName] -> [(VName, SubExp)] -> [KernelInput] -> m (Stms Kernels) Source #
nonSegRed :: (MonadFreshNames m, HasScope Kernels m) => Pattern Kernels -> SubExp -> [SegRedOp InKernel] -> Lambda InKernel -> [VName] -> m (Stms Kernels) Source #
segScan :: (MonadFreshNames m, HasScope Kernels m) => Pattern Kernels -> SubExp -> SubExp -> Lambda InKernel -> Lambda InKernel -> [SubExp] -> [VName] -> [(VName, SubExp)] -> [KernelInput] -> m (Stms Kernels) Source #
streamRed :: (MonadFreshNames m, HasScope Kernels m) => Pattern Kernels -> SubExp -> Commutativity -> Lambda InKernel -> Lambda InKernel -> [SubExp] -> [VName] -> m (Stms Kernels) Source #
streamMap :: (MonadFreshNames m, HasScope Kernels m) => [String] -> [PatElem Kernels] -> SubExp -> Commutativity -> Lambda InKernel -> [SubExp] -> [VName] -> m ((SubExp, [VName]), Stms Kernels) Source #
mapKernel :: (HasScope Kernels m, MonadFreshNames m) => SubExp -> SpaceStructure -> [KernelInput] -> [Type] -> KernelBody InKernel -> m (Stms Kernels, Kernel InKernel) Source #
data KernelInput Source #
KernelInput | |
|
Instances
Show KernelInput Source # | |
Defined in Futhark.Pass.ExtractKernels.BlockedKernel showsPrec :: Int -> KernelInput -> ShowS # show :: KernelInput -> String # showList :: [KernelInput] -> ShowS # |
readKernelInput :: (HasScope scope m, Monad m) => KernelInput -> m (Stm InKernel) Source #
newKernelSpace :: MonadFreshNames m => (SubExp, SubExp, SubExp, SubExp) -> SpaceStructure -> m KernelSpace Source #