simpler Documentation
Index of every document under docs/, grouped by what you are trying to do.
The top-level README links only the handful of entry-point docs;
this page is the complete map.
These pages are also published as a searchable site at
https://hw-native-sys.github.io/simpler/, which adds a generated API reference
for simpler.worker, simpler.task_interface and simpler.orchestrator. The
site is built by .github/workflows/docs.yml; mkdocs.yml owns its navigation,
so a new page needs a nav entry there as well as a row here.
New docs belong in one of the groups below, and in a subdirectory when the group
already has one (dfx/, hardware/, troubleshooting/, investigations/).
Add the row here in the same commit — an unlisted doc is invisible.
File names are kebab-case (chip-level-arch.md), including when the doc is
named after a code identifier that uses underscores.
Start here
Two audiences use this tree. If you are building on simpler — writing
kernels and orchestration, running and measuring them — start at
user/, which routes you through install → first run →
write a kernel → profile → debug. Everything else here is written for people
changing simpler's own internals.
| Document |
What it covers |
| Using simpler |
The user-facing entry point: how-to guides and the Python / CLI reference |
| Getting Started |
Prerequisites, PTO-ISA setup, first example run |
| Installation and Runtime Environment |
Install layout and the runtime environment variables |
| Developer Guide |
Directory structure, role ownership, when to rebuild |
| Capability Survey |
Status snapshot — what is shipped, gated, or design-only across topology, launch, and communication. Read this before assuming a mechanism works |
Architecture
| Document |
What it covers |
| Chip-Level Architecture (L2) |
Three-program model (host / AICPU / AICore), API layers, handshake |
| Hierarchical Level Runtime |
The L0–L6 level model and component composition |
| Task Flow |
Callable / TaskArgs / CallConfig pass-through, IWorker |
| Orchestrator |
DAG submission: TensorMap, Scope, Ring, task state machine |
| Scheduler |
DAG dispatch: wiring / ready / completion queues, dispatch loop |
| Worker Manager |
Worker pool, THREAD/PROCESS modes, fork + mailbox mechanics |
| hardware/ |
Hardware substrate: chip architecture, cache coherency, MMIO performance, CANN source references |
Kernels and task authoring
Launch, linking, and callable registration
Multi-chip, multi-host, and communication
Profiling, logging, and DFX
| Document |
What it covers |
| dfx/ |
Every profiling and diagnostics reference, indexed: framework and naming rules, L2/L0 swimlanes, PMU, host trace, device phases, scheduler-overhead model, args dump, dep_gen, scope stats, backpressure, buffer-capacity audit |
| Log System |
Log levels, sinks, and the host/device logging split |
Building, testing, and packaging
When something is broken
| Document |
What it covers |
| troubleshooting/ |
Device error codes, local timeout defaults, AICPU shared-SO faults, sim oversubscription hangs, macOS build issues, cpput ABI issues |
| investigations/ |
Considered-and-dropped proposals and measured dead ends. Check here before proposing an optimization or refactor |