 | dph-prim-par-0.4.0: Parallel Primitives for Data-Parallel Haskell. | Contents | Index |
|
| Data.Array.Parallel.Unlifted |
|
|
|
| Synopsis |
|
| data a :*: b = !a :*: !b | | | class (UA a, DT a) => Elt a | | | type Array = UArr | | | type Segd = USegd | | | length :: Elt a => Array a -> Int | | | empty :: Elt a => Array a | | | replicate :: Elt a => Int -> a -> Array a | | | repeat :: Elt a => Int -> Int -> Array a -> Array a | | | (+:+) :: Elt a => Array a -> Array a -> Array a | | | (!:) :: Elt a => Array a -> Int -> a | | | extract :: Elt a => Array a -> Int -> Int -> Array a | | | drop :: Elt a => Int -> Array a -> Array a | | | permute :: Elt a => Array a -> Array Int -> Array a | | | mbpermute :: (Elt a, Elt b) => (a -> b) -> Array a -> Array Int -> Array b | | | bpermute :: Elt a => Array a -> Array Int -> Array a | | | bpermuteDft :: Elt e => Int -> (Int -> e) -> Array (Int :*: e) -> Array e | | | update :: Elt a => Array a -> Array (Int :*: a) -> Array a | | | pack :: Elt a => Array a -> Array Bool -> Array a | | | combine :: Elt a => Array Bool -> Array a -> Array a -> Array a | | | enumFromTo :: Int -> Int -> Array Int | | | enumFromThenTo :: Int -> Int -> Int -> Array Int | | | enumFromToEach :: Int -> Array (Int :*: Int) -> Array Int | | | enumFromStepLen :: Int -> Int -> Int -> Array Int | | | enumFromStepLenEach :: Int -> Array ((Int :*: Int) :*: Int) -> Array Int | | | indexed :: Elt a => Array a -> Array (Int :*: a) | | | zip :: (Elt a, Elt b) => Array a -> Array b -> Array (a :*: b) | | | zip3 :: (Elt a, Elt b, Elt c) => Array a -> Array b -> Array c -> Array ((a :*: b) :*: c) | | | unzip :: (Elt a, Elt b) => Array (a :*: b) -> Array a :*: Array b | | | unzip3 :: (Elt a, Elt b, Elt c) => Array ((a :*: b) :*: c) -> (Array a :*: Array b) :*: Array c | | | fsts :: (Elt a, Elt b) => Array (a :*: b) -> Array a | | | snds :: (Elt a, Elt b) => Array (a :*: b) -> Array b | | | map :: (Elt a, Elt b) => (a -> b) -> Array a -> Array b | | | zipWith :: (Elt a, Elt b, Elt c) => (a -> b -> c) -> Array a -> Array b -> Array c | | | zipWith3 :: (Elt a, Elt b, Elt c, Elt d) => (a -> b -> c -> d) -> Array a -> Array b -> Array c -> Array d | | | filter :: Elt a => (a -> Bool) -> Array a -> Array a | | | fold :: Elt a => (a -> a -> a) -> a -> Array a -> a | | | fold1 :: Elt a => (a -> a -> a) -> Array a -> a | | | and :: Array Bool -> Bool | | | sum :: (Num a, Elt a) => Array a -> a | | | scan :: Elt a => (a -> a -> a) -> a -> Array a -> Array a | | | replicate_s :: Elt a => Segd -> Array a -> Array a | | | replicate_rs :: Elt a => Int -> Array a -> Array a | | | append_s :: Elt a => Segd -> Array a -> Segd -> Array a -> Array a | | | repeat_c :: Elt a => Int -> Array Int -> Segd -> Array a -> Array a | | | fold_s :: Elt a => (a -> a -> a) -> a -> Segd -> Array a -> Array a | | | fold1_s :: Elt a => (a -> a -> a) -> Segd -> Array a -> Array a | | | sum_s :: (Num a, Elt a) => Segd -> Array a -> Array a | | | indices_s :: Int -> Segd -> Int -> Array Int | | | sum_r :: (Num a, Elt a) => Int -> Int -> Array a -> Array a | | | lengthSegd :: Segd -> Int | | | lengthsSegd :: Segd -> Array Int | | | indicesSegd :: Segd -> Array Int | | | elementsSegd :: Segd -> Int | | | lengthsToSegd :: Array Int -> Segd | | | mkSegd :: Array Int -> Array Int -> Int -> Segd | | | selectorToIndices2 :: Array Int -> Array Int | | | pick :: (Elt a, Eq a) => Array a -> a -> Array Bool | | | count :: (Elt a, Eq a) => Array a -> a -> Int | | | randoms :: (Elt a, Random a, RandomGen g) => Int -> g -> Array a | | | randomRs :: (Elt a, Random a, RandomGen g) => Int -> (a, a) -> g -> Array a | | | class UIO a => IOElt a | | | hGet :: IOElt a => Handle -> IO (Array a) | | | hPut :: IOElt a => Handle -> Array a -> IO () | | | toList :: Elt a => Array a -> [a] | | | fromList :: Elt a => [a] -> Array a |
|
|
| Documentation |
|
| data a :*: b |
| Strict pair
| | Constructors | | Instances | | (Eq a, Eq b) => Eq (:*: a b) | | | (Ord a, Ord b) => Ord (:*: a b) | | | (Read a, Read b) => Read (:*: a b) | | | (Show a, Show b) => Show (:*: a b) | | | (HS a, HS b) => HS (:*: a b) | | | (UA a, UA b) => UA (:*: a b) | Array operations on the pair representation.
| | (UIO a, UIO b) => UIO (:*: a b) | | | (DT a, DT b) => DT (:*: a b) | | | (IOElt a, IOElt b) => IOElt (:*: a b) | | | (Elt a, Elt b) => Elt (:*: a b) | |
|
|
|
| class (UA a, DT a) => Elt a |
| Instances | |
|
|
| type Array = UArr |
|
| type Segd = USegd |
|
| length :: Elt a => Array a -> Int |
|
| empty :: Elt a => Array a |
|
| replicate :: Elt a => Int -> a -> Array a |
|
| repeat :: Elt a => Int -> Int -> Array a -> Array a |
|
| (+:+) :: Elt a => Array a -> Array a -> Array a |
|
| (!:) :: Elt a => Array a -> Int -> a |
|
| extract :: Elt a => Array a -> Int -> Int -> Array a |
|
| drop :: Elt a => Int -> Array a -> Array a |
|
| permute :: Elt a => Array a -> Array Int -> Array a |
|
| mbpermute :: (Elt a, Elt b) => (a -> b) -> Array a -> Array Int -> Array b |
|
| bpermute :: Elt a => Array a -> Array Int -> Array a |
|
| bpermuteDft :: Elt e => Int -> (Int -> e) -> Array (Int :*: e) -> Array e |
|
| update :: Elt a => Array a -> Array (Int :*: a) -> Array a |
|
| pack :: Elt a => Array a -> Array Bool -> Array a |
|
| combine :: Elt a => Array Bool -> Array a -> Array a -> Array a |
|
| enumFromTo :: Int -> Int -> Array Int |
|
| enumFromThenTo :: Int -> Int -> Int -> Array Int |
|
| enumFromToEach :: Int -> Array (Int :*: Int) -> Array Int |
|
| enumFromStepLen :: Int -> Int -> Int -> Array Int |
|
| enumFromStepLenEach :: Int -> Array ((Int :*: Int) :*: Int) -> Array Int |
|
| indexed :: Elt a => Array a -> Array (Int :*: a) |
|
| zip :: (Elt a, Elt b) => Array a -> Array b -> Array (a :*: b) |
|
| zip3 :: (Elt a, Elt b, Elt c) => Array a -> Array b -> Array c -> Array ((a :*: b) :*: c) |
|
| unzip :: (Elt a, Elt b) => Array (a :*: b) -> Array a :*: Array b |
|
| unzip3 :: (Elt a, Elt b, Elt c) => Array ((a :*: b) :*: c) -> (Array a :*: Array b) :*: Array c |
|
| fsts :: (Elt a, Elt b) => Array (a :*: b) -> Array a |
|
| snds :: (Elt a, Elt b) => Array (a :*: b) -> Array b |
|
| map :: (Elt a, Elt b) => (a -> b) -> Array a -> Array b |
|
| zipWith :: (Elt a, Elt b, Elt c) => (a -> b -> c) -> Array a -> Array b -> Array c |
|
| zipWith3 :: (Elt a, Elt b, Elt c, Elt d) => (a -> b -> c -> d) -> Array a -> Array b -> Array c -> Array d |
|
| filter :: Elt a => (a -> Bool) -> Array a -> Array a |
|
| fold :: Elt a => (a -> a -> a) -> a -> Array a -> a |
|
| fold1 :: Elt a => (a -> a -> a) -> Array a -> a |
|
| and :: Array Bool -> Bool |
|
| sum :: (Num a, Elt a) => Array a -> a |
|
| scan :: Elt a => (a -> a -> a) -> a -> Array a -> Array a |
|
| replicate_s :: Elt a => Segd -> Array a -> Array a |
|
| replicate_rs :: Elt a => Int -> Array a -> Array a |
|
| append_s |
| :: Elt a | | | => Segd | segment descriptor of first array
| | -> Array a | data of first array
| | -> Segd | segment descriptor of second array
| | -> Array a | data of first array
| | -> Array a | |
|
|
| repeat_c |
| :: Elt a | | | => Int | length of the result array
| | -> Array Int | number of time a segment is repeated
| | -> Segd | segment descriptor
| | -> Array a | data array
| | -> Array a | |
|
|
| fold_s :: Elt a => (a -> a -> a) -> a -> Segd -> Array a -> Array a |
|
| fold1_s :: Elt a => (a -> a -> a) -> Segd -> Array a -> Array a |
|
| sum_s :: (Num a, Elt a) => Segd -> Array a -> Array a |
|
| indices_s |
| :: Int | number of segments
| | -> Segd | segment descriptor
| | -> Int | overall number of indices
| | -> Array Int | |
|
|
| sum_r :: (Num a, Elt a) => Int -> Int -> Array a -> Array a |
|
| lengthSegd :: Segd -> Int |
|
| lengthsSegd :: Segd -> Array Int |
|
| indicesSegd :: Segd -> Array Int |
|
| elementsSegd :: Segd -> Int |
|
| lengthsToSegd :: Array Int -> Segd |
|
| mkSegd :: Array Int -> Array Int -> Int -> Segd |
|
| selectorToIndices2 :: Array Int -> Array Int |
|
| pick :: (Elt a, Eq a) => Array a -> a -> Array Bool |
|
| count :: (Elt a, Eq a) => Array a -> a -> Int |
|
| randoms :: (Elt a, Random a, RandomGen g) => Int -> g -> Array a |
|
| randomRs :: (Elt a, Random a, RandomGen g) => Int -> (a, a) -> g -> Array a |
|
| class UIO a => IOElt a |
| Instances | |
|
|
| hGet :: IOElt a => Handle -> IO (Array a) |
|
| hPut :: IOElt a => Handle -> Array a -> IO () |
|
| toList :: Elt a => Array a -> [a] |
|
| fromList :: Elt a => [a] -> Array a |
|
| Produced by Haddock version 2.7.2 |