检索规则说明:AND代表“并且”;OR代表“或者”;NOT代表“不包含”;(注意必须大写,运算符两边需空一格)
检 索 范 例 :范例一: (K=图书馆学 OR K=情报学) AND A=范并思 范例二:J=计算机应用与软件 AND (U=C++ OR U=Basic) NOT M=Visual
作 者:李佳静 杨泽 王彬 刘易凡 董泽信 孟涛 Li Jiajing;Yang Ze;Wang Bin;Liu Yifan;Dong Zexin;Meng Tao(School of Artificial Intelligence,China University of Mining and Technology,Beijing 100083;CMA Earth System Modeling and Prediction Center,Beijing 100081;State Key Laboratory of Severe Weather,Chinese Academy of Meteorological Sciences,Beijing 100081;CMA Key Laboratory of Earth System Modeling and Prediction,Beijing 100081;Coal Science and Technology Research Institute Co.,Ltd.,Beijing 100013)
机构地区:[1]中国矿业大学(北京)人工智能学院,北京100083 [2]中国气象局地球系统数值预报中心,北京100081 [3]中国气象科学研究院灾害天气国家重点实验室,北京100081 [4]中国气象局地球系统数值预报重点开放实验室,北京100081 [5]煤炭科学技术研究院有限公司,北京100013
出 处:《应用气象学报》2025年第2期155-163,共9页Journal of Applied Meteorological Science
基 金:国家重点研发计划(2017YFA0604500);中国气象局创新发展专项(CXFZ2025J005);中国气象局地球系统数值预报中心数值预报关键技术研发——国省统筹团队科创平台组。
摘 要:中国气象局(CMA)数值预报的统筹研发对支撑平台的能力建设提出了更高要求,其中一个重要方面就是对数值预报模式代码的质量检测能力。目前缺乏有效针对数值预报模式代码的质量检测方法和工具,尤其对于性能缺陷和大规模代码的检测不能满足需要。为解决上述问题,该文针对子程序定义、数组操作和I/O操作等常见编程规则设计检测方法。该方法采用程序代码解析、抽象语法树匹配和流敏感的静态程序检测等关键技术,其中对分支和循环语句的分析方法有效避免了路径爆炸问题。基于该方法的检测工具在数值预报科创平台V1.0代码协同开发栏目提供使用,并应用于CMA区域数值模式的国省统筹研发。The coordinated research and development of numerical prediction at the national and provincial levels, conducted by CMA is an innovative shift from CMA Earth System Modeling and Prediction Center to a collaborative approach involving multiple stakeholders. However, diverse technical backgrounds and varying programming proficiency levels of participants present a significant challenge in ensuring the code quality of the numerical prediction model. It is required that the research and development support platform should possess code quality detection capabilities, providing tools to promptly identify and analyze the code submitted by developers, and offering feedback to enhance the software quality and work efficiency.Static detection methods can address challenges associated with reproducing runtime errors in numerical model programs. Additionally, they facilitate the analysis of specific critical code segments, thereby improving detection efficiency. Therefore, it focuses on static detection methods and primarily aims at identifying poor programming practices and performance defects in CMA numerical prediction model codes. There are limited research efforts focused on the quality analysis of numerical prediction model codes, particularly concerning performance defects such as memory access issues and I/O operations. Additionally, the substantial volume of numerical prediction model code places greater demands on the accuracy and performance of detection methods.In response to these issues, a quality detection method for CMA numerical prediction model is proposed and implemented. The method emphasizes 8 standard rules in CMA numerical prediction model coding, which encompass subroutine definitions, array operations, and I/O operations. Finite state machines are utilized to abstractly represent these rules. Key technologies, including program code parsing, abstract syntax tree matching, and flow-sensitive static program analysis, are employed to identify violations of these rules. The approach to managing branch a
关 键 词:数值预报模式代码 代码质量 抽象语法树匹配 流敏感程序分析 有穷状态机
分 类 号:TP3[自动化与计算机技术—计算机科学与技术]
正在载入数据...
正在载入数据...
正在载入数据...
正在载入数据...
正在载入数据...
正在载入数据...
正在载入数据...
正在链接到云南高校图书馆文献保障联盟下载...
云南高校图书馆联盟文献共享服务平台 版权所有©
您的IP:216.73.216.49