{
  "$schema": "https://ambiqai.github.io/helia-ui/schema/reference-model-1.json",
  "generatedFrom": {
    "sourceCommit": "aee921f9f6ddb72ad858bd66859e225a41d53074",
    "tool": "pyref",
    "version": "1.7.3"
  },
  "language": "python",
  "modules": [
    {
      "description": "",
      "name": "TensorAttributes",
      "path": "helia_aot.memory.defines.TensorAttributes",
      "submodules": [],
      "summary": "",
      "symbols": [
        {
          "description": "This class provides the baseline set of tensor attribute rules.",
          "examples": [],
          "id": "helia_aot.memory.defines.TensorAttributes",
          "kind": "class",
          "language": "python",
          "members": [
            {
              "description": "Memory placement for tensors. For\nconstants this is the **source** (cold-storage) memory\nwhere the tensor's bytes live in the image. When\n``constant_destination_memory`` is set and differs from\n``memory``, the runtime arena lives in that destination\nmemory and a hydration copy is required; otherwise the\narena lives in ``memory`` itself and is read-only (cold).\nWhen ``None`` (default), no rule pins the tensor and the\nplanner chooses the memory, as it does for a tensor no rule\nmatches; for a staged constant it chooses the source memory.",
              "examples": [],
              "id": "helia_aot.memory.defines.TensorAttributes.memory",
              "kind": "attribute",
              "language": "python",
              "members": [],
              "name": "memory",
              "params": [],
              "raises": [],
              "returns": [],
              "signature": "memory: MemoryType | None = Field(default=None, description='Memory placement for tensors; None lets the planner choose')",
              "source": {
                "line": 522,
                "path": "helia_aot/memory/defines.py",
                "url": "https://github.com/AmbiqAI/helia-aot/blob/aee921f9f6ddb72ad858bd66859e225a41d53074/helia_aot/memory/defines.py#L522"
              },
              "summary": ""
            },
            {
              "description": "Override the\nruntime (kernel-visible) memory for a constant. Required\nonly when the runtime memory must differ from the source\nmemory (e.g. weights stored in MRAM but read from\nDTCM/SRAM at runtime). When ``None`` (default), the\nruntime memory equals ``memory`` and no hydration step\nis needed. Must reference a writable memory of the\ntarget platform when set.",
              "examples": [],
              "id": "helia_aot.memory.defines.TensorAttributes.constant_destination_memory",
              "kind": "attribute",
              "language": "python",
              "members": [],
              "name": "constant_destination_memory",
              "params": [],
              "raises": [],
              "returns": [],
              "signature": "constant_destination_memory: MemoryType | None = Field(default=None, description='Per-tensor runtime destination memory for constants. When None (default) the constant is read in place from its source memory; when set the constant is hydrated into a writable arena slot in the destination memory.')",
              "source": {
                "line": 525,
                "path": "helia_aot/memory/defines.py",
                "url": "https://github.com/AmbiqAI/helia-aot/blob/aee921f9f6ddb72ad858bd66859e225a41d53074/helia_aot/memory/defines.py#L525"
              },
              "summary": ""
            },
            {
              "description": "How a constant reaches the operators\nthat read it: ``direct`` (read in place), ``pin`` (copied once\nat init into ``constant_destination_memory``, which it requires)\nor ``stream`` (permits streaming: copied into the stream pool\nbefore its first reader when the plan's schedule names it,\notherwise ``direct``). Setting ``constant_destination_memory``\nimplies ``pin`` at the same rule's precedence; one rule cannot\npair it with ``direct`` or ``stream``. Applies to constants only.",
              "examples": [],
              "id": "helia_aot.memory.defines.TensorAttributes.residency",
              "kind": "attribute",
              "language": "python",
              "members": [],
              "name": "residency",
              "params": [],
              "raises": [],
              "returns": [],
              "signature": "residency: Residency | None = Field(default=None, description=\"How a constant reaches its readers: direct (read in place), pin (copied once at init into constant_destination_memory) or stream (permits streaming: copied into the stream pool before its first reader when the plan's schedule names it, otherwise direct). constant_destination_memory implies pin.\")",
              "source": {
                "line": 534,
                "path": "helia_aot/memory/defines.py",
                "url": "https://github.com/AmbiqAI/helia-aot/blob/aee921f9f6ddb72ad858bd66859e225a41d53074/helia_aot/memory/defines.py#L534"
              },
              "summary": ""
            }
          ],
          "name": "TensorAttributes",
          "params": [],
          "raises": [],
          "returns": [],
          "signature": "TensorAttributes()",
          "source": {
            "line": 488,
            "path": "helia_aot/memory/defines.py",
            "url": "https://github.com/AmbiqAI/helia-aot/blob/aee921f9f6ddb72ad858bd66859e225a41d53074/helia_aot/memory/defines.py#L488"
          },
          "summary": "This class provides the baseline set of tensor attribute rules."
        }
      ]
    }
  ],
  "name": "helia_aot"
}
