《并行计算的编程模型》一2.3.7 活动消息规则与约束

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

2.3.7 活动消息规则与约束

GASNet规范是了解相关细节最完整的参考资料,本节将介绍使用GASNet编写正确、可移植的AM代码时所必须遵循的主要规则。然而,并非所有应用实现都必须强制执行所有的规则,只是客户端必须遵循这些规则,否则一些实现将出现不正确的操作。

  • 作为AM Request结果的处理程序执行,仅允许通过对AMReply函数的单一可选函数进行通信。
  • 作为AM Reply结果的处理程序执行,不允许发生任何通信。
  • 没有处理程序可以调用GASNet屏障函数、初始化AM Request或调用扩展API中的任意部分(包括那些禁止通信部分)。
  • 处理程序可以在函数中临时阻塞以获得HSL,但必须在函数执行结束前释放获得的HSL。
  • 处理程序可以不调用GASNET_BLOCKUNTIL。
  • GASNet实现不必保证AM顺序执行且客户端代码必须在重新排序消息发生时处于死锁状态。
  • 客户端代码必须以线程安全的方式进行编写(通过正确使用HSL的方式),即使是单线程客户端,GASNet也可以异步执行AM处理程序。
  • 传递给GASNET_BLOCKUNTIL的表达式也得受上述规则约束,且需要考虑这些表达式有可能与AM处理程序并发执行的情况。
相关文章
|
机器学习/深度学习 网络协议 中间件
[ROS2] --- ROS diff ROS2
[ROS2] --- ROS diff ROS2
502 0
|
边缘计算 Cloud Native 数据管理
【阿里云云原生专栏】云原生背景下的AIoT布局:阿里云Link平台解析
【5月更文挑战第29天】阿里云Link平台,作为阿里云在AIoT领域的核心战略,借助云原生技术,为开发者打造一站式物联网服务平台。平台支持多协议设备接入与标准化管理,提供高效数据存储、分析及可视化,集成边缘计算实现低延时智能分析。通过实例代码展示,平台简化设备接入,助力智能家居等领域的创新应用,赋能开发者构建智能生态系统。
637 3
|
云安全 人工智能 弹性计算
安装Docker 配置阿里云镜像加速
安装Docker,配置环境,配置阿里云镜像加速地址,查看镜像,卸载docker,卸载docker引擎,主机上的映像、容器、卷或自定义配置文件不会自动删除。要删除所有映像、容器和卷的方法
3336 0
安装Docker 配置阿里云镜像加速
|
知识图谱 自然语言处理 算法
大语言模型 RAG 论文总结(2023~202404)(1)
大语言模型 RAG 论文总结(2023~202404)
909 0
|
前端开发 NoSQL Java
毕业设计|springboot+h5的购物商城系统(一)
毕业设计|springboot+h5的购物商城系统
501 2
|
存储 缓存 NoSQL
Redis使用管道实现批量处理
Redis使用管道实现批量处理
331 0
|
JSON Java fastjson
JSON与Java的两种解析方式
JSON与Java的两种解析方式
|
存储 文件存储 Android开发
如何让群晖Audio Station公开共享的本地音频公网可访问?
如何让群晖Audio Station公开共享的本地音频公网可访问?
|
人工智能 并行计算 Ubuntu
极智AI | ubuntu编译Darknet与YOLO训练
大家好,我是极智视界,本文介绍了在 ubuntu 上编译 darknet 及 yolo 训练的方法。
531 0
|
设计模式 前端开发 Java
MVC到底是设计模式还是软件架构?
MVC到底是设计模式还是软件架构?
665 0