《并行计算的编程模型》一3.7.5 收集

简介: 本节书摘来华章计算机《并行计算的编程模型》一书中的第3章 ,第3.7.5节, [(美)帕万·巴拉吉(Pavan Balaji)编著;张云泉等译,更多章节内容可以访问云栖社区“华章计算机”公众号查看。

3.7.5 收集

集合函数执行聚集收集,将元素块从每个参与PE的对称源对象拷贝,并连续复制到参与集合操作的每个PE上的(更大的)对称目标数组,程序员必须确保对称目标数组足够大以便接收聚集的数据。对32和64位的数据类型都有收集函数,且对每种都有两个收集函数变体:一般的collect允许每个PE贡献不同数目的元素,固定大小的fcollect需要每个PE贡献相同数目的元素。和其他集合函数相同,收集函数允许程序员通过指定开始PE、log2(PE跨步)、参与PE的数目来选择参与的PE子集,以及长度为_SHMEM_COLLECT_SYNC_SIZE的对称同步数组,该数组必须在被所有PE使用前初始化为预定值_SHMEM_SYNC_VALUE,因此需要在初始化和使用之间同步,例如全局同步屏障。但如前所述,可以使用两个同步数组,一旦执行初始化后的全局同步,程序可简单地在两个同步数组之间轮换,而不是在每个收集前加同步屏障。如果每次同步数组使用的PE主动集相同,同步数组可以在随后轮换的收集中使用(不需要重新初始化)。代码清单3-18展示了一般的收集函数。两个同步数组允许通过轮换使用的同步数组背靠背地调用收集函数以控制集合操作。每个集合操作完成时,每个PE的目标数组都包括集合中每个参与者提供的数据块序列。
screenshot
screenshot
screenshot

相关文章
|
存储 搜索推荐 PyTorch
通义千问7B-基于本地知识库问答
上期,我们介绍了通义千问7B模型的微调+部署方式,但在实际使用时,很多开发者还是希望能够结合特定的行业知识来增强模型效果,这时就需要通过外接知识库,让大模型能够返回更精确的结果。
|
人工智能 并行计算 监控
深入剖析 Qwen2.5 - 32B 模型在 VLLM 上的单机三卡部署与运行
本文深入探讨了Qwen2.5 - 32B模型在VLLM框架上的部署过程,从模型下载、启动命令、资源占用分析到GPU资源分配及CUDA图应用,详述了大模型运行的挑战与优化策略,强调了硬件资源规划与技术调优的重要性。
7971 2
|
网络协议 NoSQL API
深入理解 RDMA 的软硬件交互机制
本文深入分析了RDMA技术在数据中心高性能网络环境下的工作原理及软硬件交互机制,通过对比传统Kernel TCP,突出了RDMA在减少延迟、提高系统性能方面的优势,同时讨论了其在内存管理、软硬交互方面的关键技术和挑战,为读者提供了全面理解RDMA技术及其应用场景的视角。
4783 8
|
存储 C++
gRPC 四模式之 双向流RPC模式
gRPC 四模式之 双向流RPC模式
1216 0
|
机器学习/深度学习 虚拟化 异构计算
浅析GPU通信技术(上)-GPUDirect P2P
1. 背景 GPU在高性能计算和深度学习加速中扮演着非常重要的角色, GPU的强大的并行计算能力,大大提升了运算性能。随着运算数据量的不断攀升,GPU间需要大量的交换数据,GPU通信性能成为了非常重要的指标。
30736 1
|
云安全 弹性计算 运维
科普达人丨漫画图解什么是eRDMA?
绕过CPU,将数据直接从一台计算机的内存传输到另一台计算机,进行网络加速
科普达人丨漫画图解什么是eRDMA?
|
并行计算 算法
CUDA 的块间同步方法
CUDA 的块间同步方法
1579 0
|
并行计算 API
《并行计算的编程模型》一3.1 引言
本节书摘来华章计算机《并行计算的编程模型》一书中的第3章 ,第3.1节, [(美)帕万·巴拉吉(Pavan Balaji)编著;张云泉等译,更多章节内容可以访问云栖社区“华章计算机”公众号查看。
1108 0
|
并行计算
《并行计算的编程模型》一3.5 远程内存访问:put和get
本节书摘来华章计算机《并行计算的编程模型》一书中的第3章 ,第3.5节, [(美)帕万·巴拉吉(Pavan Balaji)编著;张云泉等译,更多章节内容可以访问云栖社区“华章计算机”公众号查看。
1203 0
|
存储 并行计算
《并行计算的编程模型》一3.3 OpenSHMEM存储模型
本节书摘来华章计算机《并行计算的编程模型》一书中的第3章 ,第3.3节, [(美)帕万·巴拉吉(Pavan Balaji)编著;张云泉等译,更多章节内容可以访问云栖社区“华章计算机”公众号查看。
3484 0