英特尔公司于2009年5月14-15日在北京成功举办了2009年软件大会,就并行化、软件优化、高性能计算 (HPC) 及多核心等诸多技术进行深入研讨。同时,英特尔公司软件产品部全球业务发展与营销总监/首席软件专家James Reinders(中文名字:仁达敬)先生提供了关于并行化与多核技术的最新优化策略,使得中国客户能够更好地分享多核产品带来的高性能应用。
作为芯片创新领域的领先厂商,英特尔公司一直致力于开发技术、产品和计划,从而不断改进人们的工作和生活方式。英特尔公司于2005 年 4 月发布的史上首款双核处理器奔腾reg; EE 840将人们从单核时代带入了多核时代——在显著提升终端计算性能的同时,大幅降低系统能耗。现在英特尔公司还已经研究出了具有 80 个内核,世界首个具有万亿次浮点运算性能的可编程处理器。
James Reinders先生称:“和其他国家一样,中国的软件行业也在寻求并行化编程工具,以便充分利用多核处理器系统的性能。英特尔reg; Parallel Studio为使用Microsoft Visual Studio C/C++的开发人员并行化时,提供了广泛的选择。我们独一无二的编译器、库和并行化调试器,无论是应用在串行应用软件还是并行应用软件上,都可以简化和加速Microsoft Visual Studio C/C++ 开发人员在多线程编程方面的工作。Parallel Compose包括英特尔reg; TBB(Threading Building Blocks)为OpenMP提供全方位的支持。由数千行并行代码组成的具有优化功能的库完全集成到Visual Studio中,其并行调试功能使得Parallel Composer成为开发人员最实用的工具包。”
在推动处理器平台多核大潮的过程中,英特尔公司从上世纪90年代末开始,与操作系统和应用厂商携手做了大量的软件线程性能优化和多核软件开发技术的研究,并推出了整套针对主流编程语言和操作系统的先进的开发工具套装:包括线程工具、编译器和其它性能调试工具套件与白皮书、性能库及群集工具包等开发工具。帮助软件开发商快速、高效、低成本地实现从传统顺序应用程序到并行的应用程序开发的角色转换,进一步优化针对最新英特尔技术平台(包括多核心、虚拟化)设计的产品。英特尔认为对于软件开发企业来讲,多核化的处理器平台和由此延伸出来的新特征、新应用是一次前所未有的契机,对于快速成长的中国软件企业来讲同样如此。
要想实现多线程、并行编程需要强调三点,一个是可伸缩性,就是如何使应用能够有很好的伸缩性。另外还有准确性,并行的程序出了问题应该怎么样纠正它,另外编码是如何可维持的。可维护性是一个重要的问题,其关键性不弱于并行编程给应用带来的创新性。这三个方面都带来很大的价值,一个程序可能在一个单核的处理器上运转得很好,在双核的处理器上并行就不见得好,而用户会要面对越来越多的并行处理器,这对于应用提出了相应的并行处理能力的要求。另外一个关于编程的挑战就是准确性,在一个Web的环境里面人们面临的是多个电脑程序,比如说飞机上的座位安排,你把一个座位卖出以后,不想再重复卖一次,同样多核也有这样的问题,一个就是在竞争的条件,另外就是死锁的情况。James Reinders先生解释道:“所谓竞争状态指的就是持续不同的方法,也就是多个程序同步出现的问题。竞争状态出现的结果是我们不能够预先来判断的,这是因为多个程序里彼此独立运行,需要这些程序彼此能够实现同步。那什么是而死锁呢?也是程序的一个部分要等另外一个部分,或者这个部分等另外一个部分因此程序可能进入死循环。”
英特尔协同众多的公司、大学、研究机构,共同为了充分利用多核处理器的高性能,而推出了众多的开发工具软件,以解决多线程、并行软件开发方面出现的问题。这也是英特尔公司软件产品未来的发展战略。
并行化、软件优化、高性能计算 (HPC) 及多核心等诸多技术为中国的软件开发和应用行业提供了巨大的空间。据IDC数据表明,2004年到2009年,中国的软件开发从业人员数量年复合增长率高达23%,预计到2009年将达到上百万人。James Reinders先生表示:“全球的开发者都已经开始重视并行编程,中国的开发人员也越来越感受到并行编程可以充分的获取多核处理器的性能,从而为中国的软件企业在多核时代获得更多的动力。”数据统计显示,中国的英特尔软件下载试用、活动参加和在线培训的数量已经排在全球首位,软件销售量也随着市场的需求逐年快速增长,市场潜力巨大。英特尔认为对于软件开发企业来讲,多核化的处理器平台和由此延伸出来的新特征、新应用是一次前所未有的契机,英特尔针对快速成长的中国软件企业也推出了一系列的计划,以帮助中国的软件企业和开发人员抓住新的技术趋势下的商机。
关于多核市场
据IDC数据表明,2008年度发售的PC、PC服务器和笔记本中,超过80%的机型将内置多核处理器。到2009年,几乎所有发售的服务器、PC和笔记本都内置了多核处理器。随着多核时代的来临,原本只属于高端应用的并行编程也随之越来越普及。


背景资料
英特尔reg; Parallel Studio:多核软件开发动力之源
英特尔reg; Parallel Studio是一个针对Microsoft Visual Studio C/C++开发者的综合并行开发套件,由英特尔reg; Parallel Composer, 英特尔reg; Parallel Inspector, and英特尔reg; Parallel Amplifier等构成英特尔reg; Parallel Studio使得基于Windows的开发人员能够更加简便、快捷地创建、调试和优化多核应用软件。
英特尔reg; Parallel Studio:开发周期并行化
英特尔reg; Parallel Studio为使用Microsoft Visual Studio C/C++的开发人员提供了简捷的端到端并行化工具。该产品是众多并行软件专家和高性能计算领域研究人员的结晶,是这些专家25年工作的经验总结。英特尔公司还提供了加强版的工具,以便对串行的或者并行的Windows应用软件进行软件是首个可以迅速满足开发人员并行需求的产品,具有下列功能:
并行化的端到端的产品套件:易于实施,无论当前是处于任何的软件开发周期:设计、编码、调试还是测试软件;
前向扩展:当前开发的软件可以有效地运行在任何的未来的处理器平台上。
基于标准的线程解决方案:显著提升企业在C/C++ 应用软件和 C/C++开发人员方面的投资效益。
轻松走上并行化快行线:快速提升生产效率,提高在硬件和软件方面的投资回报率,将学习曲线最小化。
为并行化提供多种方法:在数据和任务并行化编程方面,都可以提供相应的解决方案。
英特尔reg; Parallel Studio包括英特尔reg; Parallel Composer、英特尔reg; Parallel Inspector以及英特尔reg; Parallel Amplifier等软件,是一套功能强大的并行软件工具包。
英特尔reg; Parallel Studio Composer
英特尔reg; Parallel Composer为并行化编程提供了广泛的选择。包括编译器、库和并行化调试器。无论是串行应用软件还是并行应用软件,英特尔reg; Parallel Composer都可以简化和加速Microsoft Visual Studio C/C++ 开发人员在多线程的工作。
英特尔reg; Parallel Studio Inspector
英特尔reg; Parallel Inspector为Microsoft Visual Studio C/C++ 开发人员提供了最简单的检查多线程程序错误的工具。和其它错误检查工具不同,该产品不仅速度最快,选择最多,而且可以精确找到潜在的多线程编程问题和内存错误。
英特尔reg; Parallel Amplifier
无须了解处理器的架构和内置编码,英特尔reg; Parallel Amplifier可以快速找到多核性能瓶颈,并为优化性能,充分利用每一个处理器的功能。