虽然多核风暴席卷全球,但是在多核技术的开发上目前却存在很大的障碍。微软研究院编程和工具主管Jim Larus就曾指出:“并行计算缺少算法、语言、编译器以及专业技术。” “长期来看,”他说,“我们需要更好地理解人们想利用并行编程做些什么,并学习如何在各种不同的并行机器上编写代码。”
Cavium Networks中国区总经理周宇虹补充道:“目前在多核技术的开发中需要解决3个重要问题:一是多核之间的竞争关系如何协调,二是多核的负载均衡如何实 现,三是对如何实现对多核中内存、cache等的管理。要解决这些问题,就需要软件开发和硬件开发在早期阶段进行合作,对某些功能进行定义。目前,我们和 风河就采取的这样开发模式。”
显然,目前阶段,软件技术落后于多核技术的开发,最明显的是很多业界专家认为多核技术真正需要的应该是一种并行编程语言。但是目前还没有一种并行编程技术或方法能得到广泛应用。
看样子并行编程语言是一个大家都需要的东西。