[發(fā)明專利]一種數(shù)值應(yīng)用程序的軟件模塊集成系統(tǒng)及運行方法有效
| 申請?zhí)枺?/td> | 202010037868.4 | 申請日: | 2020-01-14 |
| 公開(公告)號: | CN111258674B | 公開(公告)日: | 2021-01-01 |
| 發(fā)明(設(shè)計)人: | 劉利 | 申請(專利權(quán))人: | 清華大學(xué) |
| 主分類號: | G06F9/445 | 分類號: | G06F9/445;G06F8/41;G06F16/25 |
| 代理公司: | 北京聿宏知識產(chǎn)權(quán)代理有限公司 11372 | 代理人: | 吳大建;張杰 |
| 地址: | 100084 北京市海淀區(qū)1*** | 國省代碼: | 北京;11 |
| 權(quán)利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 一種 數(shù)值 應(yīng)用程序 軟件 模塊 集成 系統(tǒng) 運行 方法 | ||
本發(fā)明提供一種數(shù)值應(yīng)用程序的軟件模塊集成系統(tǒng)及運行方法,該系統(tǒng)包括:外部過程資源管理模塊,用于外部過程的程序到動態(tài)鏈接庫的編譯;外部過程運行驅(qū)動管理模塊,用于使數(shù)值應(yīng)用程序能調(diào)用外部過程;外部過程參數(shù)信息管理模塊,用于使外部過程能獲取數(shù)值應(yīng)用程序的信息;外部過程線程級并行管理模塊,用于將多個外部過程組合為具有程序流程的外部過程包,并實現(xiàn)不同外部過程間的線程級并行;外部過程數(shù)據(jù)交換管理模塊,用于數(shù)值應(yīng)用程序與外部過程間數(shù)據(jù)導(dǎo)入與導(dǎo)出的操作;外部過程集成應(yīng)用程序接口模塊;外部過程集成配置文件接口模塊。通過建立具有不同數(shù)據(jù)結(jié)構(gòu)的外部過程的統(tǒng)一集成框架,實現(xiàn)不同外部過程間的線程級并行。
技術(shù)領(lǐng)域
本發(fā)明涉及軟件模塊集成技術(shù)領(lǐng)域,具體涉及一種數(shù)值應(yīng)用程序的軟件模塊集成系統(tǒng)及運行方法。
背景技術(shù)
地球系統(tǒng)模式是氣候演變規(guī)律研究、未來氣候預(yù)測和無縫隙數(shù)值預(yù)報等所不可或缺的數(shù)值應(yīng)用程序,由分別模擬大氣、陸面、海洋和海冰等地球系統(tǒng)圈層的分量模式構(gòu)成。經(jīng)過近幾十年的努力,地球系統(tǒng)模式得到了不斷進步,其程序量已突破了百萬行,這使得地球系統(tǒng)模式的發(fā)展,不僅涉及到如何理解與求解各圈層內(nèi)部及圈層之間的各種機理與機制等科學(xué)問題,還涉及到如何進行程序開發(fā)、軟件測試與軟件模塊集成的技術(shù)與工程問題。位于地球系統(tǒng)模式架構(gòu)中心位置的耦合器,是支撐地球系統(tǒng)模式軟件模塊化集成的一個關(guān)鍵基礎(chǔ)平臺,其連接著多個分量模式以構(gòu)成地球系統(tǒng)模式,在科學(xué)上通過分量模式間的通量交換來實現(xiàn)圈層間的相互作用,在技術(shù)上實現(xiàn)各分量模式之間的鏈接,協(xié)調(diào)各分量模式的并行計算,并控制著整個地球系統(tǒng)模式的積分。已有耦合器主要包括法國的OASIS,美國的MCT、FMS、ESMF、CPL,中國的C-Coupler。
耦合器主要負責分量模式到耦合模式的模塊化集成。隨著科學(xué)與技術(shù)的快速發(fā)展,人類所關(guān)注甚至已厘清的機理與機制越來越多,各分量模式的程序也變得更加復(fù)雜,例如有些大氣模式內(nèi)物理過程的代碼量已突破了50萬行,這使得需要進一步考慮如何實現(xiàn)一個分量模式內(nèi)的模塊化集成。
大氣模式(包含數(shù)值天氣預(yù)報模式)主要由動力框架與物理過程組成,其中動力框架負責求解整個三維大氣的動力方程,而物理過程則由一系列通常僅在垂直方向上進行求解的參數(shù)化方案組成。為了便捷集成物理參數(shù)化方案,通常需要為物理過程設(shè)計統(tǒng)一的數(shù)據(jù)結(jié)構(gòu)以存儲各物理量,例如常規(guī)的三維數(shù)據(jù)結(jié)構(gòu)或優(yōu)先考慮垂直方向的單柱數(shù)據(jù)結(jié)構(gòu)(如圖1所示,左側(cè)為三維數(shù)據(jù)結(jié)構(gòu),右側(cè)為單柱數(shù)據(jù)結(jié)構(gòu),這兩種數(shù)據(jù)結(jié)構(gòu)可以相互轉(zhuǎn)換)。對于一個三維物理量,當采用三維數(shù)據(jù)結(jié)構(gòu)時,一個MPI進程通常只為其分配一個三維數(shù)組,而當采用單柱數(shù)據(jù)結(jié)構(gòu)時,一個MPI進程會為其分配多個獨立的數(shù)組,每個數(shù)組存儲一個或多個單柱。當前,WRF(The Weather Research and Forecasting Model,天氣預(yù)報模式)與GRAPES等大氣模式的物理過程采用了三維數(shù)據(jù)結(jié)構(gòu),而CAM(Community AtmosphereModel Version)等大氣模式的物理過程采用了單柱數(shù)據(jù)結(jié)構(gòu)。與三維數(shù)據(jù)結(jié)構(gòu)相比,單柱數(shù)據(jù)結(jié)構(gòu)能加快處理器對存儲于內(nèi)存中的物理量的訪問,并能更好地解決物理過程的OpenMP加速與單柱間計算負載不平衡問題,從而提高物理過程的計算效率。在向物理過程中集成參數(shù)化方案時,需要確保兩者數(shù)據(jù)結(jié)構(gòu)的一致性,當存在不同時,通常需要對參數(shù)化方案進行修改。例如,當把基于單柱數(shù)據(jù)結(jié)構(gòu)發(fā)展的參數(shù)化方案集成進采用三維數(shù)據(jù)結(jié)構(gòu)的物理過程時,首先需要將參數(shù)化方案程序所使用的數(shù)據(jù)結(jié)構(gòu)從單柱方式修改為三維方式。
隨著物理過程中集成的參數(shù)化方案越來越多,特別是集成了同一功能的不同參數(shù)化方案以供用戶選擇使用(例如WRF模式,The Weather Research and ForecastingModel,即天氣預(yù)報模式)提供了多個對流參數(shù)化方案以供選擇使用與性能對比等),需要面向物理過程實現(xiàn)參數(shù)化方案的模塊化集成與便捷選擇。為了實現(xiàn)這兩項功能,美國的DTC與NCAR聯(lián)合研制了CCPP(即通用公共物理包)框架。CCPP框架基于統(tǒng)一的單柱數(shù)據(jù)結(jié)構(gòu),建立了參數(shù)化方案驅(qū)動程序的統(tǒng)一規(guī)范,管理了物理過程的公共變量,建立了參數(shù)化方案間基于共享公共變量的參數(shù)傳遞方式,采用了動態(tài)鏈接庫技術(shù)來集成參數(shù)化方案,并設(shè)計了能便捷選擇使用參數(shù)化方案配置文件接口。
該專利技術(shù)資料僅供研究查看技術(shù)是否侵權(quán)等信息,商用須獲得專利權(quán)人授權(quán)。該專利全部權(quán)利屬于清華大學(xué),未經(jīng)清華大學(xué)許可,擅自商用是侵權(quán)行為。如果您想購買此專利、獲得商業(yè)授權(quán)和技術(shù)合作,請聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/202010037868.4/2.html,轉(zhuǎn)載請聲明來源鉆瓜專利網(wǎng)。
- 對虛擬化應(yīng)用程序的基于策略的訪問
- 應(yīng)用程序執(zhí)行、應(yīng)用程序提供裝置和應(yīng)用程序分發(fā)方法
- 一種軟件保護方法、裝置及系統(tǒng)
- 應(yīng)用程序的開發(fā)方法和系統(tǒng)
- 應(yīng)用程序的擴展方法及裝置
- 一種應(yīng)用程序商店的應(yīng)用程序發(fā)布方法及裝置
- 一種應(yīng)用程序的監(jiān)控方法、裝置及系統(tǒng)
- 用于對虛擬化應(yīng)用程序的基于策略的訪問的方法和系統(tǒng)
- 應(yīng)用程序控制方法、裝置、終端及存儲介質(zhì)
- 一種應(yīng)用程序安裝、卸載方法及通信終端
- 一種基于應(yīng)用軟件散布的軟件授權(quán)與保護方法及系統(tǒng)
- 一種用于航空機載設(shè)備的軟件在線加載系統(tǒng)及方法
- 軟件構(gòu)建方法、軟件構(gòu)建裝置和軟件構(gòu)建系統(tǒng)
- 惡意軟件檢測方法及裝置
- 一種基于軟件基因的軟件同源性分析方法和裝置
- 軟件引入系統(tǒng)、軟件引入方法及存儲介質(zhì)
- 軟件驗證裝置、軟件驗證方法以及軟件驗證程序
- 使用靜態(tài)和動態(tài)惡意軟件分析來擴展惡意軟件的動態(tài)檢測
- 一種工業(yè)控制軟件構(gòu)建方法和軟件構(gòu)建系統(tǒng)
- 可替換游戲軟件與測驗軟件的裝置與方法





