Lobsters | 📄 原文链接 | 2026-10-04 收录

让 Futhark 暂时离开 GPU

来源:futhark-lang.org — 2026-10-02

📋 概述

本文讲述一个真实的工程困境:一个自动微分项目需要先在 CPU 上对图做距离-2 着色(该算法本质串行),再用着色结果在 GPU 上大规模并行计算 Jacobian 矩阵。Futhark 的编译模型把数组统一放在 GPU 内存,导致串行步骤在 GPU 后端上慢上三个数量级,而用 CPU 后端又会让并行步骤也退化为串行。文章讨论了“按数组用途决定内存位置”这一原则性方案,并说明作者最终为何选择了一个 hack。

🔑 核心要点

💡 金句

复制单个数组元素几乎不花时间,但建立通信并阻塞等待复制完成的开销却是毁灭性的——每个数组元素轻易就要几微秒。
← 返回 Lobsters 首页