yscv-tensor 0.1.1

SIMD-accelerated tensor library with f32/f16/bf16 support and 80+ operations
Documentation

Tensor types and numeric primitives for the yscv framework.

Tensor type

[Tensor] is the core n-dimensional array. It stores contiguous, 64-byte aligned f32 data and carries its own shape and strides. FP16 and BF16 storage is supported via [DType] and the conversion helpers [Tensor::to_dtype], [Tensor::from_f16], and [Tensor::from_bf16].

Supported dtypes

Variant Backing store Notes
F32 AlignedVec<f32> Default, SIMD-accelerated ops
F16 AlignedVec<u16> IEEE 754 half-precision bit patterns
BF16 AlignedVec<u16> Brain floating-point bit patterns

Arithmetic operations require F32. Convert with [Tensor::to_dtype] before performing math on F16/BF16 tensors.

Broadcasting

Binary operations (add, sub, mul, div, pow, etc.) follow NumPy-style broadcasting rules:

  1. Shapes are right-aligned. Missing leading dimensions are treated as 1.
  2. Dimensions of size 1 are stretched to match the other operand.
  3. If dimensions differ and neither is 1, the operation returns [TensorError::BroadcastIncompatible].

Example: [3, 1, 5] + [4, 5] broadcasts to [3, 4, 5].