Metadata-Version: 2.4
Name: opmodel
Version: 0.3.1.dev5
Summary: YAML-driven operator pipeline simulator for custom accelerators
Requires-Python: <3.15,>=3.11
Description-Content-Type: text/markdown
Requires-Dist: simpy==4.1.2
Requires-Dist: PyYAML==6.0.3
Requires-Dist: numpy<3,>=2.2.6
Provides-Extra: dev
Requires-Dist: pytest; extra == "dev"

# opmodel 独立安装发行版

本开发版的目标为 Linux x86_64、glibc >=2.39、标准 CPython 3.11–3.14，
保留建模、仿真、报告、校验与寻优入口。每个 Python/架构需要对应的 wheel。
内核、模型执行和优化实现为二进制扩展。模型、硬件配置和用户 hooks 可编辑。
不需要 opmodel 源码仓；不要求 NPU 即可运行软件仿真。

在包含 wheel、SHA256SUMS 的目录执行：

```bash
sha256sum -c SHA256SUMS
python3 -m venv .venv
.venv/bin/python -m pip install ./opmodel-*.whl
.venv/bin/opmodel-assets list
.venv/bin/opmodel-assets export --output ./models
export OPMODEL_WORKSPACE="$PWD/work"
mkdir -p "$OPMODEL_WORKSPACE"
```

输出目录与导出目录应独立于安装目录。依赖为 SimPy 4.1.2、PyYAML 6.0.3、
NumPy >=2.2.6,<3；pip 根据 Python 版本选择兼容依赖。离线安装须准备适合
目标 Python/平台的依赖 wheels，然后使用
`pip install --no-index --find-links ./wheelhouse ./opmodel-*.whl`。
平台标签为 manylinux_2_39，要求同架构且 glibc >=2.39；不支持 ARM、musl、Windows、
macOS、PyPy 和自由线程 CPython。未来 Python 版本需要新增并验收对应 wheel。

外部模型目录可直接传入 `opmodel` 或 `accel_model.app.case.native_case.run_native_case`。
物理模型的 definition/ 包含 operator.yaml、dag.yaml、split.yaml 和完整成本定义；
自定义 Python 模型与 hooks 使用用户自己的工作目录，无需写入 site-packages。

```bash
.venv/bin/opmodel models/operators/dag/matmul
.venv/bin/python -m accel_model.app.cli.dag_run --help
.venv/bin/python -m accel_model.app.cli.split_run --help
.venv/bin/python -m accel_model.app.cli.graph_search --help
.venv/bin/python -m accel_model.app.cli.agent_search --help
```

物理模型、SimPy/Replay、语义/数值校验及搜索配置须符合本发行版的接口契约；
接口可用不代表任意模型和参数组合都受支持。设备测量、外部独立 L2 校验库等
仍需相应外部依赖。合成用例只验证软件链路，不代表设备预测精度。

升级时应使用本发行版的版本和 SHA256重新验证安装环境。
