Ieee754Kernel
Ieee754Kernel<
TSig> =object
Defined in: packages/math-numbers/src/ieee754/binary/kernels/types.ts:63
The arithmetic behind ieeeBinaryMul/Div/Axpy/Axpby, as a swappable
implementation.
Only operations expensive enough per element that a native kernel is expected
to win despite the crossing cost belong here. add/sub/neg/abs/cmp/
sqrt have exactly one implementation each (ieee-binary-add.ts and
siblings) and are never installed or swapped.
A kernel is installed synchronously, so arithmetic never awaits — an await
in front of a.mul(b) would put an I/O shape on a pure computation.
Operands are accepted in either significand representation (a value produced
by the other kernel is converted at the boundary, not rejected — see
finiteToBigInt/finiteToLimbs); TSig names only the representation
this kernel produces, so results never carry an unnecessary conversion back
to a shared canonical form.
Type Parameters
Section titled “Type Parameters”TSig extends bigint | Uint32Array = bigint | Uint32Array
Properties
Section titled “Properties”axpby:
Ieee754AxpbyFunction<TSig>
Defined in: packages/math-numbers/src/ieee754/binary/kernels/types.ts:69
axpy:
Ieee754AxpyFunction<TSig>
Defined in: packages/math-numbers/src/ieee754/binary/kernels/types.ts:68
batch?
Section titled “batch?”
readonlyoptionalbatch?:Ieee754BatchKernel
Defined in: packages/math-numbers/src/ieee754/binary/kernels/types.ts:75
Batched entry points, one native crossing for count elements instead of
one per element. Absent on a kernel with no crossing to amortise.
div:
Ieee754BinaryFunction<TSig>
Defined in: packages/math-numbers/src/ieee754/binary/kernels/types.ts:67
mul:
Ieee754BinaryFunction<TSig>
Defined in: packages/math-numbers/src/ieee754/binary/kernels/types.ts:66