技术前沿:探索新一代并行计算模式
计算机产业目前面临的一大挑战就是如何实现应用软件向多核平台的过渡。由此可见并行软件是摆在我们面前切实而急待解决的问题。
多年来计算机行业一直为攻克并行计算的壁垒不懈努力着,正如笔者在过去多次提及的,多核就是并行计算,并行应用软件的实现是项过程艰苦,代价高昂的征程,它大大增加了软件编译的复杂性。到目前为止还没有可以攻克这一难题的快速有效的解决方案。计算机产业目前面临的一大挑战就是如何实现应用软件向多核平台的过渡。由此可见并行软件是摆在我们面前切实而急待解决的问题。
厂商应视并行计算为己任
当然,并行计算机的程序编译还是有章可循的,但这些方法却无法解决更高端的并行计算难题。确实,并行计算时常会令程序设计者们陷入繁琐的数据和临时的任务当中,而这些在单核设计中是不存在的。如果我们无法拿出更好的办法来解决这个问题,那么编译并行软件将成为一项极端痛苦而又耗时费钱的工程,以致阻碍计算机产业的进步。在缺少实际解决方案的前提下,不可移动的特别方法将成为业界的规范。
目前业界的所有与并行计算有关的一线计算机厂商都抱着“事不关己,高高挂起”的态度,笔者对此深感不解,似乎大家对解决这一状况的迫切性还缺乏足够的认识和参与的动力。笔者认为有必要对此进行详细的解析,首先以汽车为例来进行类比:
假设你身在一家汽车公司,你拥有最新型的高速并且安全的汽车。这些汽车可以在现有的道路上行驶,但是却只能实现其最高速度的一小部分。那么为了能实现汽车的全速行驶你就需要更好的道路。否则,没有符合要求的道路,用户就不会去购买你生产出来的高速汽车。当然,这不是你的问题,因为你已经制造了目前世界上所能见到的最好的汽车,应该有其他人为修建道路负责。但作为一家大型企业的首脑,你面临一个选择,要么你为了汽车的销售去协助修建道路,要么任其自然,只管去制造你希望用户购买的汽车。到底你会如何选择呢?
如果你是一家资金雄厚的IT厂商,就不该固步自封回避现实,只顾着去制造你的汽车。尽管这不是你的分内之事。看起来目前的计算机领域中几乎所有的企业对待既得利益都抱着这种态度。最近有声明显示英特尔和微软斥资1000万美元投身并行软件的研究。但是我对此不报乐观态度,因为对于并行计算来说这点钱无异于杯水车薪,很快就消耗殆尽无功而返。因此我们需要更多的资金,更多!
笔者有个不同的提议,这或许是在合理期限能得出创造性结论的机会。首先我并不认为这是适用于每个人的万能解决方案。这个解决方案可能只是专门针对特殊情况,它要求实践者将更多的注意力集中在他们的应用软件上。
其次,整个计算机业界必须通力合作携手并进。我们需要每个人都参与其中共同解决这个问题。高性能计算领域中的精英们一直在为此努力,是时候让大家共同关注了。让企业里研究与发展中心的工程师们都行动起来。封锁有关商业机密和专利的知识产权的努力都是不切实际的。行业科学家们长期以来也在致力于并行计算的发展。别在浪费时间为了知识产权你争我夺。也别再为新一代产品推出之际如果无法引起用户的兴趣会发生些什么而整天思前想后了。
第三,我们需要对此做出快速的应对。没有时间再为知识产权协议和企业既得利益去一再讨论。我们需要IT业界的领军者们对这个挑战和行动的规模达成共识。不久的将来,桌面电脑上实现4核甚至八核都是指日可待。工作站或者服务器的核心数量可能还会加倍。如果我们的应用软件能有效的利用所有这些核心,那将是多么振奋人心呀。
最后,我们希望每家企业都能倾囊而出。毕竟解决方案不会是天上掉下来的馅饼。英特尔和微软的投资开了个好头,但我们还需要更多的资金。
- 本文关键词:

