CN110209353B - 区域耦合预报系统中roms模式的i/o并行加速方法、装置及介质 - Google Patents
区域耦合预报系统中roms模式的i/o并行加速方法、装置及介质 Download PDFInfo
- Publication number
- CN110209353B CN110209353B CN201910412804.5A CN201910412804A CN110209353B CN 110209353 B CN110209353 B CN 110209353B CN 201910412804 A CN201910412804 A CN 201910412804A CN 110209353 B CN110209353 B CN 110209353B
- Authority
- CN
- China
- Prior art keywords
- parallel
- data
- roms
- file
- mode
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/061—Improving I/O performance
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0629—Configuration or reconfiguration of storage systems
- G06F3/0631—Configuration or reconfiguration of storage systems by allocating resources to storage systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/0671—In-line storage system
- G06F3/0683—Plurality of storage devices
- G06F3/0689—Disk arrays, e.g. RAID, JBOD
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02A—TECHNOLOGIES FOR ADAPTATION TO CLIMATE CHANGE
- Y02A90/00—Technologies having an indirect contribution to adaptation to climate change
- Y02A90/10—Information and communication technologies [ICT] supporting adaptation to climate change, e.g. for weather forecasting or climate simulation
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Human Computer Interaction (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Multi Processors (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明提出一种区域耦合预报系统中ROMS模式的I/O并行加速方法、装置及计算机可读存储介质,涉及区域耦合预报系统技术领域,所述方法包括划分x、y方向的全域网格数及x、y方向的进程数;构建每个计算进程输入输出数据与整体输入输出文件的一一映射关系,构建计算进程与I/O进程数据传输的映射关系;I/O进程并行读取文件数据,并将数据分发到各个计算进程;ROMS计算结果,I/O进程从各计算进程收集数据,并行存储数据。本发明在ROMS海洋计算模式中设计并行I/O输入输出,优化ROMS底层I/O框架,提高海洋模式ROMS的I/O性能。
Description
技术领域
本发明涉及区域耦合预报系统技术领域,尤其涉及一种区域耦合预报系统中ROMS模式的I/O并行加速方法、装置及计算机可读存储介质。
背景技术
“两洋一海”区域耦合预报系统中的大气部分使用WRF(Weather Research andForecasting)模式,海洋部分使用区域海洋模式系统ROMS(Regional Ocean ModelingSystem)。在海洋数值模拟过程中,随着计算区域的扩大以及计算精度的提升,大量数据输出使得I/O效率成为系统整体性能提升的一个瓶颈。目前,区域耦合预报系统使用的ROMS分辨率为3km,只使用一个进程进行输入输出,因此I/O性能低下成为影响系统整体性能的瓶颈。
发明内容
针对I/O效率低下的问题,提出一种区域耦合预报系统中ROMS模式的I/O并行加速方法,在ROMS海洋计算模式中,设计并行I/O输入输出,优化ROMS底层I/O框架,提高海洋模式ROMS的I/O性能。
为了达到上述目的,本发明采用的技术方案为:
作为本发明的一个方面,提出一种区域耦合预报系统中ROMS模式的I/O并行加速方法,包括以下步骤:
划分进程数:划分x、y方向的全域网格数及x、y方向的进程数;
构建映射关系:读取I/O设置文件,读取I/O设置文件内容包括I/O进程总数,I/O进程之间的间隔,然后通过MPI相关函数创建I/O进程通信域,I/O进程组是计算进程的子集;然后构建每个计算进程输入输出数据与整体输入输出文件的一一映射关系,构建计算进程与I/O进程数据传输的映射关系;
并行读取:I/O进程并行读取文件数据,然后按照映射关系将数据分发到各个计算进程;
并行输出:ROMS计算结果,I/O进程从计算进程收集数据,然后I/O进程并行存储数据。
作为优选,在构建映射关系之前,还包括以下步骤:初始化ROMS的I/O框架结构类型。
作为优选,并行读取的步骤,具体为:打开文件获取文件的变量信息,I/O进程并行读取数据,然后将文件数据按照映射关系分发到各个计算进程。
作为优选,并行输出的步骤,具体为:
定义输出文件的类型、属性、维度和变量信息;
按照变量数据类型从各计算进程收集数据存入到相应的I/O进程;
将各I/O进程的数据并行快速写入硬件磁盘阵列。
作为优选,定义进程数的步骤之前,还包括以下步骤:完成ROMS并行环境初始化工作。
作为优选,并行输出的步骤之后,还包括以下步骤:关闭已打开的并行I/O文件,终止并行环境。
作为本发明的第二方面,提出一种基于区域耦合预报系统中ROMS模式的I/O并行加速装置,包括处理器以及存储器,所述存储器存储有计算机程序,所述计算机程序被处理器执行时实现所述的区域耦合预报系统中ROMS模式的I/O并行加速方法的各个步骤。
作为本发明的第三方面,提出一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现所述的区域耦合预报系统中ROMS模式的I/O并行加速方法的各个步骤。
与现有技术相比,本发明的优点和积极效果在于:
本发明通过为文件构建多个I/O进程,并行读取文件数据后,将数据分发给各个计算进程,ROMS模式计算完成后并行存储数据,从而实现多进程同步执行一个输出文件,缓解主进程内存压力,提升I/O性能,解决现有技术中单进程I/O所带来的效率低下的问题。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明区域耦合预报系统中ROMS模式的I/O并行加速方法的流程图;
图2为本发明基于区域耦合预报系统中ROMS模式的I/O并行框架图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
除非另外具体说明,否则实施例中阐述的步骤的相对布置不限制本发明的范围。对于相关领域普通技术人员已知的技术、方法和设备可能不作详细讨论,但在适当情况下,所述技术、方法和设备应当被视为授权说明书的一部分。
现有技术中区域耦合预报系统中ROMS模式在进行海洋数值模拟时,只有一个进程进行输入输出,随着计算区域的扩大以及计算精度的提升,大量的数据输出使得I/O效率成为系统整体性能提升的瓶颈。本发明基于此问题,提供以下技术方案:通过改进ROMS模式中的底层I/O,设计并行I/O输入输出,实现多进程同步执行,从而缓解主进程内存压力,提升区域耦合预报系统中ROMS模式I/O性能。
为了更好地理解上述技术方案,下面结合附图以及具体的实施方式对上述技术方案进行详细的说明。
参见图1、图2所示,作为本发明的第一方面,提出一种区域耦合预报系统中ROMS模式的I/O并行加速方法,包括以下步骤:
S1划分进程数:划分x、y方向的全域网格数及x、y方向的进程数;
进行网格划分的区域分解:完成x方向的全域网格数、y方向的全域网格数、x方向的进程数、y方向的进程数。此步骤将区域沿x方向、y方向进行网格划分,同时,划分x方向、y方向的进程数。示例性地,将x方向、y方向的任务按照等大小划分成10份,即有10个进程数。
具体地,在划分进程数之前,先完成ROMS模式并行环境初始化工作,为并行输入输出做好准备。
S2构建映射关系:构建每个计算进程输入输出数据与整体输入输出文件的一一映射关系,构建计算进程与I/O进程数据传输的映射关系;
读取I/O设置文件,读取I/O设置文件内容包括I/O进程总数,I/O进程之间的间隔,然后通过MPI相关函数创建I/O进程通信域,I/O进程组是计算进程的子集;然后构建每个计算进程输入输出数据与整体输入输出文件的一一映射关系,构建计算进程与I/O进程数据传输的映射关系;
具体地,在S2构建映射关系之前,先进行初始化,根据I/O设置文件初始化ROMS模式的I/O框架结构类型及I/O进程。
S3并行读取:I/O进程并行读取文件数据,并按照映射关系将数据分发到各个计算进程;
调用nfmpi_open函数,打开文件,调用nfmpi_get_vara_all函数,并行读取文件数据;然后完成数据分发:将I/O进程中nc文件数据分发到各个计算进程,其中<TYPE>可以为CHAR,INT,REAL,分别用来分发character,integer和real类型的数据。
S4并行输出:ROMS计算结果,I/O进程从计算进程收集数据,然后I/O进程并行存储数据。
ROMS模式计算并更新网格边界,调用nfmpi_create函数,创建文件,定义文件属性为ior(nf_clobber,nf_64bit_data),调用nfmpi_def_dim和nfmpi_def_var定义I/O输出文件的维度、变量等信息;计算进程按照映射关系发送数据到I/O进程,调用nfmpi_iput_vara函数,实现数据并行存储,参见图2所示,从各计算进程收集数据存入到I/O进程,其中<TYPE>可以为CHAR,INT,REAL,分别用来分发character,integer和real类型的数据;并行存储数据后快速写入硬件磁盘阵列。
具体地,在S4并行输出之后,还包括以下步骤:关闭已打开的并行I/O文件,释放I/O进程资源,终止并行环境。
本发明通过为输入输出文件构建多个I/O进程,并行读取文件数据后,将数据分发给各个计算进程,ROMS模式计算完成后并行存储数据,从而实现多进程同步执行一个输出文件,缓解主进程内存压力,提升I/O性能,解决现有技术中单进程I/O所带来的效率低下的问题。
作为本发明的第二方面,提出一种基于区域耦合预报系统中ROMS模式的I/O并行加速装置,包括处理器以及存储器,所述存储器存储有计算机程序,所述计算机程序被处理器执行时实现上述区域耦合预报系统中ROMS模式的I/O并行加速方法的各个步骤。
本装置通过改进ROMS模式中的底层I/O,设计并行I/O输入输出,实现多进程同步执行,从而缓解主进程内存压力,提升区域耦合预报系统中ROMS模式IO性能。
作为本发明的第三方面,提出一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述区域耦合预报系统中ROMS模式的I/O并行加速方法的各个步骤。
本程序通过改进ROMS模式中的底层IO,设计并行I/O输入输出,实现多进程同步执行,从而缓解主进程内存压力,提升区域耦合预报系统中ROMS模式IO性能。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以所述权利要求的保护范围为准。
Claims (8)
1.一种区域耦合预报系统中ROMS模式的I/O并行加速方法,其特征在于,包括以下步骤:
划分进程数:划分x、y方向的全域网格数及x、y方向的进程数;
构建映射关系:读取I/O设置文件,读取I/O设置文件内容包括I/O进程总数,I/O进程之间的间隔,然后通过MPI相关函数创建I/O进程通信域,I/O进程组是计算进程的子集;然后构建每个计算进程输入输出数据与整体输入输出文件的一一映射关系,构建计算进程与I/O进程数据传输的映射关系;
并行读取:I/O进程并行读取文件数据,并按照映射关系将数据分发到各个计算进程;并行读取的具体步骤为:调用nfmpi_open函数,打开文件,调用nfmpi_get_vara_all函数,并行读取文件数据;然后完成数据分发:将I/O进程中nc文件数据分发到各个计算进程,其中<TYPE>为CHAR、INT、REAL,分别用来分发character、integer和real类型的数据;
并行输出:ROMS计算结果,I/O进程从计算进程收集数据,然后I/O进程并行存储数据;并行输出的具体步骤为:ROMS模式计算并更新网格边界,调用nfmpi_create函数,创建文件,定义文件属性为ior(nf_clobber,nf_64bit_data),调用nfmpi_def_dim和nfmpi_def_var定义I/O输出文件的维度、变量信息;计算进程按照映射关系发送数据到I/O进程,调用nfmpi_iput_vara函数,实现数据并行存储,从各计算进程收集数据存入到I/O进程,其中<TYPE>为CHAR、INT、REAL,分别用来分发character、integer和real类型的数据;并行存储数据后快速写入硬件磁盘阵列。
2.根据权利要求1所述的区域耦合预报系统中ROMS模式的I/O并行加速方法,在构建映射关系之前,还包括以下步骤:初始化ROMS的I/O框架结构类型。
3.根据权利要求1所述的区域耦合预报系统中ROMS模式的I/O并行加速方法,并行读取的步骤,具体为:打开文件获取文件的变量信息,I/O进程并行读取数据,将文件数据按照映射关系分发到各个计算进程。
4.根据权利要求1所述的区域耦合预报系统中ROMS模式的I/O并行加速方法,其特征在于,并行输出的步骤,具体为:
定义输出文件的类型、属性、维度和变量信息;
按照变量数据类型从各计算进程收集数据存入到相应的I/O进程;
将各I/O进程的数据并行快速写入硬件磁盘阵列。
5.根据权利要求1所述的区域耦合预报系统中ROMS模式的I/O并行加速方法,其特征在于,定义进程数的步骤之前,还包括以下步骤:完成ROMS并行环境初始化工作。
6.根据权利要求1所述的区域耦合预报系统中ROMS模式的I/O并行加速方法,其特征在于,并行输出的步骤之后,还包括以下步骤:关闭已打开的并行I/O文件,终止并行环境。
7.一种区域耦合预报系统中ROMS模式的I/O并行加速装置,其特征在于,包括处理器以及存储器,所述存储器存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1至6中任一项所述的区域耦合预报系统中ROMS模式的I/O并行加速方法的各个步骤。
8.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至6中任一项所述的区域耦合预报系统中ROMS模式的I/O并行加速方法的各个步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910412804.5A CN110209353B (zh) | 2019-05-17 | 2019-05-17 | 区域耦合预报系统中roms模式的i/o并行加速方法、装置及介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910412804.5A CN110209353B (zh) | 2019-05-17 | 2019-05-17 | 区域耦合预报系统中roms模式的i/o并行加速方法、装置及介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110209353A CN110209353A (zh) | 2019-09-06 |
CN110209353B true CN110209353B (zh) | 2022-10-21 |
Family
ID=67787587
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910412804.5A Active CN110209353B (zh) | 2019-05-17 | 2019-05-17 | 区域耦合预报系统中roms模式的i/o并行加速方法、装置及介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110209353B (zh) |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110909297B (zh) * | 2019-11-22 | 2020-11-27 | 清华大学 | 一种数值预报的集合耦合同化系统及方法 |
CN111679859B (zh) * | 2020-06-11 | 2023-08-18 | 山东省计算中心(国家超级计算济南中心) | 一种面向i/o密集型高性能应用的自动化并行mpi-i/o加速方法 |
CN113190984B (zh) * | 2021-04-21 | 2022-10-14 | 中国海洋大学 | 水下声场模型bellhop并行实现方法 |
CN113177329B (zh) * | 2021-05-24 | 2022-05-27 | 清华大学 | 数值程序的数据处理系统 |
CN113377513B (zh) * | 2021-06-17 | 2024-04-05 | 吉林大学 | 一种针对全球耦合气候模式的进程调度优化方法 |
CN114924883B (zh) * | 2022-05-30 | 2024-10-15 | 苏州浪潮智能科技有限公司 | 一种确定最优进程映射的方法、装置、设备及可读介质 |
CN115391069B (zh) * | 2022-10-27 | 2023-02-03 | 山东省计算中心(国家超级计算济南中心) | 基于海洋模式roms的并行通讯方法及系统 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2012033693A2 (en) * | 2010-09-07 | 2012-03-15 | Saudi Arabian Oil Company | Machine, computer program product and method to carry out parallel reservoir simulation |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2002196960A (ja) * | 2000-12-25 | 2002-07-12 | Hitachi Ltd | ファイル入出力制御方法、ファイル管理サーバ及び並列計算機システム |
CN103309676B (zh) * | 2013-06-27 | 2016-12-28 | 曙光信息产业(北京)有限公司 | 用于海洋数值模拟ROMS的Web服务封装方法以及系统 |
US9413849B2 (en) * | 2013-12-05 | 2016-08-09 | International Business Machines Corporation | Distributing an executable job load file to compute nodes in a parallel computer |
CN105956226B (zh) * | 2016-04-14 | 2019-05-03 | 中国海洋大学 | 一种海洋数值模式并行框架的设计方法 |
-
2019
- 2019-05-17 CN CN201910412804.5A patent/CN110209353B/zh active Active
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2012033693A2 (en) * | 2010-09-07 | 2012-03-15 | Saudi Arabian Oil Company | Machine, computer program product and method to carry out parallel reservoir simulation |
Non-Patent Citations (1)
Title |
---|
并行 I /O 技术在海洋数值模式中的应用研究;黄伟建 等;《河 北 工 程 大 学 学 报 ( 自 然 科 学 版) 》;20160331;第33卷(第1期);第86-90页 * |
Also Published As
Publication number | Publication date |
---|---|
CN110209353A (zh) | 2019-09-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110209353B (zh) | 区域耦合预报系统中roms模式的i/o并行加速方法、装置及介质 | |
Tanaka et al. | Scalability of an unstructured grid continuous Galerkin based hurricane storm surge model | |
CN106777351A (zh) | 基于art树分布式系统图存储计算系统及其方法 | |
CN102799679B (zh) | 基于Hadoop的海量空间数据索引更新系统及方法 | |
CN101937425B (zh) | 基于gpu众核平台的矩阵并行转置方法 | |
CN106021567A (zh) | 一种基于Hadoop的海量矢量数据划分方法及系统 | |
CN103793525A (zh) | 基于局部迭代的MapReduce模型的图结点的权威值计算方法 | |
CN112035995B (zh) | 基于gpu计算技术的非结构网格潮汐潮流数值模拟方法 | |
CN110737870B (zh) | 一种用于在gpu上合并舒尔矩阵的方法及装置 | |
Turchetto et al. | A general design for a scalable MPI-GPU multi-resolution 2D numerical solver | |
CN112463739A (zh) | 基于海洋模式roms的数据处理方法及系统 | |
CN109446478A (zh) | 一种基于迭代和可重构方式的复协方差矩阵计算系统 | |
CN108334532A (zh) | 一种基于Spark的Eclat并行化方法、系统及装置 | |
CN112270083A (zh) | 一种多分辨建模与仿真方法及系统 | |
Shen et al. | Improving NASA's multiscale modeling framework for tropical cyclone climate study | |
CN107564100B (zh) | 一种等高线生成平滑实体的方法 | |
CN112817982B (zh) | 一种基于lsm树的动态幂律图存储方法 | |
Marshall et al. | Performance evaluation and enhancements of a flood simulator application for heterogeneous hpc environments | |
CN109766208A (zh) | 基于寄存器间通信的非对齐内存访问加速方法 | |
CN111274110B (zh) | 一种基于区块链的边缘设备性能评价方法、管理方法及介质 | |
CN118467664B (zh) | 基于格网缓存的多域融合仿真数据处理方法、系统及设备 | |
Luong et al. | Application of multiblock grid and dual-level parallelism in coastal ocean circulation modeling | |
Marshall et al. | Performance improvement of a two-dimensional flood simulation application in hybrid computing environments | |
Gourbesville et al. | AquaVar: High Performance Computing for Real Time Water Management | |
Huang et al. | Proved quick convex hull algorithm for scattered points |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
CP01 | Change in the name or title of a patent holder |
Address after: No.1, Wenhai Road, aoshanwei Town, Jimo City, Qingdao City, Shandong Province 266200 Patentee after: Qingdao Marine Science and Technology Center Address before: No.1, Wenhai Road, aoshanwei Town, Jimo City, Qingdao City, Shandong Province 266200 Patentee before: QINGDAO NATIONAL LABORATORY FOR MARINE SCIENCE AND TECHNOLOGY DEVELOPMENT CENTER |
|
CP01 | Change in the name or title of a patent holder |