Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

SG2002 ACT on StarryOS

本仓库对应赛题 Proj57 任务一(SG2002 + TPU),提供在 SG2002(Milk-V Duo S) 上运行 ACT TPU 推理所需的补丁、用户态程序、部署模型与评测记录。

不包含:完整 StarryOS 内核源码、交叉工具链、WiFi 驱动、VPSS 实验线、量化 sweep 中间产物。

目录结构

sg2002-act-starryos/
├── README.md
├── patches/                         # 内核有效补丁(DMA / memstat / TPU / ION)
│   ├── README.md
│   ├── axplat-riscv64-sg2002/       # 64 MB ION carveout 等平台配置
│   └── starryos-sg2002-dev/         # 覆盖到上游内核的修改文件
├── scripts/build_kernel.sh          # 构建已打补丁的上游内核
├── deploy/cpp_cvi_sg2002/           # ACT CVI 推理程序(仅标准 act_cvi_infer)
├── config/act_params.json
├── data/
│   ├── eval_manifest.csv
│   └── videos/...                   # 666 帧评测图像(LFS)
├── bin/sg2002/act_cvi_infer         # 预编译推理二进制
├── artifacts/sg2002_cvimodel/       # 唯一部署模型(decoder_last_linear2_bf16)
└── docs/evaluation/                 # Proj57 任务一评测报告与日志

dist/sg2002-act-min/package_sg2002.sh 本地生成,不纳入 Git。

内核补丁范围

模块 路径 说明
SDMMC DMA patches/.../sg200x-bsp/src/sdmmc/ SDHCI ADMA2 修复
块设备策略 patches/.../arceos/modules/axdriver/src/drivers.rs ADMA2 探针
内存统计 patches/.../core/src/task/memstat.rs VmHWM
procfs patches/.../api/src/vfs/proc.rs /proc 内存字段
TPU / ION patches/.../api/src/vfs/dev/tpu/, ion/ NPU 与 DMA buffer
ION carveout patches/axplat-riscv64-sg2002/axconfig.toml 64 MB 预留

快速开始

1. 准备上游内核并打补丁

patches/README.md

2. 构建推理程序

export TPU_SDK_ROOT=/path/to/tpu-sdk-sg200x
export SG2002_TOOLCHAIN_PREFIX=/path/to/riscv64-unknown-linux-musl-

deploy/cpp_cvi_sg2002/build_sg2002.sh
deploy/cpp_cvi_sg2002/package_sg2002.sh

3. 板端运行

cd dist/sg2002-act-min
./run_sg2002.sh eval

推荐部署模型(唯一副本)

属性
策略 decoder_last_linear2_bf16
路径 artifacts/sg2002_cvimodel/act_sg2002_decoder_last_linear2_bf16.cvimodel
大小 50 MB
真机 VmHWM ~54 MB
均摊 wall-clock ~111 ms(666 帧)

评测报告

文档 说明
docs/evaluation/Proj57任务一.md 任务一 中期汇报
docs/evaluation/Proj57任务一.docx Word 版
docs/evaluation/OPEN_LOOP_SG2002_vs_QEMU_REPORT.md 与 QEMU 路线对比

任务三(QEMU + CPU)见姊妹仓库:Maxye112/act-starryos-qemu-infer

外部依赖(不在本仓库)

  • 上游 StarryOS SG2002 内核源码
  • Milk-V / Xuantie 交叉工具链(riscv64-linux-musl-x86_64
  • CVITEK tpu-sdk-sg200x
  • act_finetuned_fp32.onnx 与 TPU-MLIR 环境(仅重导出模型时需要)

详细说明见 docs/BUILD.mddocs/DMA.md

About

Proj57 任务一:ACT on StarryOS / SG2002 TPU inference

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages