Parallel Algorithm

Parallel Random Access Machine (PRAM)
  • EREW PRAM模型(Exclusive-Read Exclusive-Write)。每次只允许一台处理机读或写某一共享单元内容。
  • CREW PRAM模型(Concurrent-Read Exclusive-Write)。每次可允许多台处理机同时读同一个共享单元内容,但每次只允许一台处理机向某个共享单元写内容。
  • ERCW PRAM模型。 每次可允许多台处理机同时写同一个共享单元内容,但每次只允许一台处理机向某个共享单元读内容。
  • CRCW PRAM模型。每次允许多台处理机同时读和同时写同一共享单元内容。 该模型又可进一步分为:
    • Common rule。每次允许多台处理机写相同值到某一共享单元中。
    • Arbitrary rule。每次如果有多台处理机写值到某一共享单元中,则任选一台作为优胜者,它的值写到该共享单元中。
    • Priority rule。每次如果有多台处理机写值到某一共享单元中,则选处理机编号最小者作为优胜者,它的值写到该共享单元中。

Work load – total number of operations: W(n)
Worst-case running time: T(n)

Summation problem

B(h, i) := B(h-1, 2i-1) + B(h-1, 2i)
T(n) = O(logn)
W(n) = O(n)

Prefix-Sums: Balanced Binary Trees, C(h,i)

T(n) = O(logn)
W(n) = O(n)

Merging problem: Partitioning(partitioning, actual work)

i. Merging Ranking: RANK( j, A) ,RANK( i, B)
BinSearch: T(n) = O(logn), W(n) = O(nlogn);
Serial Ranking: T(n) = O(n), W(n) = O(n);
ii. Parallel Ranking(p=n/logn)
T(n) = O(logn), W(n) = O(n)

Maximum Finding:

Compare all pairs(find B(i) == 0)
T(n) = O(1), W(n) = O(n*n)
i. Doubly-logarithmic Paradigm: Partition by n 1 / 2 n^{1/2} n1/2
T(n) = O(loglogn), W(n) = O(nloglogn)
ii. Partition by h = log log n
T(n) = O(loglogn), W(n) = O(n)
iii. Random Sampling
M ( n 7 / 8 ) M(n^{7/8}) M(n7/8) ~ T(n) = O(1), W(n) = O(n)

Exercises在这里插入图片描述在这里插入图片描述

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值