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

最近更新

2025年慢性多软骨炎症状与治疗攻略 23页

2025年情绪管理实用技巧教学演示 53页

六西格玛在超市食品安全管理中的应用 2页

2025年急性脑梗塞治疗与诊断攻略 65页

公路规划设计院召开公路技术政策座谈会 2页

公平视角下城乡养老保险制度研究 2页

2025年心脏瓣膜置换术后孕期抗凝治疗策略 19页

八十年代国外气动技术的水平及发展动向 2页

全面质量管理与工艺管理的共同点 2页

全船液压系统在船舶节能方面的应用 2页

2025年川崎病患儿护理要点与查房策略 31页

2025年导管诱发的血栓症治疗策略 27页

全局最优化问题的一个无参数的填充函数算法 2页

全国首次热处理工艺材料质量考核结果已经揭晓.. 2页

全国锡钨钼铋矿床学术讨论会在个旧市召开 2页

2025年实用急救技能速成指南 25页

全国第四届激光基本问题讨论会在江苏省举行 2页

全国第七届财政基础理论讨论会综述 2页

2025年妇科疾病诊断利器宫腔镜技术精要解读 56页

全国海水鱼养殖技术协作会在我省召开 2页

全国微电子技术改造机械设备简讯 2页

全国塑料纤维研究工作报告会胜利闭幕 2页

全固态中波发射机天调网络的防雷对策 2页

2025年呼吸道疾病典型症状家庭护理攻略 77页

2025年呼吸系统疾病中糖皮质激素的科学应用指.. 24页

2025年呼吸机使用与维护攻略 70页

光纤远方跳闸装置在电力线路继电保护中的应用.. 2页

2025年危重症预警与急救策略解析 60页

人教版到民间采风去 31页

光栅示波器法测量断路器分合速度的分析 2页