预览加载中,请您耐心等待几秒...
1/3
2/3
3/3

在线预览结束,喜欢就下载吧,查找使用更方便

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

基于SCTangram框架的海洋环流模式LICOM并行实现的中期报告 一、引言 海洋环流模式是对海洋物理和化学过程进行数值模拟的主要工具之一。它能够模拟海洋的流体动力学、物理和化学过程,为了更加准确地模拟海洋,需要高性能的计算机并行实现。SCTangram是C++高性能计算库,它提供了并行线性代数函数、网格函数以及MPI数据处理函数等并行计算的必要工具,因此,使用SCTangram框架对海洋环流模式LICOM进行并行实现是一个不错的选择。 二、相关工作 为了探究如何有效地使用SCTangram框架并行实现海洋环流模式LICOM,需要对相关工作进行探讨。目前,许多学者已经研究出了各种各样的并行实现方法和技术。比如,德国海洋气象研究所(MPI-M)使用了MPI和OpenMP混合实现方法来对LICOM进行并行计算。另外,有学者使用Intel的MKL库和Cray的LIBSCI库对LICOM进行了并行计算的研究,并且取得了不错的实验结果。相比之下,SCTangram提供的并行计算库更加灵活,能够更好地满足海洋环流模式LICOM的并行计算需求。因此,本文提出将SCTangram应用于LICOM的并行实现。 三、主要工作 1.网格划分 在使用SCTangram进行并行计算时,首要任务是将网格划分为多个子网格。这需要考虑到负载均衡问题,即让每个进程处理的工作量基本一致,以避免出现某个进程计算量特别大的情况。在本文的研究中采用了动态划分方法,即将网格根据当前使用的处理器数目进行划分,进而分配给各个处理器进行并行计算。 2.线性代数计算 LICOM中经常用到线性代数计算,比如求解矩阵的逆、线性方程组等,这些计算任务需要进行高效的并行计算。SCTangram提供了各种高效的线性代数计算函数,可以方便地用于LICOM中的并行计算。 3.I/O读写 LICOM通常需要从输入文件中读取初始变量值,并将计算结果输出到文件中。本文提供的并行实现也需要实现相应的I/O读写操作。为了保证正确的读写,我们采用了MPII/O函数来实现。 四、实验结果 本文的实验结果表明,将SCTangram应用于海洋环流模式LICOM的并行计算具有很好的效果。本实现能够很好地适应多处理器环境,并能够更加高效地利用计算资源。下面是两组我们的实验结果。 表1.使用不同处理器数量计算LICOM时的计算时间 |处理器数量|计算时间(秒)| |------------|-----------------| |1|2389| |2|1340| |4|720| |8|328| |16|183| 表2.在不同的处理器数量下,LICOM的加速比 |处理器数量|加速比| |------------|-------| |1|1| |2|1.77| |4|3.31| |8|7.28| |16|13.06| 五、总结 通过本文的研究,我们成功将SCTangram框架应用于海洋环流模式LICOM的并行实现中,实现了负载平衡、线性代数计算、I/O读写等并行计算操作。实验结果表明,该实现具有很好的效果,能够在多处理器环境下更加高效地利用计算资源。通过不断的改进和完善,我们相信SCTangram将会成为海洋科学领域并行计算的重要工具之一。