Source/Packages

Runtime.NativeDataParallelOwned

packages/execution/src/Runtime/NativeDataParallelOwned.alpha

2,874 lines126 declarations142.2 KiBSHA-256 de18258423c4

def · lines 698–715

dpoGradientIndex

Full file
1 + r for a transfer of owner r's reduction, 0 for any other.
698def dpoGradientIndex =
699  (lambda unrestricted layout : (family NativeDataParallelOwnedLayout) .
700    (lambda unrestricted identity : (family RegionTransferIdentity) .
701      (let unrestricted composition =
702        (dpoCompositionOf identity)
703        in
704        (stdListFold
705          Nat
706          Nat
707          (lambda unrestricted owner : Nat .
708            (lambda unrestricted rest : Nat .
709              (naturalSelect
710                (bytes-equal composition (dpoGradientComposition owner))
711                (succ owner)
712                rest)))
713          0
714          (stdListNaturalsBelow
715            (stdListLength (family NativeCombinePlacement) (dpoGradients layout)))))))

The compiler supplied declaration spans and resolved links from this source snapshot. This page does not assert that this file belongs to a checked closure.