2010年4月28日星期三
如何给多核处理器编程 zz
《MIT技术评论》报道(中文),2002年英特尔公 司曾自信满满的表示,奔腾4处理器已经达到了3GHz,他们将在2010年开发出30GHz的芯片,采用10纳米或更小的制作工艺,实现万亿指令级别的性 能。然而至今处理器的频率仍然低于4GHz,而硅芯片正受困于发热等问题。虽然多核芯片部分解决了过热问题,但新的问题随之而产生:如何给多核处理器编 程?
哈佛大学计算机科学与应用数学教授Leslie Valiant说,高性能计算领域的并行原理几十年前就解决了。“现在的挑战,是寻找让这些老玩意儿依然有效工作的方法。”“我们从高性能计算的早期工作 了解到,有些问题适合平行,但是这些平行应用程序不容易编写....现在仍没有好的工具来隐藏并行,或令其浅显易实现。”...这就是为什么微软一直在尽 早发布并行编程工具。例如,F#,是微软通用ML编程语言的并行版本。它不仅使一些功能平行化,而且防止它们之间不当的相互影响,从而使并行软件变得更易 于编写。在商业和开源市场,其它新的语言和工具要么利用了多核处理的能力,要么掩盖了它的复杂性。其中包括谷歌MapReduce架构,它使并行计算更易 于在集群计算机上运行;Hadoop,一个MapReduce的开源实施项目,可以为数千个节点分配程序。类似Clojure和 Erlang等新的编程语言完全以并行计算为根本而设计,风靡全球的Facebook聊天程序就部分使用Erlang编写。
哈佛大学计算机科学与应用数学教授Leslie Valiant说,高性能计算领域的并行原理几十年前就解决了。“现在的挑战,是寻找让这些老玩意儿依然有效工作的方法。”“我们从高性能计算的早期工作 了解到,有些问题适合平行,但是这些平行应用程序不容易编写....现在仍没有好的工具来隐藏并行,或令其浅显易实现。”...这就是为什么微软一直在尽 早发布并行编程工具。例如,F#,是微软通用ML编程语言的并行版本。它不仅使一些功能平行化,而且防止它们之间不当的相互影响,从而使并行软件变得更易 于编写。在商业和开源市场,其它新的语言和工具要么利用了多核处理的能力,要么掩盖了它的复杂性。其中包括谷歌MapReduce架构,它使并行计算更易 于在集群计算机上运行;Hadoop,一个MapReduce的开源实施项目,可以为数千个节点分配程序。类似Clojure和 Erlang等新的编程语言完全以并行计算为根本而设计,风靡全球的Facebook聊天程序就部分使用Erlang编写。
标签: Multicore, Parallel Programming
订阅 博文 [Atom]