算子开发的时间大头通常不在写代码,而在「为什么结果不对」和「为什么不够快」。这一节给出排查顺序和可用工具。 排查顺序 编译不过? → 看报错类别(构图期 / 后端),对照控制流和资源约束 ↓ 生成的不对? → CANNBOTDSL_DUMP_ASCENDC=1,直接读 .asc 看生成 ...
前面各章讲的都是 Kernel 以内的事。这一章讲最外面那一层:普通 Python 和 PyTorch 怎么把数据交给 DSL,又怎么安全地把结果取回来。 这一层不受 DSL 约束,但它决定了你的算子能不能被别人用。 三层结构里的第 3 层 ┌──────────────────── ...