掌桥专利:专业的专利平台
掌桥专利
首页

一种高能物理计算环境网络性能分析系统

文献发布时间:2023-06-19 19:40:14


一种高能物理计算环境网络性能分析系统

技术领域

本发明涉及高能物理计算环境网络性能分析技术领域,尤指一种利用PostgreSQL、Java类继承、Java多线程和利用Java触发器机制的基于仿真技术的高能物理计算环境网络性能分析系统。

背景技术

科学家通过在高能物理计算集群中提交大量作业,从而对这些实验数据进行分析与挖掘,产生物理成果。研究资源管理以及完善作业调度系统能直接影响到计算集群可扩展的规模及其可管理的作业数量,然而随着未来高能物理实验更加不断扩大,计算作业数量更加不断增加,高能物理计算环境现有的网络资源,能否满足不断增加的计算资源的使用需求是个未知,是否达到资源瓶颈也是不可估计的,所以导致系统存在很大的不稳定性隐患。

发明内容

针对上述问题,本发明旨在提供一种利用PostgreSQL、Java类继承、Java多线程和利用Java触发器机制的基于仿真技术的高能物理计算环境网络性能分析系统。

本发明所采用的技术方案是:一种高能物理计算环境网络性能分析系统,所述的系统是基于仿真技术的高能物理计算环境网络性能分析系统,采用Java语言开发、数据库方式存储,方便用户自定义计算环境拓扑图、存储设备类型及参数、网络设备类型及参数、作业特征及数据流。

所述的系统包括用户自定义高能物理计算环境拓扑模块、参数设置模块、作业特征模块、调度策略选择模块、动态仿真模块和数据存储模块。

所述的用户自定义高能物理计算环境拓扑模块用于实现仿真模型搭建工作,即作业流、数据流运行的模型框架,是仿真工作的基础。

所述的参数设置模块用于模型参数输入的声明式模块,定义一个具体的分布式计算中心,它的设置来着从监控信息中获得的参数。

所述的作业特征模块用于实现从数据库读取作业流、数据流特征,包括运行的作业、异常、结束状态,用户组信息,实验信息,事例数,所需源文件信息等参数信息。

所述的调度策略选择模块根据计算环境中资源信息和工作业流信息,通过合适的调度策略和算法将工作流活动分配到相应的计算资源上执行。

所述的动态仿真模块是一个触发器,采用Java触发器机制自动化仿真作业在计算环境的运行过程。

所述的数据存储模块用于保存计算节点的描述、节点之间的链接、网格结构及其节点、运行任务信息、执行时间、网格各子系统的监控结果和仿真结果。

所述的用户定义高能物理计算环境拓扑模块、参数设置模块、作业特征模块采用数据库表的方式进行存储。

所述的数据库方式存储中的存储数据库为PostgreSQL。

本发明所达到的技术效果是:本发明的分析系统基于高能物理实验数据规模扩大产生海量实验数据的特点,高能物理实验数据准确的处理分析特性,本发明通过基于GridSim采用Java语言及PostgreSQL数据库存储实现用户计算环境拓扑、作业特征、设备参数、文件数据自定义,使用Java多线程和利用Java触发器机制实现作业自动化仿真,通过分析仿真拓扑中网络设备的实时负载分析网络性能。本发明用于高能物理计算环境网络性能的研究工作,采用数据库的方式,方便用户自定义及存储计算环境拓扑、实验作业特征及数据流,采用多线程、触发器机制和工作流仿真技术实现自动化模拟仿真,系统可安装运行于Windows、Linux操作系统的个人计算机、计算机服务器和云计算虚拟机上,适用性较强,软件系统具有分析规模超过上百万计算作业数量体系的能力。

附图说明

图1是本发明系统的程序运行原理示意图;

图2是本发明系统的程序运行流程示意图。

具体实施方式

以下结合说明书附图详细说明本发明的实施方式:

如图1-2所示,一种高能物理计算环境网络性能分析系统是基于仿真技术的高能物理计算环境网络性能分析系统,采用Java语言开发、数据库方式存储,方便用户自定义计算环境拓扑图、存储设备类型及参数、网络设备类型及参数、作业特征及数据流;本系统包括用户定义高能物理计算环境拓扑模块、参数设置模块、作业特征模块、调度策略选择模块、动态仿真模块和数据存储模块,可安装运行于Windows、Linux操作系统的个人计算机、计算机服务器和云虚拟机,用于高能物理计算环境网络性能评估。

本发明中,用户自定义高能物理计算环境拓扑模块主要实现了仿真模型搭建工作,即作业流、数据流运行的模型框架,是仿真工作的基础,因为仿真工作真正实现的就是该拓扑内部各个设备及设备之间的链路可能性能瓶颈的评估。

在本实施例中,参数设置模块是一个用于模型参数输入的声明式模块,定义一个具体的分布式计算中心,它的设置来着从监控信息中获得的参数,如数据流、作业流等;作业特征模块实现从数据库读取作业流、数据流特征,包括运行的作业、异常、结束状态,用户组信息,实验信息,事例数,所需源文件信息等参数信息;调度策略选择模块是工作流管理最重要的核心组件之一,它的主要目标是根据计算环境中资源信息和工作业流信息,通过合适的调度策略和算法将工作流活动分配到相应的计算资源上执行;动态仿真模块是一个触发器,采用Java触发器机制自动化仿真作业在计算环境的运行过程;数据存储模块用于保存计算节点的描述、节点之间的链接、网格结构及其节点、运行任务信息、执行时间、网格各子系统的监控结果和仿真结果。

一种基于仿真技术的高能物理计算环境网络性能分析系统,基于PostgreSQL数据库存储用户定义计算环境拓扑、实验作业特征及数据流,方便用户自定义计算环境拓扑(communication_topo、communication_objects)、作业特征(nicajobs)和数据流(nicafiles、),更具体的是采用Java语言编写,通过定义原子(Communication.java、Hardwer.java)、作业特征(NICALoader.java)、数据流(FileLoader.java)的基类,方便用户自定义计算拓扑、设备及作业仿真属性。

所述的基于仿真技术的高能物理计算环境网络性能分析系统,通过Java多线程方式实现作业调度并行化。

所述的基于仿真技术的高能物理计算环境网络性能分析系统,使用Java触发器机制自动化仿真作业在计算环境的执行的全过程。

使用本发明的基于仿真技术的高能物理计算环境网络性能分析系统进行分析计算时,使用方法包括以下步骤:

用户根据自己仿真的计算环境及作业特征基于PostgreSQL数据库存储用户定义计算环境拓扑、实验作业特征及数据流,方便用户自定义计算环境拓扑(communication_topo、communication_objects)、作业特征(nicajobs)和数据流(nicafiles)。

(2)修改ExperimentSetup.java,选择调度策略,设置algID=0,是先来先服务FCFS;设置algID=1是短作业优先SJF。

(3)修改config.json文件,选择输出方式1输出到数据库,2输出的控制台;选择输出方式1,输入到数据库表simulation_report,其中包含仿真结果ID、系统时间、记录ID、事例、对象、操作状态、描述等信息。

(4)运行程序。(在NetBeans上运行该程序)

下面结合附图2,通过程序运行流程详细描述本发明系统的具体计算分析的实现过程:主要包括以下步骤:

S1、用户定义计算环境拓扑、作业特征、设备参数、文件数据

本发明中的用户定义计算环境拓扑、作业特征、设备参数、文件数据模块,首先通过数据库的方式存储到相应的表,计算环境拓扑存储到communication_topo、communication_objects;其中communication_objects定义了拓扑中所有节点的信息,communication_topo定义了拓扑中所有节点的关系信息,如节点A和节点B连接信息。作业特征定义在jobs表中,该表包含了作业名称、作业流、开始时间、作业消耗CPU计算时间、event事例数,原站点、目标站点。设备参数用户定义在hard_description中,包含硬件设备名称、存储容量、内存、CPU speed、job队列类型、资源核数。数据文件存储在files表中,定义内容文件名称、长度、位置、存储卷、存储设备名称、访问权限。通过Java类定义了拓扑、设备、作业、文件的基类,该类的名称分别定义为Communication.java,Hardwer.java,NICALoader.java,FileLoader.java。

在ModelInfoService.java中定义了读取作业SQL、数据文件SQL、robot SQL、计算环境拓扑SQL、设备SQL、设备参数SQL;读取相应的数据库内容加入到仿真模型中。

S2、指定调度策略

在用户定义基本仿真信息后,本发明的基于经验势精修算法的中子散射数据分析系统通过在Experiment.java,修改设置algID=0或者设置设置algID=1,指定仿真策略为先来先服务还是短作业优先。

S3、作业队列加载

本发明中的指定调度策略模块,根据用户的输入参数自动按照定义在数据库中的作业按照作业到达时间(先来先服务)或者按照队列CPU计算消耗时间长短通过调用FCFS.java或者SJF.java中的addNewJob方法定义队列的排队作业。用户可自定义新的作业排队算法,根据需要修改addNewJob方法,并且需要在Experiment.java指定该策略如设置algID=3。

S4、是否资源可用

运行过程中,系统能根据用户作业的特征确定哪个计算节点资源可用,根据调度策略选择队列中的作业调度到相应的计算节点。如果选择某个节点的资源>作业需要的资源,程序自动把作业调度到相应的节点,调度后会查询作业需要的文件数据,判断作业是否在磁盘中,如果在即可自动执行该作业,如果不在则需等作业文件从存储设备传到相应的节点,传输完成后可开始作业的计算。

S5、输出方式选择

本发明中的输出方式选择模块,根据用户提供的运行参数选择调用输出的方式。如果在config.json文件general设置为1,则选择使用数据库输出,程序调用Stirliz.java的参数包含event、object、operation定义了作业执行阶段的参数,将该参数内容写到数据库表simulation_report中;如果选并行。如果在config.json文件general设置为2,则选择使用控制台输出,程序调用Bormann.java类,该类自定义了作业执行阶段的参数,将该参数内容写到控制台。

S6、结束程序

S7、网络性能分析

在仿真程序执行过程中,仿真结果保存在控制台或者数据库表simulation_report中,其中int1的值表示对象的标识符,仿真结果输出最开始能够查到Switch的节点的属性值分别为本程序的拓扑:switch0=110、switch1=102、switch2=108、switch3=112、switch5(DC_Core)=109,用户可按实际修改拓扑。通过sql语句SELECT system_time,double1 FROM simulation_report WHERE event=5AND object=128AND operation=33AND int1=???ORDER BY system_time ASC;或者通过文档筛选出event=5,object=128,operation=33,int1=???筛选出不同的交换机性能进行分析。

本发明用于高能物理计算环境网络性能的研究工作,采用数据库的方式,方便用户自定义及存储计算环境拓扑、实验作业特征及数据流,采用多线程、触发器机制和工作流仿真技术实现自动化模拟仿真,系统可安装运行于Windows、Linux操作系统的个人计算机、计算机服务器和云计算虚拟机上,适用性较强,软件系统具有分析规模超过上百万计算作业数量体系的能力。

以上所述,仅是本发明的较佳实施例,并非对本发明的技术范围作任何限制,本行业的技术人员,在本技术方案的启迪下,可以做出一些变形与修改,凡是依据本发明的技术实质对以上的实施例所作的任何修改、等同变化与修饰,均仍属于本发明技术方案的范围内。

相关技术
  • 一种网络设备性能分析方法、系统、设备及计算机介质
  • 一种支持进程粒度网络计算的虚拟计算环境系统
技术分类

06120115990523