在PRAM模型中,多个处理器同步 Action 以对不同的数据集执行相同的命令。

每种算法有两种类型的读/写模式:

  • 并发(并发并发和并发并发)
  • 独家(独家阅读和独家撰写)

  • 我发现很难理解的是,这两种模式之间的区别到底是什么,并且似乎更熟练?

    最佳答案

    理论:

    PRAM machines可以利用以下列出的主要方法之一来处理在任何pure- [SERIAL] 系统中均未发现的并发事件的处理策略。

    给定机器物理机体的性质,下面列出的一些策略可能(但不一定)符合处理目标,然后基于软件的工具将允许使用其他策略(下面未列出,因此PRAM不直接支持)当然,以调解此类策略实现步骤和措施所需的额外时间(附加开销)为代价。

    如以下3.2.x所示,某些基于硬件的策略可能会对于特殊的,非通用的图像处理或类似情况直接受益,而通用计算图则无法得到正确的结果(如果不受某些方法的保护)。排他性锁定或原子操作的方式,因为以下列出的CRCW策略均无法确保系统有效的结果,否则将导致“公正”的 [CONCURRENT] 计划的代码执行并发冲突的写访问不协调。

  • EREW ( E xclusive R ead, E xclusive W rite):

  • 1.1)不允许多个处理器同时访问内存
    1.2)如果两个或多个处理器尝试同时读取或写入同一存储单元,则行为为 undefined

  • CREW ( C 当前当前 R ead, E xclusive W 仪式):

  • 2.1)可以同时读取同一存储单元
    2.2)对同一单元格的两次并发写入会导致未指定行为

  • CRCW ( C on current R ead, C oncurrent W rite):

  • 3.1)并发读写都可以
    3.2)并发写入的行为必须进一步指定:

    3.2.1)弱CRCW:如果所有处理器都写入 0,则并发只写OK 0
    3.2.2)共模CRCW:所有处理器都需要将写入相同的值
    3.2.3)任意赢家-CRCW:对手选择(实际上是彩票)值之一
    3.2.4)Priority-CRCW:优先级最高的
    处理器的值被写入
    3.2.5)Strong-CRCW: {最大|写入最小的}值

    关于algorithm - 在PRAM模型中,CRCW和EREW之间的主要区别是什么?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/47815903/

    10-09 08:56