《并行计算的编程模型》一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

相关文章
|
1月前
|
机器学习/深度学习 数据采集 自然语言处理
构建高效机器学习模型:从数据处理到性能优化
在数据驱动的时代,构建高效的机器学习模型已经成为解决复杂问题的关键手段。本文将详细讨论如何通过有效的数据处理、特征工程、模型选择以及性能优化策略来构建一个高效的机器学习模型。我们将重点关注数据处理的重要性,特征选择的影响,以及如何通过调整模型参数和采用集成学习方法来提高模型的性能。我们的目标是为读者提供一套实用的指南,帮助他们在构建自己的机器学习模型时能够更加高效和有效。
|
9天前
|
数据可视化
R语言实现有限混合模型建模分析
R语言实现有限混合模型建模分析
10 0
|
3月前
|
机器学习/深度学习 运维 算法
流计算中的流式机器学习是什么?请解释其作用和常用算法。
流计算中的流式机器学习是什么?请解释其作用和常用算法。
47 0
|
并行计算 API
《并行计算的编程模型》一2.5.1 GASNet工具
本节书摘来华章计算机《并行计算的编程模型》一书中的第2章 ,第2.5.1节, [(美)帕万·巴拉吉(Pavan Balaji)编著;张云泉等译,更多章节内容可以访问云栖社区“华章计算机”公众号查看。
972 0
|
存储 并行计算
《并行计算的编程模型》一3.3 OpenSHMEM存储模型
本节书摘来华章计算机《并行计算的编程模型》一书中的第3章 ,第3.3节, [(美)帕万·巴拉吉(Pavan Balaji)编著;张云泉等译,更多章节内容可以访问云栖社区“华章计算机”公众号查看。
2070 0
|
并行计算
《并行计算的编程模型》一2.4.4 批量与单个
本节书摘来华章计算机《并行计算的编程模型》一书中的第2章 ,第2.4.4节, [(美)帕万·巴拉吉(Pavan Balaji)编著;张云泉等译,更多章节内容可以访问云栖社区“华章计算机”公众号查看。
831 0
|
并行计算
《并行计算的编程模型》一1.8 并行I/O
本节书摘来华章计算机《并行计算的编程模型》一书中的第1章 ,第1.8节, [(美)帕万·巴拉吉(Pavan Balaji)编著;张云泉等译,更多章节内容可以访问云栖社区“华章计算机”公众号查看。
1927 0
|
并行计算 索引
《并行计算的编程模型》一2.3.1 开始和结束
本节书摘来华章计算机《并行计算的编程模型》一书中的第2章 ,第2.3.1节, [(美)帕万·巴拉吉(Pavan Balaji)编著;张云泉等译,更多章节内容可以访问云栖社区“华章计算机”公众号查看。
1062 0
|
并行计算
《并行计算的编程模型》一1.11 总结
本节书摘来华章计算机《并行计算的编程模型》一书中的第1章 ,第1.11节, [(美)帕万·巴拉吉(Pavan Balaji)编著;张云泉等译,更多章节内容可以访问云栖社区“华章计算机”公众号查看。
1022 0
|
并行计算 算法 API
《并行计算的编程模型》一导读
对于正在编程的程序员,编程模型可被看作一台虚拟机,并可通过编程语言和函数库实现。如果某个编程模型成为计算机科学研究中的热点,需要具有以下特性:高效性(易于描述各种抽象算法)、移植性(兼容各种硬件计算平台)、高性能(高效均衡地利用硬件平台的计算能力)、通用性(广泛地描述各种算法)。
3301 0