[发明专利]基于分布式Mysql集群存储的大规模CFD并行计算方法有效
申请号: | 201410302690.6 | 申请日: | 2014-06-27 |
公开(公告)号: | CN104036031B | 公开(公告)日: | 2018-05-25 |
发明(设计)人: | 刘铁刚;何晓峰;赵越 | 申请(专利权)人: | 北京航空航天大学 |
主分类号: | G06F17/30 | 分类号: | G06F17/30 |
代理公司: | 暂无信息 | 代理人: | 暂无信息 |
地址: | 100191*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 并行程序 并行计算 计算过程 集群存储 计算节点 进程 数据库 数据写入数据库 通信和数据 初始数据 高可靠性 规约信息 集群同步 连接句柄 区域边界 数据存取 完整数据 代步 存储 驱动 保存 灵活 协作 全局 通信 交换 开发 | ||
本发明提供了一种分布式Mysql集群存储大规模CFD并行计算方法,涉及到多计算节点上协作进程间的通信和数据存储:每个计算节点上的CFD进程通过Mysql驱动API连接到数据库,从数据库中获取初始数据用于计算;CFD进程在计算过程中使用MPI协议通信,交换在区域边界的数据或者全局规约信息;对每个迭代步上的数据,进程通过Mysql连接句柄将数据写入数据库;CFD并行程序计算结束后,Mysql集群同步得到计算过程中的完整数据。与现有的CFD并行计算方法相比,本发明充分利用了开源的Mysql数据库对数据存取的高性能和高可靠性,使CFD并行程序可灵活、完整的保存计算过程中的各种信息和数据。本发明简化了开发流程,减少CFD并行程序执行的墙上时间,实用性强且易于推广。
技术领域
本发明涉及大规模CFD程序并行的实现方法,尤其是CFD并行程序中的数据存储方式。
背景技术
在流体模拟和计算领域,随着问题规模的增大以及对数据精度要求的提高,三维CFD模拟的网格数量已经从千万级快速到达数十亿甚至千亿的量级。由此带来的庞大计算量需要高性能计算才有可能在一个可接受的时间范围内给出程序的计算结果。目前,并行计算是高性能计算的关键和热点,而MPI是用于并行进程间通信的协议。MPI技术是分布式集群中跨主机进程通信的标准接口,得到了各计算机厂商和软件开发人员的大力支持。基于MPI方式的I/O已成为CFD程序的标准做法。然而MPI提供的接口对文件的读写有严格的限制和要求,并且容易因为并发操作造成数据上的读写冲突。
对于大规模CFD并行程序中的一些全局信息,诸如全局误差、时间步长,一般是规约到主进程来打印。进程计算过程中产生的中间数据,通常的CFD并行程序会因为记录的繁琐而直接舍弃。如若通过MPI接口采用文件I/O方式记录,因其对格式要求严格,从而无法灵活的记录和存储,这将导致进程运行过程中的大量信息被丢弃,从而不利于对程序的运行情况进行跟踪调试和性能分析。
为了方便程序的跟踪调试,以及记录大规模CFD并行程序运行中产生的大量运行数据,需要一个对运行程序信息记录和存储的可靠解决方案。该方案应当保证CFD程序的健壮性,同时还满足开发的便利性和存储的可靠性。
发明内容
本发明提出了一种基于Mysql集群存储的大规模CFD并行计算方法。该方法使大规模问题的CFD并行程序能灵活、高效地记录进程运行中的大量运行信息和中间数据。通过该方法不仅能避免CFD程序多进程对文件的并行读写造成的冲突,并且能够利用已有成熟的Mysql优化技术手段,提高CFD程序的整体性能。
为了实现该方法,本发明对CFD程序的运行环境有新的要求:需要有可连接的Mysql集群数据库。CFD进程将数据交由Mysql集群数据库托管,计算和数据存储剥离的方式将有助于CFD程序整体性能的提升。对于Mysql集群,可行的一个解决方案是在每个计算节点上运行着Mysql守护进程以供CFD进程连接和操作;另一种方案是在非计算节点上运行Mysql数据库,数据库服务器通过高速网络与计算节点连接。由于需要对数据库进行操作,该方法要求对Mysql集群的数据库或者数据表有增加、删除、修改、查询等权限。
使用Mysql集群作为数据载体,本发明的技术方案包括以下流程:
1)Mysql数据库预先启动并稳定运行;
2)CFD并行程序启动运行,完成数据初始化工作;
3)CFD进程通过分配的Mysql主机名、用户名和密码,连接到Mysql数据库,完成在数据库上的初始化工作;
4)CFD程序进行并行计算,计算过程中的边界信息交换通过MPI通信协议完成;
5)完成一次迭代计算后,进程将运行信息和中间数据保存到Mysql数据库中;
6)CFD进程间进行同步,传递全局规约数据和信息,检测是否满足程序退出条件;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京航空航天大学,未经北京航空航天大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201410302690.6/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种螺纹孔位置度综合检具
- 下一篇:一种利用堆芯熔融物衰变热发电的系统