《CUDA高性能并行计算》----3.3标准操作流程

    xiaoxiao2024-04-07  135

    本 节 书 摘 来 自 华 章 出 版 社 《CUDA高性能并行计算》 一 书 中 的 第3章,第3.3节, 作 者 CUDA for Engineers: An Introduction to High-Performance Parallel Computing[美] 杜安·斯托尔蒂(Duane Storti)梅特·尤尔托卢(Mete Yurtoglu) 著,苏统华 项文成 李松泽 姚宇鹏 孙博文 译 , 更 多 章 节 内 容 可 以 访 问 云 栖 社 区 “华 章 计 算 机” 公 众 号 查 看。

    3.3 标准操作流程

    看过以上典型的程序流程,我们来分析一下流程哪些部分是CUDA带来的开销,哪些能带来收益。开销应该是十分明显的:创建镜像数组并且在设备端和主机端传输数据,这些都是在串行计算中不需要进行的额外工作。为了抵消这些内存操作的“额外开销”,我们能从GPU成百上千的处理器核心上得到运算上的收益。这些讨论直接引出了一些使用CUDA的推荐策略:

    一次性将你的数据复制到设备端。

    启动一个执行了大量工作的核函数(因此从大量并行化中获得的收益将大大超出内存传输的代价)。

    只将结果复制回主机端一次。

    这些并不是一成不变的,但是它们提供了一些有用的规则。在这里,你拥有执行这个典型工作流的所有工具。然而,在我们接触更复杂问题之前,让我们快速浏览一些可以简化开发流程的其他可选方案。

    相关资源:敏捷开发V1.0.pptx
    最新回复(0)