如何开发高效、可移植的并行算法和并行应用程序,曾经是困扰科学与工程计算应用部门的一个难题,也限制了高性能并行计算在科学计算上的推广应用。在粒子方法的并行模拟计算平台的研究上,如何设计高效的算法、对程序进行性能优化等是影响计算平台成败的关键问题之一,是本课题组的研究一个重点方向。
在粒子方法的并行模拟计算中,粒子的运动可能会引起粒子在整个系统中的不均匀分布,各处理器的计算负载随着时间不断变化,并且这种变化的趋势是不可预见的,若要使整个模拟系统保持较高的并行效率,需要在各个处理器之间以动态变化的方式分配计算负载。本课题组采用面向对象语言C++,研究了一种比传统Shift模式更通用的并行通信模式All2All和泛化的动态负载平衡系统,并研究、设计了粒子方法并行模拟的任务自动划分软件。All2All通信模式和泛化的动态负载平衡系统可以方便地移植到其它类似的高性能计算的通信问题中。
本课题组使用结构实体几何法(CSG)构造3D实体模型,研究了粒子方法的并行模拟计算平台的数据前处理系统,在进行模拟计算之前对模拟区域进行建模,对模拟区域的边界进行离散化处理,同时生成和排布各种离散粒子和其它系统离散单元,并提供与模拟计算模块的集成接口。
本课题组的工作为粒子方法的并行模拟计算平台的研究与推广使用奠定了基础。
|
|