zoukankan      html  css  js  c++  java
  • 《MPI并行程序设计实例教程》PART1.MPI并行环境及编码模型

    1.并行编程模式-消息传递:

    具有通用功能的消息传递库有PICL、PVM、PARMACS、P4、MPI等;面向特定系统定制的消息传递库有MPL、NX、CMMD等。

    消息传递模型的主要缺点是:要求在编程过程中参与显式的数据划分和进程间同步,因此会需在解决数据依赖、预防死锁上话费较大精力。

    2.MPI消息传递通信的基本概念

    • 缓存区

    MPI环境定义了3种缓存区:

    应用缓冲区

    指保存将要发送或接受的数据的地址空间,既消息格式定义的内容部分。

    系统缓冲区

    MPI环境为通信所准备的存储空间。

    用户向系统注册的缓冲区

    指用户使用某些API(MPI_Bsend)时,在程序中显式申请的存储空间,然后注册到MPI环境中供通信使用。

    • 通信子(communicator)

    通信子是MPI环境管理进程及通信的基本设施。(eg:MPI_COMM_WORLD)。对某个进程的操作必须放在通信子内方可有效。

    • 通信协议:

    MPI环境采用以下通信协议:

    立即通信协议(Eager)

    总是假定目标进程具备保存消息数据的能力。注:该方式减少了同步延迟,简化编程,但需要相当数量的缓冲区。

    集中通信协议(Rendezvous)

    在目标准备好后,才可执行发送动作。注:该方式可确保可靠和安全,并提供消除多次数据的可能,但增加了编程复杂性(需结合wait/test等机制),同时也带来了同步延迟(等待进程许可需要时间)。

    断消息协议(Short)

    消息数据与信封封装在一起发送。

    From:《MPI并行程序设计实例教程》

    张武生 等著 清华大学出版社

    More:http://blog.donews.com/me1105/archive/2011/02/10/115.aspx

  • 相关阅读:
    解决IE6浏览器下position:fixed固定定位问题
    CSS中overflow:hidden在ie6、ie7无效不能隐藏解决办法
    liunx 中删除export设置的环境变量
    文件操作
    集合操作
    三级菜单
    字典操作
    字符串操作
    购物车程序
    列表操作
  • 原文地址:https://www.cnblogs.com/me115/p/1950707.html
Copyright © 2011-2022 走看看