Skip to content

芯门尽启,双架同舟贯九十一径 - #8

Merged
eric8810 merged 9 commits into
mainfrom
codex/apple-device-acceleration
Jul 16, 2026
Merged

eric8810 merged 9 commits into
mainfrom
codex/apple-device-acceleration

Conversation

@eric8810

@eric8810 eric8810 commented Jul 15, 2026

Copy link
Copy Markdown
Contributor

概要

  • 落地 Direct Core ML Objective-C++ 后端:FP16 detector range model、91-function recognizer、Apple Silicon ANE/GPU 混合路由与 strict GPU
  • 将生产设备策略改为 devicePolicy: open-macos:macOS 15+ 的 arm64 与 x86_64 均可显式请求 Apple provider,不再以设备证据列表作为运行白名单
  • 保留 Apple M4 为当前唯一已审阅性能证据,通过 C++/Node 的 deviceValidated 区分正式实证与其他 Mac 的实验兼容
  • Intel Mac 使用 Core ML CPUAndGPU,不宣称 ANE;仅接受 cpuPartition: allow,strict GPU-only 模式保持 Apple-Silicon-only
  • 接通 schema 1.1 Apple bundle、确定性缓存、整 session CPU fallback、资格工具、npm 0.2.1 六包发布契约和完整执行诊断

支持与证据边界

  • Apple Silicon:M1–M3、M4 与后续 arm64 Mac 均开放同一 Core ML 路径;当前只有 M4 具备项目正式质量、placement 与性能证据
  • Intel Mac:x86_64 bridge 与集成测试源码已交叉编译通过,运行时以 CPU+GPU 实验路径开放;尚无 Intel 真机数据,因此报告 deviceValidated=false,不承诺加速倍数
  • CPU 仍是默认 provider;Apple 必须显式请求。sessionFallback: cpu 继续提供稳定的整 session 回退
  • validated-only 仅保留给受控部署与回退测试;npm 生产 bundle 固定使用 open-macos

CI 资源策略

  • GitHub Actions 只保留普通跨平台编译、契约和轻量测试
  • 不在 CI 运行 Core ML 模型转换、91-function placement、真机质量、性能、缓存或生命周期验收
  • 不使用付费 runner 或额外真机资源;需要真实设备证据时在本机或社区设备上运行

M4 Max 本机真机验收

  • 91/91 Core ML recognition functions placement 与 tensor parity 通过
  • 14 fixtures:字符相似度 99.6484%,detection recall 100%,平均 IoU 99.5508%,critical failure 0
  • hello / xfund:P50 加速 2.300× / 2.851×,CPU time 降低 95.91% / 97.67%
  • 三次 cold start:7.219 s / 1.275 s / 1.278 s;warm peak RSS 692.14 MiB;bundle 增量 25.42 MiB
  • 4 进程空缓存竞争通过;同一 engine 100 页生命周期 RSS 增长 -27.47 MiB
  • accepted baseline:5ac8e117…2788Apple M4 是 evidence,不是运行 allow-list

本次回归验证

  • Release native CTest:7/7
  • Node CTest:1/1
  • Python:29/29
  • M4 open bundle 实跑:Core ML ANE/GPU、deviceValidated=true、无 session fallback
  • Intel x86_64:Core ML bridge 与 Apple integration 源码交叉编译通过
  • 测试专用 validated-only:排除 M4 后稳定回退 ONNX Runtime CPU,canary 保持 HELLO 123
  • bundle production contract:open-macosarchitectures: [arm64, x86_64]validatedDeviceFamilies: [Apple M4]
  • git diff --check 通过

Refs #4

eric8810 added 2 commits July 15, 2026 17:19
建立 provider-neutral InferenceSession,并为检测与识别 session 分别记录 provider、模型哈希、精度、shape、runtime、cache 与 fallback。

保持 CPU/FP32 默认行为和旧 executionProvider 字段不变;未资格审查的加速器与无效策略组合稳定失败。

Refs #4
@eric8810 eric8810 changed the title 星桥初架,双路推理各明归程 芯河贯夜,苹果双途照彻九十一径 Jul 15, 2026
eric8810 added 4 commits July 15, 2026 22:23
移除依赖 GitHub 托管加速器的重型资格工作流,将 placement、质量、性能、缓存和生命周期 Gate 固化为本机真实 Apple Silicon 流程。\n\n当前仅允许完整通过 Gate 的 Apple M4 加速,新增设备身份采集与未资格设备 CPU 回退证明,并同步更新资格合同、发布校验和文档。
接受由本机 M4 Max 真机报告生成的 Apple provider baseline,锁定模型、placement、质量、性能、缓存、生命周期与回退证据哈希。\n\n当前加速 allow-list 仅含 Apple M4;其他设备族保持可审计的 CPU fallback,新增设备族须重新完成本地真机资格流程。
@eric8810 eric8810 changed the title 芯河贯夜,苹果双途照彻九十一径 真机照芯,M4 双途贯通九十一径 Jul 15, 2026
eric8810 added 2 commits July 16, 2026 00:10
功能分支仅由 pull_request 触发,push 仅保留 main;同一 PR 的新提交会取消旧运行,避免重复消耗免费 runner。
将生产 Core ML 策略改为 open-macos,允许 macOS 15+ 的 arm64 与 x86_64 设备显式尝试加速。

保留 M4 为已验证性能证据,通过 deviceValidated 区分其余 Mac 的实验兼容状态;Intel 使用 CPU+GPU 路由。

同步更新 bundle schema、C++/Node 诊断、资格工具、测试与文档。

Refs #4
@eric8810 eric8810 changed the title 真机照芯,M4 双途贯通九十一径 芯门尽启,双架同舟贯九十一径 Jul 16, 2026
仅在 Core ML 构建中声明 Apple 设备准入状态,修复 Linux 等 CPU-only 平台的 Werror 未使用变量失败。
@eric8810
eric8810 merged commit 1ec59ce into main Jul 16, 2026
6 checks passed
birhantprkc pushed a commit to birhantprkc/light-ocr that referenced this pull request Jul 29, 2026
* feat(runtime): 星桥初架,双路推理各明归程

建立 provider-neutral InferenceSession,并为检测与识别 session 分别记录 provider、模型哈希、精度、shape、runtime、cache 与 fallback。

保持 CPU/FP32 默认行为和旧 executionProvider 字段不变;未资格审查的加速器与无效策略组合稳定失败。

Refs arcships#4

* feat(apple): 芯河贯夜,九十一径尽归双途

* ci(apple): 云舟初渡,双芯共验九十一径

* fix(build): 云外收锋,异域编译不闻虚警

* feat(apple): 云外息烽,真机独照芯途

移除依赖 GitHub 托管加速器的重型资格工作流,将 placement、质量、性能、缓存和生命周期 Gate 固化为本机真实 Apple Silicon 流程。\n\n当前仅允许完整通过 Gate 的 Apple M4 加速,新增设备身份采集与未资格设备 CPU 回退证明,并同步更新资格合同、发布校验和文档。

* chore(apple): 芯印既定,玉册独照四代

接受由本机 M4 Max 真机报告生成的 Apple provider baseline,锁定模型、placement、质量、性能、缓存、生命周期与回退证据哈希。\n\n当前加速 allow-list 仅含 Apple M4;其他设备族保持可审计的 CPU fallback,新增设备族须重新完成本地真机资格流程。

* ci(core): 云舟减棹,分支一检不重航

功能分支仅由 pull_request 触发,push 仅保留 main;同一 PR 的新提交会取消旧运行,避免重复消耗免费 runner。

* feat(apple): 芯门尽启,双架同舟渡

将生产 Core ML 策略改为 open-macos,允许 macOS 15+ 的 arm64 与 x86_64 设备显式尝试加速。

保留 M4 为已验证性能证据,通过 deviceValidated 区分其余 Mac 的实验兼容状态;Intel 使用 CPU+GPU 路由。

同步更新 bundle schema、C++/Node 诊断、资格工具、测试与文档。

Refs arcships#4

* fix(build): 无芯之境,收却虚旗

仅在 Core ML 构建中声明 Apple 设备准入状态,修复 Linux 等 CPU-only 平台的 Werror 未使用变量失败。
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant