CN112597669B - 一种模拟试验平台及其工作方法 - Google Patents

一种模拟试验平台及其工作方法 Download PDF

Info

Publication number
CN112597669B
CN112597669B CN202110226651.2A CN202110226651A CN112597669B CN 112597669 B CN112597669 B CN 112597669B CN 202110226651 A CN202110226651 A CN 202110226651A CN 112597669 B CN112597669 B CN 112597669B
Authority
CN
China
Prior art keywords
simulation test
configuration
test
simulation
numerical
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
Application number
CN202110226651.2A
Other languages
English (en)
Other versions
CN112597669A (zh
Inventor
李锐喆
赵彤
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Carpura Technology Co ltd
Original Assignee
Beijing Carpura Technology Co ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Beijing Carpura Technology Co ltd filed Critical Beijing Carpura Technology Co ltd
Priority to CN202110226651.2A priority Critical patent/CN112597669B/zh
Publication of CN112597669A publication Critical patent/CN112597669A/zh
Application granted granted Critical
Publication of CN112597669B publication Critical patent/CN112597669B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/20Design optimisation, verification or simulation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/40Transformation of program code
    • G06F8/41Compilation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/70Software maintenance or management
    • G06F8/71Version control; Configuration management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2111/00Details relating to CAD techniques
    • G06F2111/10Numerical modelling

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • Evolutionary Computation (AREA)
  • Geometry (AREA)
  • Debugging And Monitoring (AREA)

Abstract

本发明提供一种模拟试验平台及其工作方法,所述模拟试验平台,用于耦合模式集合运行的模拟试验,所述模拟试验平台包括:资源管理单元,用于存放和提供所述耦合模式集合运行的模拟试验需要的数值模拟资源信息,其中,所述数值模拟资源信息至少包括数值软件资源和数据资源;控制单元,用于进行耦合模式集合运行的模拟试验。本发明的模拟试验平台,具有通用性,使用户既能在该平台上便捷开展耦合模式集合运行的模拟试验,同时能将耦合模式和算法等资源信息便捷集成到模拟试验平台上,且为试验结果的可重现性提供了支持。

Description

一种模拟试验平台及其工作方法
技术领域
本发明涉及耦合模式的模拟试验技术领域,具体涉及一种模拟试验平台及其工作方法。
背景技术
包括地球系统模式和耦合数值预报模式的耦合模式是气候研究和气象海洋预报等所不可或缺的并行数值应用程序,由分别模拟大气、陆面、海洋和海冰等的分量模式通过耦合器的耦合而构成。将用耦合模式进行天气、气候等模拟的过程称为模拟试验,用耦合模式开展模拟试验的一个典型流程是:配置试验、编译试验所使用的耦合模式的程序(简称编译试验)、运行试验并取得模拟结果(简称运行试验)。
组成耦合模式的不同分量模式的程序往往由不同单位或团队所研发,因而不同分量模式通常拥有不同的配置、编译和运行流程及工具。这样的差异使得在将分量模式集成到耦合模式时,通常需要修改分量模式的配置、编译和运行流程及工具,这会带来大量工作。
耦合模式的计算量不断增加,是典型的高性能计算程序,伴随高性能计算机的快速发展,常需要在不同高性能计算机之间移植耦合模式。耦合模式移植通常会要求针对目标计算机平台的编译器、运行库和提交器等内容进行适配,导致需要修改耦合模式甚至各分量模式的配置、编译与运行流程,这也会带来大量工作。
耦合模式的模拟结果总会存在不确定性(例如数值天气预报模式的结果相对于真实天气总会有误差)。基于同一初值的扰动或多个初值产生的同一耦合模式的集合运行(同一耦合模式会运行多个样本,每个样本使用一个初值)是降低结果不确定的常用方法。耦合模式的集合运行会明显进一步增加试验配置、试验编译和试验运行的复杂度。
目前,还没有能很好支撑耦合模式集合运行的通用模拟试验平台。
发明内容
本发明提供一种模拟试验平台及其工作方法,能够在不增加试验配置、试验编译和试验运行的复杂度的情况下,很好地支撑耦合模式集合运行。
第一方面,本发明提供一种模拟试验平台,用于耦合模式集合运行的模拟试验,所述模拟试验平台包括:
资源管理单元,用于存放和提供所述耦合模式集合运行的模拟试验需要的数值模拟资源信息,其中,所述数值模拟资源信息至少包括数值软件资源和数据资源;
控制单元,用于进行耦合模式集合运行的模拟试验。
在一些实施方式中,所述资源管理单元,包括:
模拟试验资源管理模块,用于管理所述模拟试验平台的数值软件资源和数据资源,制定存储和查找不同数值软件资源及不同数据文件的规则,并提供用于选用数值软件资源、选用数据文件的接口与规范。
在一些实施方式中,所述资源管理单元,包括:
模拟试验配置管理模块,用于提供编写模拟试验配置信息的第一配置接口与规范,以及提供存储、管理和查找耦合模式集合运行的模拟试验配置信息的功能。
在一些实施方式中,所述第一配置接口,用于:
制定描述耦合模式集合与样本间层次关系的规范;
制定描述耦合数值软件与分量数值软件间层次关系的规范;
制定设置分量数值软件与算法间关系的规范;
制定设置耦合模式集合样本数的规范;
制定选择耦合数值软件、分量数值软件、算法及程序版本的规范;
制定选择输入数据文件的规范;
制定设置各数值软件资源编译配置和并行配置的规范;
制定选择计算机平台的规范;
制定设置运行参数的规范;
制定编写各数值软件资源的配置过程和编译过程的规范,提供启动各数值软件资源配置过程和编译过程的接口,以使任意分量模式或任意算法能在所述模拟试验平台上留用原有的配置和编译工具。
在一些实施方式中,所述模拟试验配置管理模块提供存储、管理和查找耦合模式集合运行的模拟试验配置信息的功能时,用于:
将模拟试验配置信息存放在预设目录下,使得所述模拟试验配置信息能够被查找、管理和搜索。
在一些实施方式中,所述资源管理单元,包括:
计算机平台信息管理模块,用于提供编写计算机平台配置信息的第二配置接口,以及提供存储、管理和查找计算机平台配置信息的功能。
在一些实施方式中,所述第二配置接口用于制定计算机平台的编译环境,以及在计算机平台上启动模拟试验的并行运行的规范。
在一些实施方式中,所述控制单元,包括:
模拟试验驱动模块,用于对所述资源管理单元存放的数值模拟资源信息进行整合与使用,提供使用所述模拟试验平台的操作接口,以使用户能通过所述操作接口开展耦合模式集合运行的模拟试验。
在一些实施方式中,所述模拟试验驱动模块,包括:
试验配置分析子模块,用于以耦合模式集合运行的模拟试验配置为输入,分析所述模拟试验配置中耦合数值软件与各分量数值软件之间的关系、耦合模式集合与样本之间的关系、数值软件与算法之间的关系,确定各数值软件资源的配置信息以及模拟试验所使用计算机平台的配置信息;
创建试验子模块,用于提供调用所述创建试验子模块自身的接口脚本:首先,查找到模拟试验配置;然后,通过调用所述试验配置分析子模块确定各数值软件资源的配置信息和计算机平台的配置信息;然后,根据所述模拟试验配置、所述各数值软件资源的配置信息和所述计算机平台的配置信息,创建模拟试验的整体工作目录,并将调用试验配置子模块、试验编译子模块、试验运行子模块的接口脚本拷贝到所述整体工作目录下;
试验配置子模块,用于提供调用所述试验配置子模块自身的接口脚本:根据各数值软件资源的配置信息,在所述模拟试验的整体工作目录创建目录结构,将各数值软件资源的程序以及配置、编译工具和各数据文件拷贝或链接到所述目录结构下,并分别完成各数值软件资源的配置;
试验编译子模块,用于提供调用所述试验编译子模块自身的接口脚本:根据所述试验配置子模块所确定的各数值软件资源的配置信息以及模拟试验所使用计算机平台的配置信息,完成模拟试验的各软件资源的编译;提供通用编译工具,也支持用户设置使用数值软件资源自身的编译工具;在处理编译过程中自动切换到各数值软件资源的配置信息以及模拟试验所使用计算机平台的配置信息所指定的程序代码版本;
试验运行子模块,用于提供调用所述试验运行子模块自身的接口脚本:根据所述试验配置子模块确定的各数值软件资源的配置信息以及模拟试验所使用计算机平台的配置信息,完成耦合模式集合运行的模拟试验到相应计算机平台上并行运行的提交。
在一些实施方式中,在多个耦合模式集合样本共享同一程序代码版本的情况下,所述试验编译子模块只编译程序代码版本一次,且所述试验编译子模块支持增量编译,支持对串行编译和并行编译的设置。
在一些实施方式中,所述模拟试验驱动模块,还包括:
模拟试验重现管理子模块,用于在配置耦合模式集合运行的模拟试验时被所述试验配置子模块调用,对模拟试验所有配置、输入参数、输入数据文件、计算机平台配置信息进行记录,从而生成试验重现信息包并保存;当基于试验重现信息包重现相应的模拟试验时,所述模拟试验重现管理子模块将所述试验重现信息包中所记录的内容展开,以重现模拟试验的工作目录结构及其中的信息。
在一些实施方式中,所述数值软件资源至少包括以下之一:
数值软件的程序;
工具库;以及
算法;
所述数据资源包括模拟试验所需的数据集,所述数据集至少包括以下之一:
输入数据;
输出数据;
所述输入数据/输出数据中至少包括以下之一:
数据值;
元数据;以及
数据说明。
第二方面,本发明提供一种第一方面所述的模拟试验平台的工作方法,包括:开展耦合模式集合运行的模拟试验;
所述开展耦合模式集合运行的模拟试验,包括:
创建耦合模式集合运行的模拟试验;
对所述模拟试验进行配置;
对所述模拟试验所涉及到的源程序的编译和链接;
启动所述模拟试验在指定计算机平台上的运行。
在一些实施方式中,所述工作方法还包括:增加数值模拟资源,所述增加数值模拟资源是将增加的数值软件资和数据资源集成到所述模拟试验平台,包括:
将增加的数值软件资源及数据资源存入所述模拟试验平台的相应目录中;
为增加的数值软件资源配置选用该数值软件资源及程序版本、启动该数值软件资源配置过程和编译过程的接口;为增加的数据资源配置选用数据文件的接口;
其中,启动该数值软件资源编译过程的接口使用模拟试验平台提供的通用编译工具或该数值软件资源自身的编译工具。
在一些实施方式中,所述工作方法还包括:增加数值模拟配置,包括:
为耦合模式集合运行的模拟试验编写配置信息;
将所述配置信息存放在相应目录下,使得所述配置信息能被查找、管理和搜索。
在一些实施方式中,所述工作方法还包括:增加计算机平台的配置信息,包括:
制定包含计算机平台的编译环境、并行运行启动方式的计算机平台的配置信息;
将该计算机平台的配置信息存放在相应目录下,使得该计算机平台的配置信息能被查找、管理和搜索。
本发明至少具有如下有益效果:
本发明的模拟试验平台,具有通用性,使用户既能在该平台上便捷开展耦合模式集合运行的模拟试验,同时能将耦合模式和算法等资源信息便捷集成到模拟试验平台上,且为试验结果的可重现性提供了支持。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本发明的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
图1是本发明实施例提供的模拟试验资源管理模块示意图;
图2是本发明实施例提供的模拟试验配置管理模块示意图;
图3是本发明实施例提供的计算机平台信息管理模块示意图;
图4是本发明实施例提供的模拟试验驱动模块示意图;
图5是本发明实施例提供的耦合模式的集合运行示例。
具体实施方式
下面将结合本发明实施例中附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本发明实施例的组件可以以各种不同的配置来布置和设计。因此,以下对在附图中提供的本发明的实施例的详细描述并非旨在限制要求保护的本发明的范围,而是仅仅表示本发明的选定实施例。基于本发明的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。
在相关技术中,为了提高用户开展模拟试验的便捷性,研发了能配置、编译和运行试验的平台(简称模拟试验平台),其中美国国家大气研究中心为其地球系统模式CESM(TheCommunity Earth System Model)研制的模拟试验平台(简称CESM试验平台)具有代表性。尽管用户能在该平台上便捷开展模拟试验,但该平台与CESM模式深度捆绑,且任何要集成到CESM模式的新分量模式都需要遵照这个模式平台的规范,导致需要大量修改该新分量模式的配置、编译和运行流程及工具,明显增加了工作量。
实施例一
本实施例提供一种模拟试验平台,用于耦合模式集合运行的模拟试验,耦合模式集合运行可以是基于同一初值的扰动或多个初值所产生的同一耦合模式的集合运行,也就是同一耦合模式会运行多个样本,每个样本使用一个初值。本实施例的模拟试验平台可用于如图5所示的耦合模式1的集合运行,耦合模式1由分量模式1_1、1_2等组成。耦合模式1的各集合成员1、2、3等的分量模式都相同,启动运行的初值可不同,例如耦合模式1的集合成员1对应初值1,耦合模式1的集合成员2对应初值2,耦合模式1的集合成员3对应初值3。耦合模式可以是包括地球系统模式和耦合数值预报模式的耦合模式,但不限于此。
上述模拟试验平台包括:
资源管理单元,用于存放和提供耦合模式集合运行的模拟试验需要的数值模拟资源信息,其中,数值模拟资源信息至少包括耦合模式集合运行的模拟试验所需的数值软件资源和数据资源。
控制单元,用于进行耦合模式集合运行的模拟试验。
在一些实施方式中,上述资源管理单元,包括:模拟试验资源管理模块(如图1所示)、模拟试验配置管理模块(如图2所示)以及计算机平台信息管理模块(如图3所示),这三个资源管理型模块存放和提供耦合模式集合运行的模拟试验需要的数值模拟资源信息。
模拟试验资源管理模块,用于管理模拟试验平台的数值软件资源和数据资源,制定存储和查找不同数值软件资源及不同数据文件的规则,并提供用于选用数值软件资源、选用数据文件的接口与规范。
在一些实施方式中,数值模拟资源信息中,
数值软件资源至少包括以下之一:
数值软件的程序;
工具库;以及
算法库。
在一些情形下,数值软件资源还可以包括数值软件的程序的配置和编译工具。
数据资源包括模拟试验所需的数据集,所述数据集至少包括以下之一:
输入数据;
输出数据;
输入数据/输出数据中至少包括以下之一:
数据值;
元数据;以及
数据说明。
其中的元数据为数据的数据,即数据的描述信息。
模拟试验配置管理模块,用于提供编写模拟试验配置信息的第一配置接口与规范,以及提供存储、管理和查找耦合模式集合运行的模拟试验配置信息的功能。
耦合模式集合运行的模拟试验所涉及的数值软件包括耦合数值软件和分量数值软件,该第一配置接口,用于:
制定描述耦合模式集合与样本间层次关系的规范;
制定描述耦合数值软件与分量数值软件间层次关系的规范;
制定设置分量数值软件与算法间关系的规范;
制定设置耦合模式集合样本数的规范;
制定选择耦合数值软件、分量数值软件、算法及程序版本的规范;
制定选择输入数据文件的规范;
制定设置各数值软件资源编译配置和并行配置的规范;其中,编译配置可以包括编译器、编译选项、链接的库、动态或静态链接方式等,并行配置可以包括进程与线程的并行度设置等;
制定选择计算机平台的规范;
制定设置运行参数的规范;其中,运行参数可以包括耦合数值软件整体、各分量数值软件、各集合样本和各算法的输入参数等;
制定编写各数值软件资源的配置过程和编译过程的规范,提供启动各数值软件资源(如耦合数值软件、各分量数值软件、集合、各集合样本、各算法等)配置过程和编译过程的接口,以使任意分量模式或任意算法能在模拟试验平台上留用原有的配置和编译工具。
在一些实施方式中,第一配置接口还提供了用户自定义配置相关的公共参数变量的功能,以使用户可以通过第一配置接口配置各种公共参数变量。
在一些实施方式中,模拟试验配置管理模块提供存储、管理和查找耦合模式集合运行的模拟试验配置信息的功能时,用于:
将模拟试验配置信息存放在预设目录下,使得模拟试验配置信息能够被查找、管理和搜索。
计算机平台信息管理模块,用于提供编写计算机平台配置信息的第二配置接口,以及提供存储、管理和查找计算机平台配置信息的功能。
该第二配置接口用于制定计算机平台的编译环境,以及在计算机平台上启动模拟试验的并行运行的规范。
在一些实施方式中,控制单元,包括:
模拟试验驱动模块(如图4所示),用于对资源管理单元存放的数值模拟资源信息进行整合与使用,提供使用模拟试验平台的操作接口,以使用户能通过该操作接口开展耦合模式集合运行的模拟试验。
模拟试验驱动模块作为模拟试验平台的中枢,用户通过调用模拟试验驱动模块中各模块提供的操作接口(操作接口通过接口脚本实现)来进行模拟试验。
在一些实施方式中,模拟试验驱动模块,包括:试验配置分析子模块、创建试验子模块、试验配置子模块、试验编译子模块以及试验运行子模块。因此,根据调用操作,各模块提供相应的操作接口,进行耦合模式集合运行的模拟试验。
试验配置分析子模块,用于以耦合模式集合运行的模拟试验配置为输入,分析模拟试验配置中耦合数值软件与各分量数值软件之间的关系、耦合模式集合与样本之间的关系、数值软件与算法之间的关系,确定各数值软件资源的配置信息以及模拟试验所使用计算机平台的配置信息。
创建试验子模块,用于提供调用创建试验子模块自身的接口脚本:首先,通过调用模拟试验配置管理模块查找到用户所指定的模拟试验配置;然后,通过调用所述试验配置分析子模块确定各数值软件资源的配置信息和计算机平台的配置信息;然后,根据模拟试验配置、各数值软件资源的配置信息和计算机平台的配置信息,创建模拟试验的整体工作目录,并将调用试验配置子模块、试验编译子模块、试验运行子模块的接口脚本拷贝到该整体工作目录下,以完成模拟试验的创建。
试验配置子模块,用于提供调用试验配置子模块自身的接口脚本:根据各数值软件资源的配置信息,在模拟试验的整体工作目录创建目录结构,将各数值软件资源的程序以及配置、编译工具和各数据文件拷贝或链接到该目录结构下,并分别完成各数值软件资源的配置。
试验编译子模块,用于提供调用试验编译子模块自身的接口脚本:根据试验配置子模块所确定的各数值软件资源的配置信息以及模拟试验所使用计算机平台的配置信息,完成模拟试验的各软件资源(例如耦合数值软件、各分量数值软件、耦合模式集合、各集合样本、各算法)的编译;提供通用编译工具,也支持用户设置使用数值软件资源自身的编译工具;在处理编译过程中自动切换到各数值软件资源的配置信息以及模拟试验所使用计算机平台的配置信息所指定的程序代码版本。
值得说明的是,在多个耦合模式集合样本共享同一程序代码版本的情况下,试验编译子模块只编译程序代码版本一次,以避免重复编译,从而提高运行效率,且试验编译子模块支持增量编译,支持对串行编译和并行编译的设置,以提高编译效率。
试验运行子模块,用于提供调用试验运行子模块自身的接口脚本:根据试验配置子模块确定的各数值软件资源的配置信息以及模拟试验所使用计算机平台的配置信息,尤其是配置信息中与运行所需计算资源相关的信息,使用计算机平台信息管理模块所提供的相应计算机平台的配置信息,完成耦合模式集合运行的模拟试验到相应计算机平台上并行运行的提交。
在一些实施方式中,模拟试验驱动模块,还包括:
模拟试验重现管理子模块,用于在配置耦合模式集合运行的模拟试验时被所述试验配置子模块调用,对模拟试验所有配置信息、输入参数、输入数据文件、计算机平台的配置信息进行记录,从而生成试验重现信息包并保存,用户基于一个试验重现信息包重现相应模拟试验;当基于试验重现信息包重现相应的模拟试验时,模拟试验重现管理子模块将试验重现信息包中所记录的内容展开,以重现模拟试验的工作目录结构及其中的信息。展开内容时,一并检查用户当前提供的数据与信息包中记录的数据信息是否一致,不一致时向用户报错;信息展开后,试验的工作目录结构及其中的信息都已建立好。试验重现信息包中既可以包含数据文件的完整内容,也可以只记录数据文件的校验信息,以减少试验重现信息包所需的存储空间。
通过本实施例提供的模拟试验平台,用户可以在该模拟试验平台上便捷开展耦合模式集合运行的模拟试验,也能将耦合模式和算法等便捷集成到模拟试验平台上,且为试验结果的可重现性供了支持。
实施例二
在实施例一提供的模拟试验平台基础上,本实施例提供一种模拟试验平台的工作方法,包括:开展耦合模式集合运行的模拟试验;
开展耦合模式集合运行的模拟试验,包括:
(1)调用创建试验子模块的接口脚本,创建耦合模式集合运行的模拟试验;
(2)调用试验配置子模块的接口脚本,对模拟试验进行配置;
(3)调用试验编译子模块的接口脚本,对模拟试验所涉及到的源程序的编译和链接;
(4)调用试验运行子模块,启动模拟试验在指定计算机平台上的运行。
在一些实施方式中,该工作方法还包括:增加数值模拟资源,增加数值模拟资源是将增加的数值软件资和数据资源集成到模拟试验平台,包括:
(1)将增加的数值软件资源及数据资源存入模拟试验平台的相应目录中;将数值软件资源的源代码及版本管理信息、配置与编译的工具等存入到模拟试验平台的数值模拟资源的相关目录中;将数据资源存入到模拟试验平台的数值模拟资源的相关目录中;
(2)为增加的数值软件资源配置选用该数值软件资源及程序版本、启动该数值软件资源配置过程和编译过程的接口;为增加的数据资源配置选用数据文件的接口;
其中,启动该数值软件资源编译过程的接口使用模拟试验平台提供的通用编译工具或该数值软件资源自身的编译工具。
在一些实施方式中,该工作方法还包括:增加数值模拟配置。
增加数值模拟配置,包括:
(1)基于模拟试验配置管理模块提供的第一配置接口,为耦合模式集合运行的模拟试验编写配置信息;
(2)将编写的配置信息存放在模拟试验配置管理模块管理的相应目录下,使得该配置信息能被查找、管理和搜索。
用户也可以更改已有模拟试验的配置信息。
在一些实施方式中,该工作方法还包括:增加计算机平台的配置信息。
增加计算机平台的配置信息,包括:
(1)制定包含计算机平台的编译环境、并行运行启动方式的计算机平台的配置信息;
(2)将该计算机平台的配置信息存放在模拟试验配置管理模块管理的相应目录下,使得该计算机平台的配置信息能被查找、、管理和搜索。
通过本实施例提供的模拟试验平台的工作方法,可以实现增加数值模拟资源、增加数值模拟配置、开展数值模拟试验、增加计算机平台信息等不同的工作方式,以通过该模拟试验平台开展模拟试验的各项工作,无需修改耦合数值软件、分量数值软件的配置、编译和运行流程及工具等,明显增加了工作量。
在本发明实施例所提供的几个实施例中,应该理解到,所揭露的平台和方法,也可以通过其它的方式实现。以上所描述的平台和方法实施例仅仅是示意性的。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
虽然本发明所揭露的实施方式如上,但所述的内容只是为了便于理解本发明而采用的实施方式,并非用以限定本发明。任何本发明所属技术领域内的技术人员,在不脱离本发明所揭露的精神和范围的前提下,可以在实施的形式上及细节上作任何的修改与变化,但本发明的专利保护范围,仍须以所附的权利要求书所界定的范围为准。

Claims (14)

1.一种模拟试验平台,其特征在于,用于耦合模式集合运行的模拟试验,所述耦合模式是包括地球系统模式和耦合数值预报模式的耦合模式,所述耦合模式的各集合成员的分量模式都相同,所述耦合模式集合运行是基于同一初值的扰动或多个初值所产生的同一耦合模式的集合运行,同一耦合模式运行多个样本,每个样本使用一个初值,所述模拟试验平台包括:
资源管理单元,用于存放和提供所述耦合模式集合运行的模拟试验需要的数值模拟资源信息,其中,所述数值模拟资源信息至少包括数值软件资源和数据资源;
控制单元,用于进行耦合模式集合运行的模拟试验;
所述资源管理单元,包括模拟试验配置管理模块,用于提供编写模拟试验配置信息的第一配置接口与规范;
所述第一配置接口,用于:
制定描述耦合模式集合与样本间层次关系的规范;
制定设置分量数值软件与算法间关系的规范;
制定设置耦合模式集合样本数的规范;
所述控制单元,包括:
模拟试验驱动模块,用于对所述资源管理单元存放的数值模拟资源信息进行整合与使用,提供使用所述模拟试验平台的操作接口,以使用户能通过所述操作接口开展耦合模式集合运行的模拟试验;
所述模拟试验驱动模块,包括:
试验配置分析子模块,用于以耦合模式集合运行的模拟试验配置为输入,分析所述模拟试验配置中耦合数值软件与各分量数值软件之间的关系、耦合模式集合与样本之间的关系、数值软件与算法之间的关系,确定各数值软件资源的配置信息以及模拟试验所使用计算机平台的配置信息;
创建试验子模块,用于提供调用所述创建试验子模块自身的接口脚本:首先,查找到模拟试验配置;然后,通过调用所述试验配置分析子模块确定各数值软件资源的配置信息和计算机平台的配置信息;然后,根据所述模拟试验配置、所述各数值软件资源的配置信息和所述计算机平台的配置信息,创建模拟试验的整体工作目录,并将调用试验配置子模块、试验编译子模块、试验运行子模块的接口脚本拷贝到所述整体工作目录下;
试验配置子模块,用于提供调用所述试验配置子模块自身的接口脚本:根据各数值软件资源的配置信息,在所述模拟试验的整体工作目录创建目录结构,将各数值软件资源的程序以及配置、编译工具和各数据文件拷贝或链接到所述目录结构下,并分别完成各数值软件资源的配置;
试验编译子模块,用于提供调用所述试验编译子模块自身的接口脚本:根据所述试验配置子模块所确定的各数值软件资源的配置信息以及模拟试验所使用计算机平台的配置信息,完成模拟试验的各软件资源的编译;提供通用编译工具,也支持用户设置使用数值软件资源自身的编译工具;在处理编译过程中自动切换到各数值软件资源的配置信息以及模拟试验所使用计算机平台的配置信息所指定的程序代码版本;
试验运行子模块,用于提供调用所述试验运行子模块自身的接口脚本:根据所述试验配置子模块确定的各数值软件资源的配置信息以及模拟试验所使用计算机平台的配置信息,完成耦合模式集合运行的模拟试验到相应计算机平台上并行运行的提交。
2.根据权利要求1所述的模拟试验平台,其特征在于,所述资源管理单元,包括:
模拟试验资源管理模块,用于管理所述模拟试验平台的数值软件资源和数据资源,制定存储和查找不同数值软件资源及不同数据文件的规则,并提供用于选用数值软件资源、选用数据文件的接口与规范。
3.根据权利要求1所述的模拟试验平台,其特征在于,所述模拟试验配置管理模块,还用于提供存储、管理和查找耦合模式集合运行的模拟试验配置信息的功能。
4.根据权利要求3所述的模拟试验平台,其特征在于,所述第一配置接口,用于:
制定描述耦合数值软件与分量数值软件间层次关系的规范;
制定选择耦合数值软件、分量数值软件、算法及程序版本的规范;
制定选择输入数据文件的规范;
制定设置各数值软件资源编译配置和并行配置的规范;
制定选择计算机平台的规范;
制定设置运行参数的规范;
制定编写各数值软件资源的配置过程和编译过程的规范,提供启动各数值软件资源配置过程和编译过程的接口,以使任意分量模式或任意算法能在所述模拟试验平台上留用原有的配置和编译工具。
5.根据权利要求3所述的模拟试验平台,其特征在于,所述模拟试验配置管理模块提供存储、管理和查找耦合模式集合运行的模拟试验配置信息的功能时,用于:
将模拟试验配置信息存放在预设目录下,使得所述模拟试验配置信息能够被查找、管理和搜索。
6.根据权利要求1所述的模拟试验平台,其特征在于,所述资源管理单元,包括:
计算机平台信息管理模块,用于提供编写计算机平台配置信息的第二配置接口,以及提供存储、管理和查找计算机平台配置信息的功能。
7.根据权利要求6所述的模拟试验平台,其特征在于,所述第二配置接口用于制定计算机平台的编译环境,以及在计算机平台上启动模拟试验的并行运行的规范。
8.根据权利要求1所述的模拟试验平台,其特征在于,在多个耦合模式集合样本共享同一程序代码版本的情况下,所述试验编译子模块只编译程序代码版本一次,且所述试验编译子模块支持增量编译,支持对串行编译和并行编译的设置。
9.根据权利要求1所述的模拟试验平台,其特征在于,所述模拟试验驱动模块,还包括:
模拟试验重现管理子模块,用于在配置耦合模式集合运行的模拟试验时被所述试验配置子模块调用,对模拟试验所有配置、输入参数、输入数据文件、计算机平台配置信息进行记录,从而生成试验重现信息包并保存;当基于试验重现信息包重现相应的模拟试验时,所述模拟试验重现管理子模块将所述试验重现信息包中所记录的内容展开,以重现模拟试验的工作目录结构及其中的信息。
10.根据权利要求1所述的模拟试验平台,其特征在于,所述数值软件资源至少包括以下之一:
数值软件的程序;
工具库;以及
算法库;
所述数据资源包括模拟试验所需的数据集,所述数据集至少包括以下之一:
输入数据;
输出数据;
所述输入数据/输出数据中至少包括以下之一:
数据值;
元数据;以及
数据说明。
11.权利要求1至10中任一项所述的模拟试验平台的工作方法,其特征在于,包括:开展耦合模式集合运行的模拟试验;
所述开展耦合模式集合运行的模拟试验,包括:
创建耦合模式集合运行的模拟试验;
对所述模拟试验进行配置;
对所述模拟试验所涉及到的源程序的编译和链接;
启动所述模拟试验在指定计算机平台上的运行。
12.根据权利要求11所述的工作方法,其特征在于,还包括:增加数值模拟资源,所述增加数值模拟资源是将增加的数值软件资源和数据资源集成到所述模拟试验平台,包括:
将增加的数值软件资源及数据资源存入所述模拟试验平台的相应目录中;
为增加的数值软件资源配置选用该数值软件资源及程序版本、启动该数值软件资源配置过程和编译过程的接口;为增加的数据资源配置选用数据文件的接口;
其中,启动该数值软件资源编译过程的接口使用模拟试验平台提供的通用编译工具或该数值软件资源自身的编译工具。
13.根据权利要求11所述的工作方法,其特征在于,还包括:增加数值模拟配置,包括:
为耦合模式集合运行的模拟试验编写配置信息;
将所述配置信息存放在相应目录下,使得所述配置信息能被查找、管理和搜索。
14.根据权利要求11所述的工作方法,其特征在于,还包括:增加计算机平台的配置信息,包括:
制定包含计算机平台的编译环境、并行运行启动方式的计算机平台的配置信息;
将该计算机平台的配置信息存放在相应目录下,使得该计算机平台的配置信息能被查找、搜索。
CN202110226651.2A 2021-03-02 2021-03-02 一种模拟试验平台及其工作方法 Active CN112597669B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110226651.2A CN112597669B (zh) 2021-03-02 2021-03-02 一种模拟试验平台及其工作方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110226651.2A CN112597669B (zh) 2021-03-02 2021-03-02 一种模拟试验平台及其工作方法

Publications (2)

Publication Number Publication Date
CN112597669A CN112597669A (zh) 2021-04-02
CN112597669B true CN112597669B (zh) 2021-08-27

Family

ID=75207824

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110226651.2A Active CN112597669B (zh) 2021-03-02 2021-03-02 一种模拟试验平台及其工作方法

Country Status (1)

Country Link
CN (1) CN112597669B (zh)

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6839748B1 (en) * 2000-04-21 2005-01-04 Sun Microsystems, Inc. Synchronous task scheduler for corba gateway
CN102364488B (zh) * 2011-10-14 2014-07-02 中国运载火箭技术研究院 一种合成环境模拟平台
CN102945165B (zh) * 2012-10-31 2015-08-19 中国运载火箭技术研究院 虚拟试验支撑平台
CN110909297B (zh) * 2019-11-22 2020-11-27 清华大学 一种数值预报的集合耦合同化系统及方法
CN112148266B (zh) * 2020-09-30 2022-04-01 清华大学 地球系统耦合模式的自动生成方法及应用

Also Published As

Publication number Publication date
CN112597669A (zh) 2021-04-02

Similar Documents

Publication Publication Date Title
US10162612B2 (en) Method and apparatus for inventory analysis
US8196113B2 (en) Realtime creation of datasets in model based testing
US8225288B2 (en) Model-based testing using branches, decisions, and options
US6397378B1 (en) Test executive system and method including distributed type storage and conflict resolution
CN111832236B (zh) 一种芯片回归测试方法、系统、电子设备及存储介质
Ostrand et al. A visual test development environment for GUI systems
US7020852B2 (en) Automation of the development, testing, and release of a flow framework and methodology to design integrated circuits
US6243835B1 (en) Test specification generation system and storage medium storing a test specification generation program
US20070240102A1 (en) Software development tool for sharing test and deployment assets
US20070061780A1 (en) Enterprise resource planning system test framework
CN101866315B (zh) 软件开发工具的测试方法及系统
CN115080398A (zh) 一种接口自动化测试系统及方法
Peter et al. Sisyphus, a workflow manager designed for machine translation and automatic speech recognition
CN113094252B (zh) 测试用例生成方法、装置、计算机设备及存储介质
CN111966760A (zh) 基于Hive数据仓库的测试数据生成方法及装置
JP4675639B2 (ja) データ処理システム、アプリケーションプログラムのカスタマイズパラメータを表示する方法およびコンピュータプログラム製品
CN111143228B (zh) 基于决策表法的测试代码生成方法及装置
CN112597669B (zh) 一种模拟试验平台及其工作方法
CN109491904B (zh) 一种SparkSQL应用程序的自动化测试方法和装置
Belman An approach to integrating and creating flexible software environments supporting the design of complex systems
CN115794254A (zh) 基于云计算的组件研发管理平台和方法
KR20060079690A (ko) 템플릿과 패턴을 이용한 컴포넌트 기반의 프로그래밍 자동화 방법
US20230297418A1 (en) Computer-Implemented Method for Performing a System Assessment
Radwan et al. Model-Based Approach for Supporting Quick Caching at iOS Platform
EP4250166A1 (en) Computer-implemented method for performing a system assessment

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