← 完整学习路线

UNIT 65 / 78 · W10-3

先分配 PE 的数据,再读 CSL host 生命周期

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

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

01 / READ

先知道自己在观察什么

WSE 与 PE:把数据放在拥有它的计算节点旁边 →

画三个局部所有者与局部存储预算,区分本地访问和跨PE消息。

CSL 与 host:装载、启动、回读是一份共同合同 →

分别列出layout、PE代码、host三份职责,跟踪符号、load/run、launch、回读与stop。

CSL 与 host:装载、启动、回读是一份共同合同 →

读公开CSL完整程序教程;定位导出、传输和host继续执行协议,记录release,不读取私有SDK项目。

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

本单元另列的补授

以下时间加在原单元预算之外;完成对应读法后再进入依赖它的任务。

02 / PREDICT & RUN

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

手算输入3、输出2、暂存2共需7,容量6不够,再运行逻辑预算检查。

不能只算输入的容量预算 →
源码下载与编译入口

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

41-b.cpp

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

03 / CHANGE ONE THING

通过一个变动看清原因

在副本把容量从6提高到7,手算required仍7,再把require中的!fits改成fits;另外保留容量6时required>capacity的拒绝反例。所有需求项保持,不能删除暂存掩盖超额。

修改后应观察到什么

required=7、capacity=7、fits=true;这只是教学单位容量。

04 / DO IT YOURSELF

换一组条件,独立解决

为一个导出result数组的公开CSL示例写host核对表:名称、dtype、每PE元素数、PE区域、回读排列与完成信号;另用CPU符号表拒绝missing。

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

  • 容量同时包含输入、输出和临时数据;合法与超限预算分开。
  • 找到符号不等于类型和区域正确;CPU符号表通过不声称CSL编译或simulator运行。
05 / EXPLAIN & CHECK

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

  1. CSL为何不能直接当作Zig程序编译?
  2. 数值已经计算完为什么host仍可能无法继续回读?

本单元的验收依据

三份代码责任图与预算表完整,公开阅读有版本落点;没有导入任何私有SDK结果。

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