当前位置:首页 > 工作总结 > 基于MCAPI的多核软件开发方法 [软件开发进入多核时代]
 

基于MCAPI的多核软件开发方法 [软件开发进入多核时代]

发布时间:2019-03-16 03:42:40 影响了:

  并行化、软件优化、高性能计算(HPC)及多核等技术已经成为了软件开发人员以及企业在未来软件开发中所必须要关注的问题。尤其是在今天多核应用的时代,具备在多核环境中多线程工作的软件才能更好地发挥出多核的高性能。
  
  “随着多核硬件产品的逐步普及,并行化在显现出其优异性能的同时,也带来了软件并行化的全新应用模式,这也就意味着,软件开发人员再也不能忽视‘并行化’在软件开发中的重要地位。”英特尔开发者产品事业部销售和业务发展总监佘飞表示。
  
  多核需要并行软件
  发挥高效能
  
  据IDC的数据表明,在2008年度发售的服务器、PC以及笔记本电脑中,超过80%的产品将内置多核处理器;而到2009年,几乎所有发售的服务器、PC和笔记本电脑都将内置多核处理器。
  随着多核时代的到来,原本只属于高端应用的并行化编程也随之变得越来越普及。可以说,在处理器平台多核的大潮中,单纯的芯片制造工艺和技术已经不足以体现和发挥出多核所带来的更高处理能力以及性能优势,具备在多核环境中多线程工作的软件将会成为发挥多核高效率的保证。
  “在今天,半导体处理技术的发展越来越快,从去年的16位工艺到英特尔马上就会应用到的32位工艺,随着半导体的集成度越高,功耗就会越低,但性能反而会提升。”佘飞说:“应该说,现在硬件产品都已经准备好了,接下来最关键的问题就是如何发挥出硬件产品的这些高性能,特别是多核技术。”
  事实上,大家在关心多核所带来的技术进步的同时,更关注其究竟能给企业计算的应用带来些什么?比如,多核技术所实现的实时跟踪已经应用到了游戏行业;多核技术实现了海洋数据的建模处理;在金融行业,利用多核技术提高了金融的抗风险能力。这些都让我们深刻地意识到了,企业计算正在走向多核应用的时代。
  那么,就像前面佘飞所提到的,如何把多核的高性能更好地发挥出来?为什么并行化软件变得越来越重要?其实答案很简单,因为多核要想更好地发挥出其高效能就需要并行化软件来“辅佐”。“如果不能采用恰当的并行化手段,计算机或者服务器的性能就不会随着硬件的提升而同步增长。”佘飞补充说。
  的确,并行化、软件优化、高性能计算(HPC)及多核等技术已经成为了软件开发人员以及企业在未来软件开发中所必须要关注的问题。当然,这些技术的应用也是对软件开发的一种很好的整合。
  
  英特尔的秘密武器: 多线程软件开发工具
  
  “我们可以看到,现在很多企业都正在应用多核产品,同时,他们也在利用微软所提供的一些软件来帮助自己实现多核技术更好的应用。其实,英特尔也有一个自己的‘秘密武器’――多线程软件开发工具。”英特尔软件与解决方案事业部副总裁刘雪松介绍说。
  其实,早在上个世纪90年代末,英特尔就已经意识到了多线程软件开发在未来多核时代将扮演的重要角色,并开始与协同操作系统和应用软件厂商携手做关于软件线程性能优化和多核软件开发技术的研究,随后也推出了针对主流编程语言和操作系统的开发工具套装。
  当然,一套“端到端”的解决方案对于开发人员来说无疑是很有益处的。从多线程软件开发的整个流程来看,首先就要区分哪些代码是需要并行化的,英特尔的解决方案就可以通过一个可视化的界面告诉用户哪些地方是需要并行化的。另外,在提供了包括编译器在内的很多开发工具来帮助软件开发人员实现多线程优化的同时,也提供了调试工具来检测多核的性能以及多线程中存在的一些问题。
  而为了帮助软件开发人员更好地应用并行和多核技术,同时也为了使并行编程更容易和更简单,英特尔还发布了Intel Threading Building Blocks 2.0(TBB)。据佘飞介绍,TBB是一个跨平台的模板数据库,使用C++编程时,开发人员可以在一个合适的抽象层中增加并行编程。另外,这些编程还可以有效地利用普通的编程技术,只不过是以多任务替代了多线程呈现出来而已。
  除了多线程开发工具以外,英特尔也在继续开发其多线程构件库。相信这可以推动开发者用熟悉的工具和方法来更快地采用并行技术。最后要强调的是,可以说,软件开发从传统顺序应用到并行的应用程序开发的角色转换已经开始。

猜你想看
相关文章

Copyright © 2008 - 2022 版权所有 职场范文网

工业和信息化部 备案号:沪ICP备18009755号-3