【IT168 专稿】计算机模拟较物理实验的优势可概括为“多快好省”,多-能够在多种条件下、大范围内进行模拟,突破现实条件的限制(如微重力实验要用落塔以至航天器,而模拟只需设重力为零) ;快-免去实验装置的建设和运行时间, 许多装备的中试过程以年月计, 而模拟则以天和小时计;好-模拟的任何细节都可随时获得,没有测量的困难(如对高温高压设备的内部状态)、误差以及对系统的干扰;省-没有建造和运行装置的成本,没有环境影响和安全隐患,可无限复制和改造。
尽管有这些优势,目前大量工程设计和科研开发中模拟还难以撼动实验的主导地位,其根本原因无外乎模型的准确性和计算的高效性,而这两者也是相辅相成的。现代科学对物质的结构和基本过程已有非常可信和精确的描述,如质量、能量和动量守恒定律,描述微观世界的薛定锷方程,描述低速宏观世界的牛顿运动定律,以及由此获得的多种速率方程 (如描述流动的纳维-斯托克斯(N-S)方程, 描述导热的傅里叶定律和描述传质的菲克定律等) 。但直接根据这些基本原理模拟实际过程的计算量往往庞大到无法想像。简化和粗化的模型能减少计算量但同时会损失精度,所以必须在两者间取得平衡。随着计算技术的发展,应用相对底层的模型不仅成为可能,甚至成为需求,为说明这一点,需要分析目前高性能计算面临的机遇和挑战。
即使普通的办公室职员也能感受到近年来计算机领域的一些转折性变化,台式机和笔记本的CPU 主频从本世纪初的数百兆赫不断增长到了3.xGHz 后似乎停滞了,但出现了双核、四核的CPU,有的台式机还配了两颗CPU。实际上,以半导体为基础的计算机元器件技术发展正逐步进入一个阶段性的平台期,电路线宽(已达 45~22nm)和工作频率(已达 6GHz)的增长都因为量子效应等原因而趋缓。主流CPU 厂商都开始以提高芯片内并行度的方式来维持和超越摩尔定律,高性能计算系统的峰值提升更是倚重CPU(核)数的增长。
因此,如何让大量的处理器或处理核心充分发挥其效能是当今高性能计算发展中的一个关键问题,这里需要克服所谓存储墙(内存访问远慢于处理器计算)、通信墙(结点间通信带宽和延迟远低于处理器的吞吐能力)和编程墙(如何开发能充分利用大量处理器的并行程序)等障碍,而这需要软件与硬件相互配合来解决。
如果对应用的软件没有任何限制,建立完全通用的硬件系统,就需要全局性的快速数据交换,包括处理器与存储器之间以及处理器之间直接或间接的数据交换。这样,当处理器数量增加时,通信方面的硬件开销必然非线性地增加,而通信的效率也必然逐步降低,使系统的实际速度无法随处理器数量线性增长,成为提高机器性能的主要瓶颈。另一方面,开发针对特定算法和问题的专用计算机虽然可以获得很高的效率,但其应用面狭窄,业务量小,无法成批生产和充分利用,也难以成为高性能计算的主流。
因此,有必要寻找介于通用和专用高性能计算之间的第三条道路。我们希望找到一种能够涵盖尽可能多的数学物理模型的算法框架,以尽量扩大其应用范围,而同时又希望这种框架有很突出的专门性和简单性,使针对它进行的硬件设计能极大地简化。