Delegate TakeAlongAxisKernel
IL-emitted per-element gather kernel for np.take_along_axis. Walks the
C-contiguous result with an incremental strided odometer, reading one int64
index and gathering one elemBytes-wide element of the source per step.
public delegate long TakeAlongAxisKernel(byte* arrBase, long* arrStrides, long axisStrideBytes, long axisLen, long* idxBase, long* idxStrides, byte* dstBase, long* shape, long ndim, long totalSize, long* outBadIdx)
Parameters
arrBasebyte*- IL-emitted per-element gather kernel for np.take_along_axis. Walks the C-contiguous result with an incremental strided odometer, reading one int64 index and gathering one elemBytes-wide element of the source per step.
arrStrideslong*- IL-emitted per-element gather kernel for np.take_along_axis. Walks the C-contiguous result with an incremental strided odometer, reading one int64 index and gathering one elemBytes-wide element of the source per step.
axisStrideByteslong- IL-emitted per-element gather kernel for np.take_along_axis. Walks the C-contiguous result with an incremental strided odometer, reading one int64 index and gathering one elemBytes-wide element of the source per step.
axisLenlong- IL-emitted per-element gather kernel for np.take_along_axis. Walks the C-contiguous result with an incremental strided odometer, reading one int64 index and gathering one elemBytes-wide element of the source per step.
idxBaselong*- IL-emitted per-element gather kernel for np.take_along_axis. Walks the C-contiguous result with an incremental strided odometer, reading one int64 index and gathering one elemBytes-wide element of the source per step.
idxStrideslong*- IL-emitted per-element gather kernel for np.take_along_axis. Walks the C-contiguous result with an incremental strided odometer, reading one int64 index and gathering one elemBytes-wide element of the source per step.
dstBasebyte*- IL-emitted per-element gather kernel for np.take_along_axis. Walks the C-contiguous result with an incremental strided odometer, reading one int64 index and gathering one elemBytes-wide element of the source per step.
shapelong*- IL-emitted per-element gather kernel for np.take_along_axis. Walks the C-contiguous result with an incremental strided odometer, reading one int64 index and gathering one elemBytes-wide element of the source per step.
ndimlong- IL-emitted per-element gather kernel for np.take_along_axis. Walks the C-contiguous result with an incremental strided odometer, reading one int64 index and gathering one elemBytes-wide element of the source per step.
totalSizelong- IL-emitted per-element gather kernel for np.take_along_axis. Walks the C-contiguous result with an incremental strided odometer, reading one int64 index and gathering one elemBytes-wide element of the source per step.
outBadIdxlong*- IL-emitted per-element gather kernel for np.take_along_axis. Walks the C-contiguous result with an incremental strided odometer, reading one int64 index and gathering one elemBytes-wide element of the source per step.
Returns
- long
totalSizeon success. On RAISE out-of-bounds the returned value is the flat position of the first failing element and*outBadIdxholds its original (pre-wrap) index value for the caller's diagnostic.