性能、并行与比较边界
说明一组时间、核心数或路径指标究竟证明了什么,以及哪些结论仍需额外实验。
本页目录
常见计时范围
| 时间 | 包含 | 不等同于 |
|---|---|---|
| planner API wall | 库内寻路 API 调用 | 完整 E2E |
| external planning wall | 寻路 API 调用,以及进程启动、导入、路径转换、指标重放和写出 | 纯算法时间 |
| execution wall | 给定路径后的数组 contraction | 路径评分或 FLOPs 计数 |
| end-to-end | 规划 + 可选切片 + 执行 + 调度开销 | 单纯矩阵乘时间 |
核心与任务层次
physical cores、Rayon threads、路径规划任务与 slices 是不同层次的数量,不能互相替代。
| 层次 | 工作 |
|---|---|
| 独立调用 | 不同网络或多次寻路 |
| 路径搜索 | Auto 管理的并行工作 |
| 切片执行 | slice chunks 与 MPI ranks |
| 数值核 | 矩阵乘与后端线程 |
- CPU affinity 说明进程可以在哪些 CPU 上运行,不等于这些核心都被持续使用。
- effective cores 可由 process CPU time / wall time 估计,但仍是整个阶段的平均量。
- Auto 可以随可用资源改变实际搜索工作;没有固定工作量协议时,线程对比不能直接当作 strong scaling。
- 共享服务器上的机会式并发可以测量 throughput;隔离 latency 需要独占资源测量。
路径指标与真实执行
FLOPs、read/write、max intermediate 与 peak live size 都是路径模型量。它们能解释不同路径的结构差异,但真实执行还受 tensor shape、transpose、kernel、dtype、cache、线程、后端和同步影响。
跨库比较的协议前提
跨库比较至少统一网络、各方法均成功完成的网络集合、objective、搜索预算、计时范围、核心配置与 evaluator。协议不兼容的结果只能分别报告,不能合并为全面性能结论。