软件开发的突飞猛进推翻了摩尔定律

2011/3/9 14:22:07    编辑:新浪科技     字体:【

Win7之家www.win7china.com):软件开发的突飞猛进推翻了摩尔定律

《纽约时报》网络版周一刊载称,摩尔定律被奉为IT行业的“金科玉律”,但软件开发的突飞猛进推翻了这一定律。

以下为文章主要内容:

电脑业界一个流传已久的笑话是,硬件带来的东西,全让软件给拿走了。改自《圣经》的这句话传递了某些事情像戒律一样亘古不变,同时还预示着基于芯片的硬件发展,成为运算创新的引擎。与此同时,编写代码的过程则混乱无序,难以预测,这个过程显然落后于发展趋势,就好比是一列“创新火车”的守车(指挂在列车尾部供车长乘座的工作车)。

我在日前撰写的评论文章中谈到了一项研究,这项研究得出的结论完全有悖于我们的常识。虽然该研究没有得到太多媒体关注,但我认为它很有趣,其结论并不会得到广泛推崇。一个由美国白宫科学技术顾问组成的独立小组2010年12月发布的报告援引了一项研究的结论。该研究表明,从事运算工作获得的绩效收益(源于软件算法的不断改善)往往远远超过采用速度更快处理器所带来的绩效收益。

当然,芯片性能的快速提高有其“定律”,即“摩尔定律”。“摩尔定律”是由英特尔联合创始人戈登·摩尔(Gordon Moore)在1960年代初提出的,他预测集成电路上可容纳的晶体管数目每隔约18个月会增加一倍,而性能也将提升一倍。然而,软件并不存在这种被IT行业奉为金科玉律的定律。

白宫科学顾问发布的报告中提到了一项研究,该研究对一项历时15年之久的重要生产任务进展进行了调查。研究由德国科学家和数学家马丁·格罗斯彻(Martin Grotschel)实施,结果表明,在这15年里,运算完成速度提高了4300万倍,其中1000倍来自于处理器速度提高,43000倍则是来自软件算法效率的改进。

专家普遍认为,摩尔定律提出的硬件性能提升速度是非同寻常的成就。但是,华盛顿大学教授爱德华·洛索斯卡(Ed Lazowska)说:“电脑专家给算法注入的智慧令软件性能得到显著提高,这种提升速度甚至使摩尔定律的指数级增长都看上去微不足道。”

软件性能的快速提升在用以实施非数值任务的算法方面就很难衡量,但洛索斯卡以人工智能领域(如语言理解、语言识别、电脑视觉等)近年来的发展为例,证明更易量化的基准测试根本无法预测算法的提升速度。

究竟是什么原因使得软件性能得到如此大幅度的提升呢?答案肯定远比我想象的多,远比我想象的复杂,但我认为主要有两个原因。首先,应该归咎于部分专家所认为的软件弱点。软件是混乱、无序的,因为它完全是抽象的东西,好比没有数量限制的建筑材料。软件这种混乱、无序的结构为创新提供了更多机会。

其次,我的第一个观点或许是正确的,但是,我们不能过分夸大软件的创新速度,忽视硬件性能的快速提升。这便涉及运算的阴阳平衡概念,即硬件和软件密切相连——纵然文章开头的那句话并没有理顺两者的关系。