CN114371890A - 一种hpc集群的软件管理系统 - Google Patents

一种hpc集群的软件管理系统 Download PDF

Info

Publication number
CN114371890A
CN114371890A CN202210282348.9A CN202210282348A CN114371890A CN 114371890 A CN114371890 A CN 114371890A CN 202210282348 A CN202210282348 A CN 202210282348A CN 114371890 A CN114371890 A CN 114371890A
Authority
CN
China
Prior art keywords
software
conflict
dependency
loaded
data
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.)
Granted
Application number
CN202210282348.9A
Other languages
English (en)
Other versions
CN114371890B (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.)
Tianjin Tianhe Computer Technology Co ltd
Original Assignee
Tianjin Tianhe Computer 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 Tianjin Tianhe Computer Technology Co ltd filed Critical Tianjin Tianhe Computer Technology Co ltd
Priority to CN202210282348.9A priority Critical patent/CN114371890B/zh
Publication of CN114371890A publication Critical patent/CN114371890A/zh
Application granted granted Critical
Publication of CN114371890B publication Critical patent/CN114371890B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating
    • G06F9/44521Dynamic linking or loading; Link editing at or after load time, e.g. Java class loading
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/40Transformation of program code
    • G06F8/41Compilation
    • G06F8/43Checking; Contextual analysis
    • G06F8/433Dependency analysis; Data or control flow analysis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/61Installation
    • G06F8/62Uninstallation

Abstract

本发明提供了一种HPC集群的软件管理系统,所述系统包括存储有所述HPC集群已安装软件的依赖关系数据和冲突关系数据的软件池、基于所述软件池获取待加载软件的依赖数据和冲突数据的软件冲突依赖检测模块、基于所述依赖数据和冲突数据可视化显示异常信息的异常判断模块和用于运行至少一个待加载软件及其全部依赖软件的独立软件运行环境,且不同软件运行环境之间可并行运行。所述系统可实现HPC集群大规模软件的自动化依赖和冲突检测,且能够以图形化的方式提示依赖和冲突检测的结果,可以为冲突软件提供同时间不同空间的、独立的软件运行环境,支持该环境的启动和关闭,简化用户的操作,使得所有用户均能方便快捷的使用HPC系统的软件资源。

Description

一种HPC集群的软件管理系统
技术领域
本发明涉及软件管理领域,具体涉及一种HPC集群的软件管理系统。
背景技术
高性能计算机群(High Performance Computing,HPC)因其优越的属性,目前已经在各行各业得到了广泛的应用,通常HPC系统上需要安装部署几百上千款软件。传统的HPC软件管理都是采用人工管理方式,用户需要哪款软件,应用研发人员需要先下载软件源码、安装包,然后上传到系统,编译安装,调试,添加各种系统库、数学库、图形库依赖等等,最后提供给用户可用的软件,软件管理和使用过程十分复杂,一般都是需要用户和专业的软件运维人员进行长时间的交互才能最终正常使用软件。
用户当前对软件的使用方式多采用模块化的加载卸载方式,如模块工具,但用户还是需要登录HPC系统的登录节点,使用命令方式对软件进行加载和卸载,同时必须知道各个软件版本之间的依赖关系和冲突关系,否则需要不断的尝试各个版本的软件依赖、兼容关系和冲突关系,使用过程都是通过手动完成,使得用户的使用门槛较高,尤其是用户在使用较多的软件时,这种问题就显得尤为突出。
另外,传统的HPC系统软件使用方式为:用户登录到特定的登录节点,在登录节点的用户环境里加载卸载软件。如果用户用的软件比较多,同一个环境下就会造成各个软件和不同版本之间依赖环境的相互污染,例如A软件依赖于C,B软件依赖于D,但C和D冲突,这样在同一时间,该用户在同一个登录节点上就无法同时使用这两款软件,必须先后使用,给用户使用过程造成了不便。
发明内容
针对上述技术问题,本发明采用的技术方案为:一种高性能计算集群(HighPerformance Computing,HPC)的软件管理系统,包括软件池、软件冲突依赖检测模块、异常判断模块和多个独立软件运行环境,且不同软件运行环境之间可并行运行;其中,所述软件池,用于存储所述HPC集群已安装软件的软件信息,且所述软件信息至少包括软件名称、软件版本、软件冲突关系数据和软件依赖关系数据;所述软件冲突依赖检测模块,用于基于所述软件池、用户指定的软件运行环境以及待加载软件,获取所述待加载软件的依赖数据和冲突数据,其中,所述依赖数据用于表示所述待加载软件及其全部依赖软件之间的加载先后顺序,所述冲突数据包括了所述待加载软件及其全部依赖软件,与所述用户指定的软件运行环境中的软件之间存在冲突关系的所有软件对数据;所述异常判断模块,用于基于所述依赖数据和所述冲突数据,当判断不存在冲突时,将所述待加载软件及其全部依赖软件加载至所述用户指定的软件运行环境中;否则卸载用户选择卸载的出现冲突的相关软件,并将所述待加载软件及其全部依赖软件加载至所述用户指定的软件运行环境中;所述软件运行环境,用于运行至少一个所述用户待加载软件及其全部依赖软件。
一种基于所述软件管理系统的软件管理方法,包括以下步骤:S100,接收用户加载指令,该加载指令至少包括所述待加载软件,所述用户指定的软件运行环境;S200,基于所述软件池获取所述待加载软件的依赖数据和冲突数据;S300,判断是否存在冲突,当不存在冲突时,执行步骤S400;否则,执行步骤S500;S400,将所述待加载软件及其全部依赖软件加载至所述用户指定的软件运行环境中,方法结束;S500,卸载用户选择卸载的软件,并将所述待加载软件及其全部依赖软件加载至所述用户指定的软件运行环境中,方法结束。
本发明至少具有以下技术效果:通过上述系统和方法,可自动检测待加载软件的依赖数据和冲突数据,并基于所述依赖数据和冲突数据,以可视化方式和用户进行交互,使得用户在软件之间存在冲突时,通过卸载软件和/或重新选择加载软件,将所需的软件加载到指定的独立的软件运行环境中。这不仅使用户可以在不了解软件相关依赖冲突关系的情况下,一键式加载自己所需要的软件,另外,独立的软件运行环境也使得用户可以同时运行多个软件,不会造成软件环境的污染,极大地简化用户的操作,使得所有用户均能方便快捷的使用HPC系统。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的一种HPC集群的软件管理系统的结构示意图;
图2为本发明实施例提供的加载软件A的全部依赖软件的依赖关系图的示意图;
图3为本发明提供的一种软件冲突关系图的示意图;
图4为本发明实施例提供的一种HPC集群的软件管理方法的流程图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明实施例提供一种HPC集群的软件管理系统1,如图1所示,所述软件管理系统1包括:软件池2、软件冲突依赖检测模块3、异常判断模块4和多个独立软件运行环境5,且不同软件运行环境5之间可并行运行。
在本发明中,所述软件池2用于存储所述HPC集群已安装软件的软件信息,且所述软件信息至少包括软件名称、软件版本、软件冲突关系数据和软件依赖关系数据,以便于软件冲突依赖检测模块3运行时从软件池2中读取所需信息。另外,所述软件冲突关系和软件依赖关系可以通过软件安装过程文件和安装后的自身相关附属文件获取。
优选的,所述软件信息还可以包括软件所属集群、软件所属行业领域以及软件所属子类,以便于更进一步对软件池2中的内容进行分类、整合等。
具体的,所述软件池2可以采用现有技术中的多种形式存储所述软件信息,例如Excel、数据库等等,所述软件池2采用的存储形式在本发明中不受限制。
在一个实施例中,所述软件管理系统1还包括软件扫描模块,所述软件扫描模块包括扫描服务端和扫描接口。在该实施例中,所述扫描服务端在所述HPC集群上运行,其按照一定频率自动调用所述扫描接口对所述HPC集群已安装软件进行扫描,如果有新安装的软件,则将所述新安装的软件的软件信息更新到所述软件池2中,以支持软件信息的自动更新。具体的,如本领域技术人员所理解的,同一个软件的不同版本可以被视为不同软件,因此,当HPC集群安装了软件的最新版本时,可被认为是新安装了软件。此外,所述一定频率可自适应设置,如HPC集群的系统软件更新比较频繁,则可以适当增大所述一定频率,相反则可以适当减小所述一定频率,在本发明中,所述一定频率的设置方式不受具体限制。
具体地,本发明在用户加载软件前可通过如下步骤构造所述软件池2:
S101,启动所述软件扫描模块。
S102,所述软件扫描模块中所述扫描服务端按照一定频率调用所述软件扫描模块中的所述扫描接口,以扫描所述HPC集群的软件安装目录获得所述HPC集群已安装软件的软件信息。例如,扫描软件安装目录下的软件模块信息文件以获取所述的软件依赖关系数据和软件冲突关系数据等。
S103,按照特定规则保存所述软件信息以得到所述软件池2。
通过上述方法得到的软件池,一方面存储了HPC集群已安装软件的各种软件信息,便于规范化软件管理,另一方面也能实时更新软件池中的软件信息,确保用户在加载软件时能够获取更精准的软件相关数据,例如完整且最新的冲突和依赖数据。
所述软件冲突依赖检测模块3,用于基于所述软件池2、用户指定的软件运行环境以及待加载软件,获取所述待加载软件的依赖数据和冲突数据,其中,所述依赖数据用于表示所述待加载软件及其全部依赖软件之间的加载先后顺序,所述冲突数据包括了所述待加载软件及其全部依赖软件,与所述用户指定的软件运行环境中的软件之间存在冲突关系的所有软件对数据。其中,所述待加载软件为所述HPC集群已安装的软件。
优选的,所述依赖数据是通过遍历所述软件池2得到的所述待加载软件的全部依赖关系,并对所述全部依赖关系构建的有向无环图进行拓扑排序获得的,其中,所述有向无环图由具备依赖关系的软件及方向边组成,方向边的箭头指向为软件本身,方向边的起点为该软件所依赖的软件。具体可通过以下步骤获得:
S201,遍历所述软件池2,获取所述待加载软件的全部依赖关系。由于软件池2中保存有每个软件的依赖信息,因此,当我们需要加载软件时,通过遍历所述软件池2,很容易获取所述待加载软件的全部依赖关系。
S202,基于所述依赖关系构建软件关系图,使用有向无环图(Directed AcyclicGraph,DAG)检测方法检测所述软件关系图是否为DAG。
S203,当判断所述软件关系图为DAG时,将所述待加载软件及其所有依赖软件构成的DAG进行拓扑排序并保存。例如,对于待加载的软件,首先遍历所述软件池2中的全部依赖关系,将所述待加载软件和其所依赖的其他所有软件(包含迭代依赖)构成一个图,使用有向无环图检测算法检测该图是否为DAG(有向无环图),即从任意节点出发,都不会回到该节点。如果用户加载该软件则将该软件和其所有依赖软件构成的DAG进行拓扑排序,然后返回拓扑排序后的软件加载顺序。附图2给出了待加载软件A的全部依赖软件的依赖关系图,其中,软件A依赖B和C,C依赖F、G,B依赖D,D依赖E。如此,按拓扑排序的顺序加载软件就能自动安装好软件A了。所谓拓扑排序是对DAG(有向无环图)上的节点进行排序,使得对于每一条有向边u→v ,u都在 v之前出现,简单地说,是在不破坏节点先后顺序的前提下,把DAG拉成一条链。附图2中的从左至右的一排软件,即软件E、软件D、软件G、软件F、软件C、软件B、软件A,就是本发明所述的软件加载先后顺序。优选的,所述拓扑排序为Kahn拓扑排序。
优选的,所述冲突数据是根据所述软件池2构建软件冲突图并保存所述软件冲突图中的非自身封闭环包含的软件对来获取的,其中,冲突关系图由相互冲突的软件及方向边组成,方向边的起点为软件自身,方向边的箭头指向与其冲突的其他软件。具体可以通过以下步骤来获取所述冲突数据:
S301,基于所述软件池2,构建冲突关系图,其中,冲突关系图由相互冲突的软件及方向边组成,方向边的起点为软件自身,方向边的箭头指向与其冲突的其他软件;
S302,判断是否存在非自身封闭环;
S303,当存在非自身封闭环时,保存所述非自身封闭环中包含的软件对。
优选的,本发明还可以利用深度优先搜索DFS方法查找软件冲突图中的非自环的方式获取所述完整冲突数据,比如用户预安装的软件J依赖软件H,用户当前环境下还安装了K,K依赖软件I。此时,H、I这两款软件的冲突关系如图3,图3为本发明提供的一种软件冲突关系图的示意图,其中,箭头方向代表冲突,则构建冲突关系图,在图3中检测是否存在非自环(默认软件自己和自己是冲突的),如果存在则将非自环的环内软件列出提示冲突,这里就是软件I和软件H冲突。具体的,本发明使用DFS方法查找软件冲突图中的非自环,也就是顶点数大于1的环。
在本发明中,所述软件运行环境5,用于运行至少一个所述用户待加载软件及其全部依赖软件,且为了保证用户之间数据的安全性、独立性,也为了避免软件安装环境的互相污染,所述软件运行环境5为相互独立的运行环境,每个用户都有其对应的多个软件运行环境,且每个用户不同的运行环境可以并行运行。进一步,不同用户的运行环境也可以并行运行。例如,用户可以将相互冲突的软件A和软件B分别加载到两个不同的运行环境中运行,这样能够确保用户同时使用软件A和软件B。在一实施例中,所述软件运行环境5为用户级webshell环境。
在本发明中,所述软件管理系统1还包括用于存储每个软件运行环境5的历史上下文环境中已加载软件的环境数据库。具体的,所述软件管理系统在软件运行环境5关闭前,将该软件运行环境5中的当前已加载和/或已卸载的软件相关数据更新(包括增加和/或删除)至与其对应的历史上下文环境中,其中,所述软件相关数据至少包括软件名称、软件版本、软件运行环境唯一标识、用户标识。用户可以根据环境数据库中保存的数据查找用户指定的软件运行环境中已加载的软件。
所述异常判断模块4,用于基于所述依赖数据和所述冲突数据,当判断不存在冲突时,将所述待加载软件及其全部依赖软件加载至所述用户指定的软件运行环境5中;否则,卸载用户选择卸载的出现冲突的相关软件,并将所述待加载软件及其全部依赖软件加载至所述用户指定的软件运行环境5中。在用户加载软件的过程中,如果待加载软件和用户指定的运行环境中的软件有冲突,用户可以根据提示信息,选择所述运行环境中要卸载的软件,或者重新选择待加载的软件,或者重新选择指定的运行环境,以避免因为冲突的存在,而不能同时使用多个软件。
优选的,所述系统还包括显示模块,用于向用户提供图形化的交互窗口,用户能够通过显示模块可以获取系统的各种提示信息,或者是通过交互选择待加载软件、指定运行环境,以及选择需要卸载的软件等等。
所述软件管理系统1还包括通用软件接口,所述通用软件接口包括软件加载接口、软件卸载接口和软件列表接口,所述软件加载接口用于加载所述待加载软件,所述软件卸载接口用于卸载所述软件运行环境5中的软件,软件列表接口用于访问所述软件池2,例如支持所有软件池中软件分类和属性的筛选和搜索,软件搜索支持模糊搜索和精确查找。优选的,所述通用软件接口为RESTful API接口。
本发明通过设置通用的软件接口,使得用户可以直接利用该接口一键式加载和/或卸载指定的软件而无需了解其内部的冲突和/或依赖关系,结合之前的依赖冲突检测结果,快速执行加卸载操作等。
进一步,本发明实施例还提供了一种基于前述任一软件管理系统的软件管理方法,如图4所示,该方法包括以下步骤:
S100,接收用户加载指令,该加载指令至少包括所述待加载软件,所述用户指定的软件运行环境5;
S200,基于所述软件池获取所述待加载软件的依赖数据和冲突数据;
S300,判断是否存在冲突,当不存在冲突时,执行步骤S400;否则,执行步骤S500;
S400,将所述待加载软件及其全部依赖软件加载至所述用户指定的软件运行环境中,方法结束;
S500,卸载用户选择卸载的软件,并将所述待加载软件及其全部依赖软件加载至所述用户指定的软件运行环境中,方法结束。
通过上述方法,可自动检测待加载软件的完整依赖数据和完整冲突数据,并基于所述完整依赖数据和完整冲突数据,以可视化方式和用户进行交互,使得用户在软件之间存在冲突时,通过卸载软件和/或重新选择加载软件,将所需的软件加载到指定的独立的软件运行环境中。这不仅使用户可以在不了解软件相关依赖冲突关系的情况下,一键式加载自己所需要的软件,另外,独立的软件运行环境也使得用户可以同时运行多个软件,不会造成软件环境的污染,极大地简化用户的操作,使得所有用户均能方便快捷的使用HPC系统。
具体的,在发明中,步骤S100之前还包括以下步骤:
S101,启动所述软件扫描模块;
S102,所述软件扫描模块中所述扫描服务端按照一定频率调用所述软件扫描模块中的所述扫描接口,以扫描所述HPC集群的软件安装目录获得所述HPC集群已安装软件的软件信息;
S103,按照特定规则将所述软件信息写入数据库,得到所述软件池。
在本发明的一个实施例中,所述依赖数据的获取包括以下步骤:
S201,遍历所述软件池,获取所述待加载软件的全部依赖关系;
S202,基于所述依赖关系构建软件关系图,使用有向无环图(Directed AcyclicGraph,DAG)检测方法检测所述软件关系图是否为DAG;
S203,当判断所述软件关系图为DAG时,将所述待加载软件及其全部依赖软件构成的DAG进行拓扑排序并保存。前述所述依赖数据获取的相关内容也同样适用于该部分,在此不再赘述。
在本发明的另一实施例中,所述冲突数据的获取包括以下步骤:
S301,基于所述软件池,构建冲突关系图,其中,冲突关系图由相互冲突的软件及方向边组成,方向边的起点为软件自身,方向边的箭头指向与其冲突的其他软件;
S302,判断是否存在非自身封闭环;
S303,当存在非自身封闭环时,保存所述非自身封闭环中包含的软件对。前述所述完整冲突数据的获取内容也同样适用于该部分,在此不再赘述。
虽然已经通过示例对本发明的一些特定实施例进行了详细说明,但是本领域的技术人员应该理解,以上示例仅是为了进行说明,而不是为了限制本发明的范围。本领域的技术人员还应理解,可以对实施例进行多种修改而不脱离本发明的范围和精神。本发明的范围由所附权利要求来限定。

Claims (10)

1.一种HPC集群的软件管理系统,其特征在于,所述系统包括软件池、软件冲突依赖检测模块、异常判断模块和多个独立软件运行环境,且不同软件运行环境之间可并行运行;
其中,所述软件池,用于存储所述HPC集群已安装软件的软件信息,且所述软件信息至少包括软件名称、软件版本、软件冲突关系数据和软件依赖关系数据;
所述软件冲突依赖检测模块,用于基于所述软件池、用户指定的软件运行环境以及待加载软件,获取所述待加载软件的依赖数据和冲突数据,其中,所述依赖数据用于表示所述待加载软件及其全部依赖软件之间的加载先后顺序,所述冲突数据包括了所述待加载软件及其全部依赖软件,与所述用户指定的软件运行环境中的软件之间存在冲突关系的所有软件对数据;
所述异常判断模块,用于基于所述依赖数据和所述冲突数据,当判断不存在冲突时,将所述待加载软件及其全部依赖软件加载至所述用户指定的软件运行环境中;否则卸载用户选择卸载的出现冲突的相关软件,并将所述待加载软件及其全部依赖软件加载至所述用户指定的软件运行环境中;
所述软件运行环境,用于运行至少一个所述用户待加载软件及其全部依赖软件。
2.根据权利要求1所述的系统,其特征在于,所述系统还包括软件扫描模块,所述软件扫描模块包括扫描服务端和扫描接口,所述扫描服务端运行在所述HPC集群上,按照一定频率调用所述扫描接口对所述HPC集群已安装软件进行扫描,如果有新安装的软件,则将所述新安装的软件的软件信息更新到所述软件池中。
3.根据权利要求1所述的系统,其特征在于,所述系统还包括通用软件接口,所述通用软件接口包括软件加载接口、软件卸载接口和软件列表接口,所述软件加载接口用于加载所述待加载软件,所述软件卸载接口用于卸载所述软件运行环境中的软件,软件列表接口用于访问所述软件池。
4.根据权利要求1所述的系统,其特征在于,所述系统还包括显示模块,用于向用户提供图形化的交互窗口。
5.根据权利要求1所述的系统,其特征在于,所述软件信息还包括软件所属集群、软件所属行业领域以及软件所属子类。
6.根据权利要求1所述的系统,其特征在于,所述依赖数据是通过遍历所述软件池得到的所述待加载软件的全部依赖关系,并对所述全部依赖关系构建的有向无环图进行拓扑排序获得的,其中,所述有向无环图由具备依赖关系的软件及方向边组成,方向边的箭头指向为软件本身,方向边的起点为该软件所依赖的软件;所述冲突数据是根据所述软件池构建软件冲突图并保存所述软件冲突图中的非自身封闭环包含的软件对来获取的,其中,冲突关系图由相互冲突的软件及方向边组成,方向边的起点为软件自身,方向边的箭头指向与其冲突的其他软件。
7.一种基于权利要求2所述系统的软件管理方法,其特征在于,包括以下步骤:
S100,接收用户加载指令,该加载指令至少包括所述待加载软件,所述用户指定的软件运行环境;
S200,基于所述软件池获取所述待加载软件的依赖数据和冲突数据;
S300,判断是否存在冲突,当不存在冲突时,执行步骤S400;否则,执行步骤S500;
S400,将所述待加载软件及其全部依赖软件加载至所述用户指定的软件运行环境中,方法结束;
S500,卸载用户选择卸载的软件,并将所述待加载软件及其全部依赖软件加载至所述用户指定的软件运行环境中,方法结束。
8.根据权利要求7所述的方法,其特征在于,步骤S100之前还包括以下步骤:
S101,启动所述软件扫描模块;
S102,所述软件扫描模块中所述扫描服务端按照一定频率调用所述软件扫描模块中的所述扫描接口,以扫描所述HPC集群的软件安装目录获得所述HPC集群已安装软件的软件信息;
S103,按照特定规则保存所述软件信息以得到所述软件池。
9.根据权利要求7所述的方法,其特征在于,所述依赖数据的获取包括:
S201,遍历所述软件池,获取所述待加载软件的全部依赖关系;
S202,基于所述依赖关系构建软件关系图,使用DAG检测方法检测所述软件关系图是否为DAG;
S203,当判断所述软件关系图为DAG时,将所述待加载软件及其全部依赖软件构成的DAG进行拓扑排序并保存。
10.根据权利要求7所述的方法,其特征在于,所述冲突数据的获取包括:
S301,基于所述软件池,构建冲突关系图,其中,冲突关系图由相互冲突的软件及方向边组成,方向边的起点为软件自身,方向边的箭头指向与其冲突的其他软件;
S302,判断是否存在非自身封闭环;
S303,当存在非自身封闭环时,保存所述非自身封闭环中包含的软件对。
CN202210282348.9A 2022-03-22 2022-03-22 一种hpc集群的软件管理系统 Active CN114371890B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210282348.9A CN114371890B (zh) 2022-03-22 2022-03-22 一种hpc集群的软件管理系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210282348.9A CN114371890B (zh) 2022-03-22 2022-03-22 一种hpc集群的软件管理系统

Publications (2)

Publication Number Publication Date
CN114371890A true CN114371890A (zh) 2022-04-19
CN114371890B CN114371890B (zh) 2022-06-03

Family

ID=81145132

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210282348.9A Active CN114371890B (zh) 2022-03-22 2022-03-22 一种hpc集群的软件管理系统

Country Status (1)

Country Link
CN (1) CN114371890B (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116955168A (zh) * 2023-07-11 2023-10-27 广州汽车集团股份有限公司 车载软件产品运行方法、装置、电子设备及存储介质
CN116955168B (zh) * 2023-07-11 2024-04-26 广州汽车集团股份有限公司 车载软件产品运行方法、装置、电子设备及存储介质

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101114229A (zh) * 2006-07-25 2008-01-30 国际商业机器公司 辅助安装软件的系统和方法
CN102404381A (zh) * 2011-09-02 2012-04-04 西安交通大学 一种云计算环境下基于工作流的软件部署系统及部署方法
CN107911433A (zh) * 2017-12-21 2018-04-13 上海数烨数据科技有限公司 一种基于WebShell的局域网集群主机访问方法
CN110825377A (zh) * 2018-08-07 2020-02-21 北京国双科技有限公司 一种依赖冲突分析方法及装置
CN110990839A (zh) * 2019-11-22 2020-04-10 安徽三实信息技术服务有限公司 一种windows主机安全检查方法、装置和平台
CN114115911A (zh) * 2021-11-26 2022-03-01 中国电子科技集团公司第二十八研究所 一种基于有向无环图的系统构建策略生成方法

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101114229A (zh) * 2006-07-25 2008-01-30 国际商业机器公司 辅助安装软件的系统和方法
CN102404381A (zh) * 2011-09-02 2012-04-04 西安交通大学 一种云计算环境下基于工作流的软件部署系统及部署方法
CN107911433A (zh) * 2017-12-21 2018-04-13 上海数烨数据科技有限公司 一种基于WebShell的局域网集群主机访问方法
CN110825377A (zh) * 2018-08-07 2020-02-21 北京国双科技有限公司 一种依赖冲突分析方法及装置
CN110990839A (zh) * 2019-11-22 2020-04-10 安徽三实信息技术服务有限公司 一种windows主机安全检查方法、装置和平台
CN114115911A (zh) * 2021-11-26 2022-03-01 中国电子科技集团公司第二十八研究所 一种基于有向无环图的系统构建策略生成方法

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
周福萍等: "《会计信息系统 基于用友ERP-U8 V10.1版》", 31 August 2018 *
龚敏 等: "《地方高校教学改革与教学研究探索》", 31 December 2009 *

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116955168A (zh) * 2023-07-11 2023-10-27 广州汽车集团股份有限公司 车载软件产品运行方法、装置、电子设备及存储介质
CN116955168B (zh) * 2023-07-11 2024-04-26 广州汽车集团股份有限公司 车载软件产品运行方法、装置、电子设备及存储介质

Also Published As

Publication number Publication date
CN114371890B (zh) 2022-06-03

Similar Documents

Publication Publication Date Title
US8434054B2 (en) System and method for managing cross project dependencies at development time
US6618857B1 (en) Method and system for installing software on a computer system
US6363524B1 (en) System and method for assessing the need for installing software patches in a computer system
US7484223B2 (en) System and method for building a run-time image from components of a software program
US7243346B1 (en) Customized library management system
US5307498A (en) Automated method for adding hooks to software
US20070006222A1 (en) Software installation method and computer system
US7428559B2 (en) Versioning model for software program development
US20030120678A1 (en) Prototyping model for components of a software program
US8112745B2 (en) Apparatus and method for capabilities verification and restriction of managed applications in an execution environment
US6363397B1 (en) Method for selecting objects to be cached, method for discarding cached objects, and computer
US8972959B2 (en) Method of converting program code of program running in multi-thread to program code causing less lock collisions, computer program and computer system for the same
US7765520B2 (en) System and method for managing cross project dependencies at development time
CN108762825B (zh) 动态库重载的实现方法及系统
CN111858301B (zh) 基于变更历史的组合服务测试用例集约简方法及装置
CN112860312A (zh) 项目依赖关系变化的检测方法及装置
CN111857765A (zh) 用于药物设计系统的插件系统及其生成方法和更新方法
US8527940B2 (en) Integrated development environment with automatic working sets
CN114780138B (zh) 流场模拟软件代码版本管理方法、装置和存储介质
CN115202669A (zh) 一种基于配置文件的项目构建方法、系统及相关设备
US11573772B2 (en) Mechanism for information propagation and resolution in graph-based programming languages
CN114371890B (zh) 一种hpc集群的软件管理系统
US7389515B1 (en) Application deflation system and method
CN114791865A (zh) 一种基于关系图的配置项自洽性检测方法、系统和介质
CN113326077A (zh) 一种配置文件的加载方法及装置

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