基于双核系统的快速排序效率分析.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
基于双核系统的快速排序效率分析   摘要:随着多核技术的不断发展,多核CPU已经成为处理器市场的主流。如何充分利用多核的优势提高应用程序的性能是开发人员不得不面对的课题。多核系统为开发人员提供了一个实现并行计算的重要平台。文中探讨了基于双核系统的快速排序的效率,介绍了C#线程编程的相关知识,并在此基础上实现了基于双核系统的多线程的快速排序算法,实验结果表明该算法较传统快速排序算法而言,算法执行效率得到了很大的提升。   关键词:多核编程;并行计算;多线程;快速排序   中图分类号:TP332文献标识码:A文章编号:1009-3044(2008)22-705-03   The Efficiency Analysis of the Quick Sort Based On The Dual-core Systems   ZHANG Huo-lin, LI Guo-qing, ZHANG Jiang-wei   (Xuchang University,Xuchang 461000,China)   Abstract: With the rapid development of multi-core technology, the multi-core CPU processors have become the mainstream of CPU market. how to make full use of the advantages of multi-core to improve the performance of the application has become a new issue that the developers have to face. Multi-core system provide an important paltform of parallel computing developers. In this paper,we discussed the efficiency of the quick sort based on the dual-core systems, introduced the C # thread programming, and based on this we developped the multi-threading version of the quick sort algorithm based on the dual-core system, the results showed that the efficiency of new algorithm has been greatly improved compared with the sequence.   Key words: multi-core programming; parallel computing; multi-threading; quick sort   1 引言   在现有生产工艺条件下,CPU主频升级之路已经走到了拐点。桌面的主频在2000年达到了1GHz,2001年达到2GHz,2002年达到了3GHz。但至今仍然没有看到4GHz处理器的出现,电压和发热量成为最主要的障碍。Intel和AMD开始寻找其它方式提升处理器的能效,而最具实际意义的方式是增加CPU内处理核心的数量。多核时代开创于2005年春季,其标志是Intel的Pentium D处理器800系列的发布。近两年来随着Intel和AMD双核、四核CPU的陆续推出,由于其优良的性价比,多核处理器已经成为处理器市场的主流。   多核时代的到来,给传统的基于单核的编程思想带来了巨大的冲击。常见的串行程序在单核CPU上是顺序执行的,在多核系统上运行只能利用其中的一个核心,因此不能获得性能的提升。为了能够充分地利用多核CPU的性能,程序开发员必须学习新的程序设计模式。在新的设计模式中,软件开发人员面临的任务就是如何充分利用多核,避免性能闲置。对应用程序可以并行的部分线程化,并将这些线程有效地分配到不同的内核中去,多个核心同时执行,软件的性能与效率必将得到大幅的提升。   目前有多种可选择的多核多线程开发工具。相对于C/C++/Fortran等编译型语言,C#/java/Python等新型语言也许是更好的选择[1]。原因C#/java/Python等语言一般都提供了对多线程的原生支持;如C#的System.Threading.Thread、Java的java.lang.Thread及Python的Threading.Thread。相形之下,编译型语言往往都是通过平台相关的库来提供多线程支持,如Win32 SD

文档评论(0)

heroliuguan + 关注
实名认证
文档贡献者

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

版权声明书
用户编号:8073070133000003

1亿VIP精品文档

相关文档