← 完整学习路线

UNIT 67 / 78 · W10-5

用独立 oracle 分清模型、simulator 与设备

本单元预计 6 核心小时。可以分成多个学习时段,按完整小节推进;停下来时留下输入、命令、结果和下一步。

时间包含阅读、编码与检查,是学习预算而非期限。打开此页只保存阅读位置,不代表通过验收。

01 / READ

先知道自己在观察什么

功能模型、simulator 与硬件:分别证明什么 →

先写三种证据层级,再读独立oracle、穷举、变形测试与重复调用状态。

功能模型、simulator 与硬件:分别证明什么 →

查公开debug和simprint教程分别输出什么、在哪里可用;不把日志时间当硬件性能。

先备不清楚时,沿章节入口补读;不要依赖翻过页数判断进度。

02 / PREDICT & RUN

先留下自己的预测或独立尝试

先计算长度0到4、每项3种取值共有121项,再运行检查零mismatch。

121个小输入交叉验证 →
源码下载与编译入口

下载到自己的练习目录。按本节给出的完整命令编译;多文件与driver要求见原任务。需要时查阅文件保存与编译操作 →

44-a.cpp

先保存预测,再核对正文标明的预期或诊断。完整构建、多文件与设备实验按原任务命令执行。

03 / CHANGE ONE THING

通过一个变动看清原因

在副本把枚举最大长度改为3,保留独立顺序oracle与分组candidate,更新案例数量检查。

修改后应观察到什么

总案例数1+3+9+27=40,mismatch仍为0。

04 / DO IT YOURSELF

换一组条件,独立解决

给本人Reduction Lab追加两条合法整数性质:追加零结果不变、复制输入结果翻倍;再定义将来设备版的连续两次调用与残留状态检查表。

用这些条件检查自己的实现

  • 性质仅用于不越过长度和值域合同的输入;每次仍检查完整结果。
  • 证据表分别记录CPU已执行、公开API已读、SDK未执行、设备未执行,不能合并成功率。
05 / EXPLAIN & CHECK

用证据决定是否进入下一单元

  1. oracle共用同一错误分区函数会导致什么假通过?
  2. 一次通过为何不能排除第二次调用的旧状态残留?

本单元的验收依据

可复现CPU测试与证据分层表完成;三家公司均回到同一主项目的问题与验证方法,不生成设备mastery。

留下自己的代码或推演、测试输入、真实输出和仍不确定的问题。未达到要求时,下一次继续本单元。