《并行计算的编程模型》一3.6.2 fence和quiet:RMA操作排序

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

3.6.2 fence和quiet:RMA操作排序

当同步屏障创建重量级同步时,fence和quiet要更加轻量级(因此可扩展性更好),但提供的同步保证也更弱。fence仅确保来自单一主动PE操作的前后顺序,并被一个单独的被动PE所见。在代码清单3-10的例子中,fence被用在put和get之间以确保put的结果能在get之前可见,在这种情况下用fence就足够了,因为RMA仅包括这个PE和它的继承者。本质上,当fence函数在两组RMA操作之间被调用时,所提供的保障如下:
fence语义:对来自一个特定主动PE到一个特定被动PE的一系列传输,如果主动PE调用fence函数,则在被动端可以保证所有在fence之前由主动PE发起的操作都能在fence之后发起的传输可见之前在被动端可见。
当所有PE都主动发起传输、被动参与传输并调用fence函数时,成对的排序保证可能不足以确保内存更新正确的顺序。如果需要全局前后顺序,应该使用quiet函数。在代码清单3-11展示的例子中,每个PE用put更新了其继承者上的一个值,然后用get更新其前任的一个值,这种情况下成对排序就不够了,要用quiet保证全局排序。
fence仅对fence前后的操作强加成对的排序,quiet对在其前后的RMA操作施加更强的(也更高开销的)全局排序。但是quiet仍比同步屏障要好得多,因为它只对每个PE的到达操作进行排序而不指定PE之间的同步。
quiet语义:对在主动PE和被动PE之间的一些列传输,调用quiet函数能确保所有在quiet之前发起的RMA操作都能在所有quiet之后发起的RMA操作可见之前被全局可见。
screenshot
screenshot
screenshot
screenshot

相关文章
tesseract is not installed or it‘s not in your PATH解决办法!
简介:当我们想使用 pytesseract库的时候,我们开心的使用 pip install pytesseract安装完成后,却发现它并不能识别出图片内容,并且会抛出异常: pytesseract.pytesseract.TesseractNotFoundError: tesseract is not installed or it’s not in your PATH. See README file for more information.
tesseract is not installed or it‘s not in your PATH解决办法!
|
机器学习/深度学习 人工智能 运维
AI望远镜:人工智能是如何发现“藏在宇宙角落的新星系”的?
AI望远镜:人工智能是如何发现“藏在宇宙角落的新星系”的?
638 64
|
算法 数据挖掘 测试技术
HiRAG:用分层知识图解决复杂推理问题
HiRAG是一种分层检索增强生成系统,专为复杂知识图的多层推理设计。它通过构建从具体实体到抽象概念的多层次结构,提升知识推理深度与连贯性,有效减少大模型幻觉,适用于天体物理、理论物理等专业领域。
528 3
|
Java 区块链 网络架构
酷阿鲸森林农场:Java 区块链系统中的 P2P 区块同步与节点自动加入机制
本文介绍了基于 Java 的去中心化区块链电商系统设计与实现,重点探讨了 P2P 网络在酷阿鲸森林农场项目中的应用。通过节点自动发现、区块广播同步及链校验功能,系统实现了无需中心服务器的点对点网络架构。文章详细解析了核心代码逻辑,包括 P2P 服务端监听、客户端广播新区块及节点列表自动获取等环节,并提出了消息签名验证、WebSocket 替代 Socket 等优化方向。该系统不仅适用于农业电商,还可扩展至教育、物流等领域,构建可信数据链条。
|
JavaScript 数据安全/隐私保护 UED
微信扫码登录之接入规范
微信扫码登录之接入规范
1012 1
|
存储 安全 关系型数据库
技术人必修课:利用金字塔原理高效思考与表达
作者写这篇文章的目的就是希望能够帮助更多同学了解金字塔原理并合理应用,不只是写作,更是要着眼于思考和表达。本文将围绕认识金字塔结构、表达的逻辑、思考的逻辑、解决问题的框架、演示的逻辑这几个方面带领大家深入学习金字塔原理。
|
SQL 运维 数据库
DataphinV3.14全新升级:数据研发突破全域覆盖,资产治理更加灵活可控
DataphinV3.14支持传统数据库调用,带来全新高效研发体验,及时全面的数据保护、自定义监控和审批让数据治理更灵活自由。
119274 1
|
架构师 Unix Linux
内存泄露专题(4)mtrace内存追踪
内存泄露专题(4)mtrace内存追踪
887 0
|
机器学习/深度学习 算法
学习笔记: 机器学习经典算法-空间内一点到超平面的距离推广公式
机器学习经典算法-个人笔记和学习心得分享
1044 0
|
Prometheus 运维 监控
容器技术入门2:使用K8S搭建游戏应用
参加冬季实战营第四期:零基础容器技术实战。参加学习一下,教程很好,做笔记记录一下。本文记录冬季实战营第四期:零基础容器技术实战动手实战-基础学习之阿里云容器服务Kubernetes版快速入门。
1283 1
容器技术入门2:使用K8S搭建游戏应用

热门文章

最新文章