Safe Haskell | Safe-Infered |
---|
Parallel selectors.
- data UPSel2
- type UPSelRep2 = Dist ((Int, Int), (Int, Int))
- tagsUPSel2 :: UPSel2 -> Vector Tag
- indicesUPSel2 :: UPSel2 -> Vector Int
- elementsUPSel2_0 :: UPSel2 -> Int
- elementsUPSel2_1 :: UPSel2 -> Int
- selUPSel2 :: UPSel2 -> USel2
- repUPSel2 :: UPSel2 -> UPSelRep2
- mkUPSel2 :: Vector Tag -> Vector Int -> Int -> Int -> UPSelRep2 -> UPSel2
- mkUPSelRep2 :: Vector Tag -> UPSelRep2
- indicesUPSelRep2 :: Vector Tag -> UPSelRep2 -> Vector Int
- elementsUPSelRep2_0 :: Vector Tag -> UPSelRep2 -> Int
- elementsUPSelRep2_1 :: Vector Tag -> UPSelRep2 -> Int
Types
Contains a selector USel2
, as well as an USelRep2
which says how
to distribute this selector across the PEs.
See dph-prim-seq:Data.Array.Parallel.Unlifted.Sequential.Segmented.USel
for more discussion of what selectors are for.
Operations
tagsUPSel2 :: UPSel2 -> Vector TagSource
O(1). Get the tags of a selector.
indicesUPSel2 :: UPSel2 -> Vector IntSource
O(1). Get the indices of a selector.
elementsUPSel2_0 :: UPSel2 -> IntSource
O(1). Get the number of elements that will be taken from the first array.
elementsUPSel2_1 :: UPSel2 -> IntSource
O(1). Get the number of elements that will be taken from the second array.
mkUPSel2 :: Vector Tag -> Vector Int -> Int -> Int -> UPSelRep2 -> UPSel2Source
O(1). Construct a selector. Wrapper for UPSel2
.
mkUPSelRep2 :: Vector Tag -> UPSelRep2Source