并行计算_多媒体课件_并行算法设计与分析_ch06_Parallel_Search.ppt

并行计算_多媒体课件_并行算法设计与分析_ch06_Parallel_Search.ppt

  1. 1、本文档共20页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
Y.Xu Copyright USTC Parallel algorithms * / Ch6 Parallel Algorithms * / Ch6 Y.Xu Copyright USTC Parallel algorithms * / Ch6 Y.Xu Copyright USTC * Parallel Algorithms Chapter 6 Parallel Search * Y.Xu Copyright USTC 主要内容 6.1 单处理器上的搜索 6.2 SIMD共享存储模型上有序表的搜索 6.3 SIMD共享存储模型上随机序列的搜索 6.4 树连接的SIMD模型上随机序列的搜索 6.5 网孔连接的SIMD模型上随机序列的搜索 * Y.Xu Copyright USTC 6.1 单处理器上的搜索 1. 随机序列 顺序查找,时间O(n) 2. 有序序列 二分查找,时间O(logn) * Y.Xu Copyright USTC 主要内容 6.1 单处理器上的搜索 6.2 SIMD共享存储模型上有序表的搜索 6.3 SIMD共享存储模型上随机序列的搜索 6.4 树连接的SIMD模型上随机序列的搜索 6.5 网孔连接的SIMD模型上随机序列的搜索 * Y.Xu Copyright USTC 6.2 SIMD共享存储模型上有序表的搜索 6.2.1 SIMD-EREW上的搜索 算法6.3:并行二分查找 输入:有序序列S=(s1,s2,…,sn)和x 输出:若sk=x, 则输出k,否则输出0 begin ①将x播送到N个处理器中; //时间O(logN) ②将S分成N个子段,S(i)={s(i-1)n/N+1,…,sin/N}, i=1~N 含播送N操作; //时间O(logN) ③Pi在S(i)中用二分查找; //时间O(log(n/N)) ④某个Pi找到sk=x,则返回k, 否则返回0; //O(logN) end 时间: O(log(n/N))+O(logN)+ O(logN)=O(logn) * Y.Xu Copyright USTC 6.2 SIMD共享存储模型上有序表的搜索 6.2.2 SIMD-CREW上的搜索 方法1:同SIMD-EREW; 方法2: N+1分查找; 算法:并行N+1分查找 begin 1. Pi将x与sim进行比较,其中 ; 1.1 若sim=x, 则返回im 1.2 若x<sim, 则标记ci=左 1.3 若x>sim, 则标记ci=右 2. 取可能含x的子段 2.1 若c1=左,则取S(0)=(s1,..,sm-1),递归并行搜索; 2.2 若cN=右,则取S(N)=(sNm+1,..,sn),递归并行搜索; 2.3 必存在唯一的i0, 使ci0=右,ci0+1=左,则取S(i0)=(si0*m+1,..,s(i0+1)m),递归并行搜索 end * Y.Xu Copyright USTC 6.2 SIMD共享存储模型上有序表的搜索 6.2.2 SIMD-CREW上的搜索 示例:S={1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16}, x=7, n=16, p(n)=2 第1次查找: 1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16 m=6 第2次查找: 7,8,9,10,11 m=2 第3次查找: 7 (找到) * Y

您可能关注的文档

文档评论(0)

文档分享 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档