PTO ISA Guide¶
This directory documents the PTO ISA (Instruction Set Architecture) used by PTO Tile Lib. It explains instruction naming, common notation, and how to navigate the per-instruction reference pages.
Naming and Notation¶
- Tile: Fundamental data type for small tensors (e.g.,
MatTile,LeftTile,RightTile,BiasTile,AccumulationTile,VecTile). - GlobalTensor: A tensor stored in global memory (GM).
TLOAD/TSTOREmove data between GM and Tiles. %R: A scalar immediate register. Fields likecmpModeandrmodeare instruction modifiers.- Shape and alignment: Enforced by a combination of compile-time constraints and runtime assertions; invalid usage should fail fast.
Where to Start¶
- Virtual ISA manual entry
- ISA overview
- Instruction index
- PTO AS index
- Common conventions
- PTO assembly syntax reference (PTO-AS)
- Virtual ISA / AS guide
- Bytecode / toolchain guide
- Memory ordering / consistency guide
- Backend profiles / conformance guide
- Programming model (Tiles/GlobalTensor/Events/Scalars)
- PTO ISA programming tutorial (C++ intrinsics)
- Abstract machine model (core/device/host)
- Getting started (recommended: run on CPU first)
- Doc tooling (manifest/index/svg/consistency)
- Implementation and extension notes
- Kernel examples (NPU-focused)
Documentation Layout¶
docs/isa/: Instruction reference (one file per instruction, plus category pages)docs/assembly/: PTO assembly grammar and specification (PTO-AS)docs/coding/: Developer notes for extending PTO Tile Lib