首页 > 范文大全 > 正文

并行计算:多核时代的软件挑战

开篇:润墨网以专业的文秘视角,为您筛选了一篇并行计算:多核时代的软件挑战范文,如需获取更多写作素材,在线客服老师一对一协助。欢迎您的阅读与分享!

从单核到双核、四核……不管你有没有准备好,处理器多核心的时代已经降临。

自2005年4月,英特尔诞生了它的第一款双核心处理器―奔腾至尊版840以及配套的Intel 955X芯片组以来,处理器两大巨头英特尔、AMD就在多核开发上展开了赛跑。到2007年时,英特尔的四核处理器已经量产,AMD也宣布即将推出四核处理器。2007年2月份,英特尔甚至宣布已经研究出80核、具有万亿次浮点运算能力的芯片。

业内不少分析师表示,多核将会引发一轮新的软硬件革命。多年来,计算机的性能是通过时钟频率的提高而提升的,如今,处理器厂商转向了多核。多颗核心协同工作,以达到性能倍增的目的。这样,作为计算机的神经中枢,处理器的发展路线从主频转变到多核上面来,这种变化势必将对其他的软硬件设备产生影响。

多核对软件业的影响

尽管多核是一种硬件技术,但硬件和软件是相互依存的,硬件只是一种物质基础,只有有了软件的支持,才能使硬件拥有用武之地。如今,多核的优势已成共识:一在于“降低功耗”,解决了以往靠主频提高带来的后遗症问题;二在于计算性能更强,能够满足用户同时进行多任务处理和多任务计算环境的要求。正像英特尔数字企业事业部院士兼编译器与架构高级开发部门总监罗杰飞在2007IDF春季大会上说的那样:“软件要做更多的工作来利用多核的潜力。”要发挥多核的这些优势,相应软件的支持必不可少。其中,最主要的就是软件程序要能够并行处理。

那么,现在软件的并行处理能力能否与多核相匹配呢?这要视不同的市场而定。英特尔高级副总裁兼数字企业事业部总经理帕特・基辛格表示,“在服务器领域,相关的软件包括操作系统,应用用多核的能力已经成熟。”因为服务器的系统一直以来就是为多线程的应用设计的,多核的推出对于系统而言只是拓宽了高速公路,把从前的单行道变成了多条车道同时行驶。

但是,在面对个人的PC方面,如桌面和移动电脑,多数的软件和运行系统还不能很好地同多核相匹配,只有在游戏、媒体桌面出版和动画制作等领域才有利用多核技术和多线程的应用。

因此,“多核的普及,软件是一个巨大的挑战。” 英特尔软件与解决方案事业群副总裁、中国产品开发总经理王文汉博士表示,只有软件提供商、软件开发者编写出更多的并行计算程序来,多核的作用才能得以最大的发挥。然而,他也坦诚软件开发的难度是明显的:“单核编程比较自然,多核编程会相对比较复杂。”因为很难快速写出正确的多线程代码。

应对之策

如何加快多核普及呢?英特尔已经在行动。

在英特尔,有一个专门的软件与解决方案部门(SSG)承担着推动软件开发的部门,“每推出一款新的处理器,SSG的任务就是开发一些软件工具来帮助ISV理解新处理器的用处并利用其新的功能来进行开发。”王文汉介绍道。对于多核,SSG的任务就是推动ISV进行多线程编程,开发出更多的并行计算程序来。

并行编程需要出色的工具,为此,英特尔在2007 IDF春季大会上推出了四个线程工具的新版本,让线程的编程、调优、优化工作更为简单。罗杰飞告诉记者,这些工具能够满足多线程编程的需求。在多线程编程过程中,通常要首先进行架构分析,性能分析器就能帮助开发者获得对架构的可视化印象,而在引入并行后,线程检测器能够对线程进行检查,找到会造成缺陷的数据或错误;而线程调节器能够快速地改进可用性,从而帮助开发人员轻松地开发。