《OpenACC并行程序设计:性能优化实践指南》一 3.9 增加GPU任务并行

简介: 本节书摘来自华章出版社《OpenACC并行程序设计:性能优化实践指南》一 书中的第3章,第3.9节,作者:[美] 罗布·法伯(Rob Farber),更多章节内容可以访问云栖社区“华章计算机”公众号查看。

3.9 增加GPU任务并行

在图3-10中,放大主机-设备的追踪数据,可以看出在一些内核启动和开始执行内核间有时间差。此外,因为同步主机与GPU间的数据拷贝,所以GPU依旧有时空闲。使用CUDA流引入异步GPU活动,来确保PIConGPU可以向GPU发送更多的任务,让GPU找出最好的处理方式。图3-11显示了使用CUDA流的结果。现在每个主机线程都使用CUDA流(每个GPU有5个流),一个流负责主机与GPU间的数据拷贝,剩下的流负责向GPU提交并发任务。
为了在GPU上实现极高水平的并发性,PIConGPU实现了一个内部事件系统,可以自动触发活动和映射数据依赖关系。这个事件系统转换为CUDA事件,所以即使输入数据仍在传输也可以启动内核。因此,PIConGPU可以扩展到非常多的GPU上执行,并且仍然保持非常高的GPU利用率。PIConGPU及其改进版本经常在OLCF Titan上整个系统运行,并且在2013年入围戈登贝尔奖(Bussmann et al., 2013)。

screenshot

相关实践学习
部署Stable Diffusion玩转AI绘画(GPU云服务器)
本实验通过在ECS上从零开始部署Stable Diffusion来进行AI绘画创作,开启AIGC盲盒。
相关文章
|
6月前
|
并行计算 TensorFlow 调度
推荐场景GPU优化的探索与实践:CUDA Graph与多流并行的比较与分析
RTP 系统(即 Rank Service),是一个面向搜索和推荐的 ranking 需求,支持多种模型的在线 inference 服务,是阿里智能引擎团队沉淀多年的技术产品。今年,团队在推荐场景的GPU性能优化上又做了新尝试——在RTP上集成了Multi Stream,改变了TensorFlow的单流机制,让多流的执行并行,作为增加GPU并行度的另一种选择。本文详细介绍与比较了CUDA Graph与多流并行这两个方案,以及团队的实践成果与心得。
|
13天前
|
机器学习/深度学习 并行计算 算法
GPU加速与代码性能优化:挖掘计算潜力的深度探索
【10月更文挑战第20天】GPU加速与代码性能优化:挖掘计算潜力的深度探索
|
4月前
|
并行计算 API 数据处理
GPU(图形处理单元)因其强大的并行计算能力而备受关注。与传统的CPU相比,GPU在处理大规模数据密集型任务时具有显著的优势。
GPU(图形处理单元)因其强大的并行计算能力而备受关注。与传统的CPU相比,GPU在处理大规模数据密集型任务时具有显著的优势。
|
缓存 openCL 算法
关于实现Halcon算法加速的基础知识(2)(多核并行/GPU)
关于实现Halcon算法加速的基础知识(多核并行/GPU)
3213 0
关于实现Halcon算法加速的基础知识(2)(多核并行/GPU)
|
6月前
|
机器学习/深度学习 并行计算 PyTorch
【多GPU炼丹-绝对有用】PyTorch多GPU并行训练:深度解析与实战代码指南
本文介绍了PyTorch中利用多GPU进行深度学习的三种策略:数据并行、模型并行和两者结合。通过`DataParallel`实现数据拆分、模型不拆分,将数据批次在不同GPU上处理;数据不拆分、模型拆分则将模型组件分配到不同GPU,适用于复杂模型;数据和模型都拆分,适合大型模型,使用`DistributedDataParallel`结合`torch.distributed`进行分布式训练。代码示例展示了如何在实践中应用这些策略。
1755 2
【多GPU炼丹-绝对有用】PyTorch多GPU并行训练:深度解析与实战代码指南
|
6月前
|
机器学习/深度学习 并行计算 算法
掌握XGBoost:GPU 加速与性能优化
掌握XGBoost:GPU 加速与性能优化
990 0
|
6月前
|
人工智能 并行计算 API
极智AI | 谈谈GPU并行推理的几个方式
大家好,我是极智视界,本文主要聊一下 GPU 并行推理的几个方式。
418 0
|
并行计算 PyTorch 算法框架/工具
pytorch在GPU上运行模型实现并行计算
pytorch在GPU上运行模型实现并行计算
190 0
|
异构计算
案例分享:Qt流水线图像显示控件(列刷新、1ms一次、缩放、拽拖、拽拖预览、性能优化、支持OpenGL GPU加速)
案例分享:Qt流水线图像显示控件(列刷新、1ms一次、缩放、拽拖、拽拖预览、性能优化、支持OpenGL GPU加速)
案例分享:Qt流水线图像显示控件(列刷新、1ms一次、缩放、拽拖、拽拖预览、性能优化、支持OpenGL GPU加速)
|
算法 安全 程序员
关于实现Halcon算法加速的基础知识(1)(多核并行/GPU)
关于实现Halcon算法加速的基础知识(多核并行/GPU)
1279 0
关于实现Halcon算法加速的基础知识(1)(多核并行/GPU)