Architecture
Computation, differentiation, graph optimization, and network components remain decoupled through one-way dependencies.
P10
The pure tensor engine for Tensor, TensorImpl, memory, operators, dispatch, and hardware backends. It contains no autograd logic.
TPX
The explicit autograd layer. It wraps P10 tensors, records dynamic graphs on demand, schedules GradFn, and returns numerical work to P10.
Stax
The static graph and JIT layer for capturing P10 operations and experimenting with fusion, memory optimization, and deployment acceleration.
NN
The high-level network layer for Linear, Conv, losses, optimizers, and extensible Module components, while keeping the path below inspectable.
Why separate the layers
- Each library can be developed, built, tested, and upgraded independently.
- New hardware primarily changes P10. New differentiation modes primarily change TPX.
- Pure compute tasks do not pay for autograd or static graph machinery.
- Clear boundaries make the system more useful for education and research.
