1 / 24
文档名称:

并行排序算法.doc

格式:doc   大小:53KB   页数:24页
下载后只包含 1 个 DOC 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

并行排序算法.doc

上传人:aihuichuanran1314 2019/6/1 文件大小:53 KB

下载得到文件列表

并行排序算法.doc

文档介绍

文档介绍:并行排序算法先简单说一下给的A,B,C三种算法(见上面引用的那篇博客),A算法将耗时的平方和开平方计算放到比较函数中,,每次亮亮比较都要执行平方和开平方计算,其平均算法复杂度为O(nlog2n)。而B将平方和开平方计算提取出来,算法复杂度降低到O(n),这也就是为什么B比A效率要高很多的缘故。C和B相比,将平方函数替换成了x*x,由于少了远程函数调用和Pow函数本身的开销,效率有提高了不少。我在C的基础上编写了D算法,D算法采用并行计算技术,在我的双核笔记本电脑上数据量比较大的情况下,其排序效率较C要提高30%左右。下面重点介绍这个并行排序算法。算法思路其实很简单,就是将要排序的数组按照处理器数量等分成若干段,然后用和处理器数量等同的线程并行对各个小段进行排序,排序结束和,再在单一线程中对这若干个已经排序的小段进行归并排序,最后输出完整的排序结果。,没有用微软提供的并行库,而是用多线程来实现。下面是测试结果: nABCD 从测试结果上看,当要排序的数组长度较短时,并行排序的效率甚至还没有不进行并行排序高,这主要是多线程的开销造成的。当数组长度增大到25万以上时,并行排序的优势开始体现出来,随着数组长度的增长,排序时间最后基本稳定在但线程排序时间的74%左右,其中并行排序的消耗大概在50%左右,归并排序的消耗在14%左右。由此也可以推断,如果在4CPU的机器上,其排序时间最多可以减少到单线程的14+25=39%。8CPU为14+=%。目前这个算法在归并算法上可能还有提高的余地,如果哪位高手能够进一步提高这个算法,不妨贴出来一起交流交流。下面分别给出并行排序和归并排序的代码: 并行排序类ParallelSort Paralletsort类是一个通用的泛型,调用起来非常简单,下面给一个简单的int型数组的排序示例: parer:IComparer<int> { IComparerMembers#parerMembers pare(intx,inty) { pareTo(y); } #endregion } publicvoidSortInt(int[]array) { <int>parallelSort=<int>(); (array,parer()); }只要实现一个T类型两两比较的接口,然后调用ParallelSort的Sort方法就可以了,是不是很简单? 下面是ParallelSort类的代码 usingSystem; ; ; ; ; namespaceSort { /**//// ///ParallelSort /// /// lassParallelSort<T> { enumStatus { Idle=0, Running=1, Finish=2, } classParallelEntity { publicStatusStatus; publicT[]Array; parer<parer; publicParallelEntity(Statusstatus,T[]array,IComparer<parer) { Status=status; Array=array; parer; } } privatevoidThreadProc(ObjectstateInfo) { ParallelEntitype=stateInfoasParallelEntity; lock(pe) { =ParallelSort<T>.; (,parer); =ParallelSort<T>.; } } publicvoidSort(T[]array,IComparer<parer) { //Calculateprocesscount intprocessorC

最近更新

云南省2020版保育员五级职业技能考试试题试题.. 11页

书记在联点共建工作会讲话与书记在肉鸡养殖专.. 10页

2025年度委托收款银行代理合作协议 7页

2025年度夫妻财产保全与分配约束协议 8页

2025年度太阳能热水系统安装承包简易合同 9页

2025年度大米加工产业技术创新合作合同 9页

2025年度大学生实习就业指导服务合同 9页

2025年度大型商场特色商铺租赁及推广服务合同.. 8页

2025年度外卖配送区域合作协议书 8页

2025年度塑胶颗粒产品质量检测与认证服务合同.. 9页

2025年度城市轨道交通建设项目合同示范文本 8页

2025年度城市综合体地面车位购置合同范本 8页

2025年度城市排水管道检测与修复合同书模板 9页

2025年度城市公交辅助班车服务合同 8页

2025年度地暖安装与可再生能源利用工程合同 9页

2025年度在线教育平台合作协议附件合同范文 9页

2025年度土地租赁与经营权转让协议 8页

2025年度国际美食节招商合作合同 9页

2025年度园林景观工程造价咨询及设计合同 9页

2025年度商铺购置合同模板与市场分析 9页

2025年度商铺房屋租赁合同附带人才引进与培养.. 7页

新型营养餐食研发与应用-全面剖析 27页

2025年度商业活动专用文印服务合同协议书 9页

2025年度品牌形象重塑与设计策划服务合同 9页

2025年度员工入股文化创意产业合作协议书模板.. 8页

2025年度吊车租赁合同简易版租赁期限规定 8页

2025年度合伙购房违约责任及争议解决协议 8页

2025年度合伙人股份合作的高新技术研发合作协.. 9页

2025年度口腔诊所口腔医学研究项目合作协议 8页

2025年度双方约定协议书:智慧城市建设项目合.. 9页