—— Where exceptions happen.

2007年12月21日星期五

在并行计算领域JoCaml小规模小范围的成名了

不说废话,写这篇blog的原因是很高兴看见OCaml的一个分支JoCaml的优越性在一次并行计算优化竞赛中一举成名(在邮件列表和技术博客圈里),翻译老外的话是:一个JoCaml爱好者在一个下午写的JoCaml程序的性能超过了一群Erlang专家不断优化的结果(在我看来,Erlang已经不再是并行计算的第一选择了),而且更惊人的是当一个经过充分手工优化的C程序(其实是C++)出现的时候,JoCaml程序与之相比只有11%的性能差距,而当调整了5行代码之后,JoCaml程序又比C++程序快了1%,这点差别其实考虑到不同的编译器/平台/应用,已经可以忽略不计了。换言之,你完全可以把JoCaml并发程序的性能和经过手工优化过的C++并发程序的性能相提并论。更诱人的是,JoCaml在从多CPU平台扩展到多机平台时,只需要加一行代码(C++程序就麻烦了),而这是 JoCaml优越的并发抽象逻辑所保证的。

这系列并行优化的文章见:http://www.tbray.org/ongoing/When/200x/2007/09/20/Wide-Finder
JoCaml的性能优势:http://www.tbray.org/ongoing/When/200x/2007/10/30/WF-Results
一个被这次优化竞赛的发起人认可的性能总结:“Conclusions about Wide Finder, C++, OCaml, JoCaml, Erlang and friends “ (注意:我不知道为什么这个网站被河蟹咬到了,所以被GFW保护的人民请用标题在google搜索,然后设法穿墙看快照吧)
JoCaml的网站:http://jocaml.inria.fr/
文档:http://jocaml.inria.fr/manual/index.html (推荐这份东西,不过学过一点OCaml语言,看起来会更轻松)

ps. 我正在着手把我的OCaml语言写的神经网络仿真程序改写成JoCaml版,刚在一台4核至强的SUSE服务器上编译完了OCaml和JoCaml的3.10.0版本(both of them),看见这个消息真是振奋人心。最后再次赞美函数式语言在并行计算方面的潜力。

1 留言:

Wei Hu 说...

应该不是被河蟹了,在美国访问也是
503 - Service Not Available

发表评论