|
未来发展更理性
为了尽可能利用软件的并行特性,超级计算机的研究人员还在努力让计算任务突破旧有的执行模式,分配成多线程的方式来运算。IBM将其称之为“投机多线程”(Speculative Multithreading),并且认为这是超级计算机的一个重大突破。不过随着线程数量的增多,被分割出去的大量线程任务执行结束后,生成最终计算结果的重新组合工作量也呈指数形式增长,因此需要硬件和软件的平衡发展才能保证计算结果的准确性,并且需要编译器技术的辅助。
美国防御高级研究计划局有一个称之为高性能计算机系统(High Productivity Computing Systems)的项目,其目标是至少在2010年之前让科学计算机的计算机效率每18个月翻一番(像摩尔定律一样)。与此相应的是,一些学术研究机构正在为并行和高性能计算研究更先进的编程语言和编译器。
例如Rice大学的高性能软件研究中心正在开发一种系统,通过大量的组件编制高性能的编译器,用以执行生物计算或信号处理等专门的科学计算任务。该计算中心还在研究一种使Matlab(一种用于数学计算的程序,特别是线性代数的计算,为许多科学家和工程师所喜爱)实现并行计算的方法,可以让Matlab的计算任务分发到一系列并行的计算机上,这与通过传统的Fortran语言来编写程序相比要容易得多,因为Fortran必须针对特定的计算机架构进行仔细的编程。

该研究中心主管的观点代表了超级计算机发展的最新主流方向:对于许多善长编程的用户来说,高端计算机已经产生了太多的限制,虽然其速度越来越快,但未必能让用户充分享受得上。虽然对于计算速度的诉求仍然很重要,但应该比较理性地看到两个方面:既要有更快的计算速度,更要有比较好的方法将计算速度转化为生产效率。
|