UNIT 76 / 78 · W12-3
让性能结论经得住追问
本单元预计 4 核心小时。可以分成多个学习时段,按完整小节推进;停下来时留下输入、命令、结果和下一步。
时间包含阅读、编码与检查,是学习预算而非期限。打开此页只保存阅读位置,不代表通过验收。
先知道自己在观察什么
可信测量、原始样本与性能模型 →
用原始样本重新计算统计并检查计时范围是否一致。
Reduction、scan 与数值正确性 →
复盘整数界、浮点误差与非有限值,防止验证器假通过。
先备不清楚时,沿章节入口补读;不要依赖翻过页数判断进度。
先留下自己的预测或独立尝试
先解释相消为何导致serial=1、regrouped=0,再运行已有极值与非有限值拒绝检查。
相消与非有限值拒绝 →源码下载与编译入口
下载到自己的练习目录。按本节给出的完整命令编译;多文件与driver要求见原任务。需要时查阅文件保存与编译操作 →
28-b.cpp先保存预测,再核对正文标明的预期或诊断。完整构建、多文件与设备实验按原任务命令执行。
通过一个变动看清原因
在副本增加精确相等的有限输入与明确不同的普通有限输入,两组均使用清楚的atol/rtol;不得删除原极值回归。
修改后应观察到什么
相等值接受,超出所给容差的有限差异拒绝;NaN/Inf策略仍保持。
换一组条件,独立解决
用本人的CPU原始CSV写一段性能结论,只比较相同输入、构建与计时范围;列一个反对自己结论的可能解释和下一步实验。
用这些条件检查自己的实现
- 报告实际中位数/样本范围和线程创建是否计时,不发明加速倍数。
- 整数oracle与浮点教学实验分开;任何非有限假通过都阻止发布该结论。
用证据决定是否进入下一单元
- 平均值为何可能被一个离群点严重影响?
- 数值验证通过能否证明benchmark测到的是目标工作?
本单元的验收依据
读者可从原始样本复算结论,限制与反证实验明确;测不到稳定提升也是有效结果。
留下自己的代码或推演、测试输入、真实输出和仍不确定的问题。未达到要求时,下一次继续本单元。