www.tech-doc.cn 加速效果从何而来?

加速效果从何而来?


通过离散分区技术,我们从运行单一进程转变为同时运行多个进程。如采用离散分区章节所述,在具备合适硬件条件下,进程的并行运行能显著缩短实际耗时。但除此之外,还有其他因素会带来加速效果。

在完整系统仿真时,积分步长是全局量。该步长作用于整个系统,所有状态变量的求解都基于这个统一的时间步推进。

离散分区技术则通过多个进程(一个主进程和若干从进程)协同工作。每个进程都有独立的积分步长。

这意味着各进程可以按自身节奏运行。某个进程对应的子系统可能完全不刚性,可采用无需雅可比矩阵计算的Adams算法;另一个子系统可能高度刚性,需使用BDF方法积分;还有的子系统可能包含微分代数方程,必须采用DASSL积分器。这种机制提供了极大的灵活性。

大多数适合离散分区的系统都包含数值刚性部分。这意味着在完整系统仿真时需频繁使用BDF积分步,进而导致大量雅可比矩阵计算——这正是消耗CPU资源的主要环节。

采用离散分区后,单个大型雅可比矩阵被分解为多个小型矩阵。即使需要计算所有小型矩阵,其总耗时也远低于单个大型矩阵的计算。若部分进程能采用Adams方法,CPU消耗将进一步降低。

当然也存在一些劣势:启动从进程会产生开销,进程间通信也需要额外耗时。即便使用多处理器,也无法保持所有处理器全程满载运行,进程间等待通信的情况时有发生。

离散分区技术已在各类系统上经过充分验证。对于特性匹配的系统,实测可获得极高的加速比。这使得原本无法实现的批量运行、蒙特卡洛分析和优化等应用成为可能。