CN113630269B - 基于拓扑感知的高性能计算系统运行环境部署加速方法及系统 - Google Patents
基于拓扑感知的高性能计算系统运行环境部署加速方法及系统 Download PDFInfo
- Publication number
- CN113630269B CN113630269B CN202110865567.5A CN202110865567A CN113630269B CN 113630269 B CN113630269 B CN 113630269B CN 202110865567 A CN202110865567 A CN 202110865567A CN 113630269 B CN113630269 B CN 113630269B
- Authority
- CN
- China
- Prior art keywords
- node
- nodes
- proxy
- tree structure
- tree
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 48
- 230000001133 acceleration Effects 0.000 title claims abstract description 23
- 238000004364 calculation method Methods 0.000 claims abstract description 21
- 230000005540 biological transmission Effects 0.000 claims description 30
- 238000012545 processing Methods 0.000 claims description 12
- 238000004590 computer program Methods 0.000 claims description 7
- 230000001419 dependent effect Effects 0.000 claims description 7
- 238000012423 maintenance Methods 0.000 claims description 3
- 230000008569 process Effects 0.000 description 18
- 230000008901 benefit Effects 0.000 description 4
- 238000013459 approach Methods 0.000 description 3
- 238000010586 diagram Methods 0.000 description 3
- 238000012546 transfer Methods 0.000 description 3
- 238000011161 development Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000013461 design Methods 0.000 description 1
- 238000002955 isolation Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 239000000126 substance Substances 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/08—Configuration management of networks or network elements
- H04L41/0889—Techniques to speed-up the configuration process
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/17—Details of further file system functions
- G06F16/176—Support for shared access to files; File sharing support
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/18—File system types
- G06F16/182—Distributed file systems
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/08—Configuration management of networks or network elements
- H04L41/0893—Assignment of logical groups to network elements
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/12—Discovery or management of network topologies
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Abstract
本发明公开一种基于拓扑感知的高性能计算系统运行环境部署加速方法及系统,该方法步骤包括:S01.基于网络拓扑结构,在登陆结点上维护代理结点集以及每个代理结点的附属结点集;S02.当接收到用户发送的部署请求时,获取请求中计算结点列表,根据计算结点列表生成运行环境部署树,其中将代理结点配置为靠近根结点,以及将附属结点配置为树结构中代理结点的子结点,并设置为叶结点;S03.按照生成的运行环境部署树,将所需文件以及树结构体从第一层依次向下进行分发,每层按照接收到的树结构查询自己的下一层结点并继续向下分发,直到所有的叶结点接收到完整的文件。本发明能够感知网络拓扑,高效的实现运行环境部署加速。
Description
技术领域
本发明涉及高性能计算系统技术领域,尤其涉及一种基于拓扑感知的高性能计算系统运行环境部署加速方法及系统。
背景技术
在高性能计算系统中,物理结点主要分为登录结点和计算结点。用户的经典使用模式为:用户登录到高性能计算系统中的登录结点上,进行作业的开发调试以及运行环境的配置,然后将作业以及运行环境部署到相应的计算结点上,最后用户通过作业管理系统或者资源调度系统来运行自己的作业。在上述过程中,用户将作业及其运行环境部署到计算结点上的任务需要用户手动完成,或者用户联系系统管理员来帮忙完成。
针对上述过程,目前的运行环境部署主要存在以下几种模式。
一、基于点对点拷贝的部署方式
该类方式是最简单也是最传统的方式,就是用户将作业及其依赖的环境手动地从登录结点一一拷贝到指定的计算结点。这种方式显然是效率极低的,整个部署过程将会额外消耗用户大量的时间,并且随着作业使用的计算结点的规模增大,用户的负担将越来越重。
目前对该类部署方式也在不断寻求改进,如目前较为成熟的并行化拷贝机制,可以实现将登录结点上的作业及环境同时拷贝到多个计算结点。相对于传统的拷贝过程,这样的方式明显提高了效率,但是依然无法摆脱登录结点的带宽和网络传输能力的限制,尤其当计算结点的规模增大时,登录结点的压力过大,依然无法高效、迅速地完成运行环境的部署。
二、基于全局共享文件系统的部署方式
在高性能计算系统中,一个或者多个远程高速存储服务器担任全局共享文件系统,所有计算结点和登录结点都能访问到这里的数据。对用户来说,一种简单的运行环境部署方式是,用户的作业开发调试,以及相应的用户依赖库均在这个全局共享文件系统中进行,然后在运行作业的时候需要指定若干相关的路径。这种使用方式下,用户不需要再将作业及其运行环境配置到计算结点上,只需要在共享存储中操作即可。
但是该类部署方式会存在以下缺点:
1.全局共享存储文件系统的带宽和访问数据的能力有限,当大量计算结点运行同一个作业时,很可能同时访问这个共享文件系统中同一个文件,这时很容易达到性能瓶颈,从而影响整个作业的执行效率。
2.全局共享文件系统是一个公共存储,多个用户可能同时将作业和相关环境配置到共享文件系统上,不同用户之间的配置可能产生冲突,比如两个用户可能都需要修改同一个配置文件,这时就会引发环境配置冲突。
高性能计算系统具有特殊的网络拓扑结构,在高性能计算系统中并不是所有的计算结点都是平行的关系。例如,可能多个计算结点集成在一块物理主板上,以每块物理主板上八个计算结点为例,这八个计算结点可能使用其中的1-2个结点作为高速网络代理结点,负责直接与上层路由进行通信。以每个物理主板上一个结点最为高速网络代理结点为例,其他7个结点均为该代理结点的附属结点,与上层路由之间收发消息时都必须经过该物理主板上的代理结点。每个主板的网络拓扑结构如图1所示,在这种网络拓扑下,高性能计算系统中的计算结点之间的关系并不是完全平行的,而是存在着代理结点和附属结点两大类,代理结点有着更加高效的网络传输性能。
综上,目前高性能计算系统运行环境部署时均未考虑系统的特定网络拓扑结构,用户在登录结点的作业及其运行环境需要部署到计算结点,要么使用基于全局共享文件系统的运行环境部署方式,但是具有明显的带宽瓶颈,并且难以实现不同用户的隐私隔离,要么使用传统的一点对多点的文件传输方式,但是效率太低,在集群规模较大的情况下难以满足用户需求。
发明内容
本发明要解决的技术问题就在于:针对现有技术存在的技术问题,本发明提供一种实现方法简单、灵活性强、开销小以及部署效率高的基于拓扑感知的高性能计算系统运行环境部署加速方法及系统,能够感知网络拓扑,高效的实现运行环境部署加速,提高用户使用体验。
为解决上述技术问题,本发明提出的技术方案为:
一种基于拓扑感知的高性能计算系统运行环境部署加速方法,步骤包括:
S01.基于高性能计算系统的网络拓扑结构,在登陆结点上维护代理结点集以及每个代理结点的附属结点集;
S02.当接收到用户发送的部署请求时,所述部署请求为将当前作业及当前作业的依赖文件部署到指定计算结点的请求,获取所述部署请求中指定的计算结点列表,根据所述计算结点列表以及维护的所述代理结点集、附属结点集生成运行环境部署树,其中将所述代理结点配置为靠近根结点,以及将所述代理结点的附属结点配置为树结构中代理结点的子结点并将各所述子结点设置为叶结点;
S03.按照步骤S02生成的所述运行环境部署树,将所需文件以及树结构体从第一层依次向下进行分发,每层按照接收到的所述树结构查询自己的下一层结点并继续向下分发,直到所有的所述叶结点接收到完整的文件。
进一步的,所述步骤S02中生成运行环境部署树时,若存在目的代理结点不在当前作业的所述计算结点列表中,以及在所述计算结点列表中目的节点的子结点的数量超过预设阈值,且目的代理结点处于作业空闲状态,则将目的代理结点临时加入到所述树形结构中;所述步骤S03中在传输任务完成之后,还包括将临时加入所述树形结构的目的代理结点的状态改回空闲状态。
进一步的,所述步骤S02中生成运行环境部署树时,还包括根据维护的所述代理结点集、附属结点集,将所述计算结点列表划分为主板子集、孤儿子集,其中每个所述主板子集为指定物理主板上代理结点及所述代理结点的附属结点的集合,每个所述孤儿子集为目的物理主板上的所述附属结点的集合,所述目的物理主板为代理节点并不在所述计算结点列表中的物理主板;依次处理各所述主板子集、各所述孤儿子集,以使得将所述代理结点配置为靠近根结点,以及将所述代理结点的附属结点配置为所述运行环境部署树中代理结点的子结点,生成所述运行环境部署树。
进一步的,处理所述主板子集的步骤包括:
S201.将当前主板子集中的代理结点加入到树结构中,其中父结点是根结点或者代理结点;
S202.将当前主板子集中的附属结点加入到树结构中,其中父结点是当前主板子集中的代理结点,也是树结构的叶结点。
进一步的,处理所述孤儿子集的步骤包括:
S211.判断所述孤儿子集是否为空,如果非空则计算每个所述孤儿子集中的孤儿结点个数;
S212.判断计算得到的所述孤儿结点个数,如果超过预设阈值则转入步骤S213,如果所述孤儿结点个数不超过预设阈值或者代理结点并不是空闲的,转入步骤S214;
S213.查看当前主板上代理结点的状态,如果是空闲状态则将当前主板上代理节点作为目的代理结点临时加入到树结构中,并将目的代理结点的状态修改为占用状态;
S214.将所述孤儿子集中的结点加入到树结构的最后一层。
进一步的,步骤S02中,具体将当前登录结点配置为所述运行环境部署树的根结点。
进一步的,所述步骤S03的步骤包括:
S301.将生成的所述运行环境及树结构体传递给第一层结点;
S302.当前层中每个结点收到所述运行环境以及树结构体后,查询当前结点是否是叶结点,如果不是则将接收到的所述运行环境以及树结构体,继续传递给树结构中当前结点自己的子结点;
S303.每个结点将所需文件传输给下一层结点完成之后,将传输完成的信号回传给根结点;
S304.当登录结点接收到所有非叶结点的回传信号之后,完成所有的传输工作。
进一步的,所述步骤S303后、步骤S304前,还包括当前临时占用的代理结点完成传输后,清除所述临时代理结点上的运行环境并置为空闲状态。
一种基于拓扑感知的高性能计算系统运行环境部署加速系统,包括:
数据维护模块,用于基于高性能计算系统的网络拓扑结构,在登陆结点上维护代理结点集以及每个代理结点的附属结点集;
树结构生成模块,用于当接收到用户发送的部署请求时,所述部署请求为将当前作业及当前作业的依赖文件部署到指定计算结点的请求,获取所述部署请求中指定的计算结点列表,根据所述计算结点列表以及维护的所述代理结点集、附属结点集生成运行环境部署树,其中将所述代理结点配置为靠近根结点,以及将所述代理结点的附属结点配置为树结构中代理结点的子结点并将各所述子结点设置为叶结点;
传输控制模块,用于按照所述树结构生成模块生成的所述运行环境部署树,将所需文件以及树结构体从第一层依次向下进行分发,每层按照接收到的所述树结构查询自己的下一层结点并继续向下分发,直到所有的所述叶结点接收到完整的文件。
一种计算机装置,包括处理器以及存储器,所述存储器用于存储计算机程序,所述处理器用于执行所述计算机程序,所述处理器用于执行所述计算机程序以执行如上述方法。
与现有技术相比,本发明的优点在于:
1.本发明通过维护代理结点集以及附属结点集,在接收到用户部署请求时,依据计算结点列表以及维护的两个节点集生成运行环境部署树,树结构中代理结点配置为靠近根结、附属结点作为代理节点的子节点,文件传输时按照树结构依次进行分发,使得同样的运行环境只需要代理结点接收一遍,然后由这个代理结点分发给下属的附属结点,相比于传统部署方式中同样的运行环境需要每个理主板的代理结点重复接收,能够大大缓解高性能计算系统中运行环境部署时中间拓扑的网络传输压力,从而有效的加快运行环境的部署速度。
2.本发明进一步如果空闲的代理结点并不在作业结点列表中,但是其附属结点大多都在,将该空闲的代理结点也作为运行环境部署中的代理结点,以负责将运行环境分发给附属结点,能够充分发挥高性能计算系统中局部拓扑的优势,使得运行环境的部署更加高效。
附图说明
图1是传统的高性能计算系统网络拓扑结构示意图。
图2是本发明实施例1基于拓扑感知的高性能计算系统运行环境部署加速方法的实现流程示意图。
图3是本发明实施例1、2在第一种情况(未引入临时代理结点)下运行环境部署的树形结构示意图。
图4是本发明实施例1、2在第二种情况(引入临时代理结点)下运行环境部署的树形结构示意图;
图5是本发明实施例2基于拓扑感知的高性能计算系统运行环境部署加速方法的实现流程示意图。
具体实施方式
以下结合说明书附图和具体优选的实施例对本发明作进一步描述,但并不因此而限制本发明的保护范围。
实施例1:
如图2所示,本实施例基于拓扑感知的高性能计算系统运行环境部署加速方法的步骤包括:
S01.基于高性能计算系统的网络拓扑结构,在登陆结点上维护代理结点集以及每个代理结点的附属结点集;
S02.当接收到用户发送的部署请求时,部署请求为将当前作业及当前作业的依赖文件部署到指定计算结点的请求,获取部署请求中指定的计算结点列表,根据计算结点列表以及维护的代理结点集、附属结点集生成运行环境部署树,其中将代理结点配置为靠近根结点,以及将代理结点的附属结点配置为树结构中代理结点的子结点并将各子结点设置为叶结点;
S03.按照步骤S02生成的运行环境部署树,将所需文件以及树结构体从第一层依次向下进行分发,每层按照接收到的树结构查询自己的下一层结点并继续向下分发,直到所有的叶结点接收到完整的文件。
本实施例考虑高性能计算系统的特殊网络拓扑结构,通过维护代理结点集以及附属结点集,在接收到用户部署请求时,依据计算结点列表以及维护的两个节点集生成运行环境部署树,树结构中代理结点配置为靠近根结、附属结点作为代理节点的子节点,文件传输时按照树结构依次进行分发,使得同样的运行环境只需要代理结点接收一遍,然后由这个代理结点分发给下属的附属结点,相比于传统部署方式中同样的运行环境需要每个理主板的代理结点重复接收,能够大大缓解高性能计算系统中运行环境部署时中间拓扑的网络传输压力,从而有效的加快运行环境的部署速度。
上述代理结点具体即为高速网络代理结点。本实施例上述通过基于高性能计算系统的拓扑结构形成文件传输树形结构(运行环境部署树),在拓扑结构中,由于每个物理主板上的代理结点具有更加高速的网络传输性能,则将这些高速网络代理结点尽可能安排在树形结构中较高的层,也就是尽量靠近根结点,然后将这些代理结点的附属结点安排为树形结构中代理结点的子结点,并且设为叶结点。树形结构的树宽,可以根据计算结点的实际计算资源情况确定,以充分发挥出最高的传输性能。
在具体应用实施例中,可以通过在每个登录结点和计算结点上启动一个daemon进程,由该进程进行运行环境文件的接收以及向其他结点的分发,如后续各步骤中由该daemon进程维护代理结点集、附属结点集,用户在登录结点上进行作业的开发及环境配置后,由用户向当前登录结点上的daemon进程发送部署请求,以及由登录结点的daemon进程分析用户请求中指定的计算结点列表,生成运行环境部署树。
本实施例步骤S01基于高性能计算系统的拓扑结构,维护高速网络“代理结点”集以及“附属结点”列表。附属节点列表通常具有明显的排布方式,例如一块物理主板上集成了八个物理结点,其中一般会设置1-2个高速网络代理结点。以每块物理主板上设一个高速网络代理结点为例,假设cn0作为高速网络代理结点,那么位于同一块物理主板上的cn[1-7]即为网速网络代理结点cn0的附属结点。
本实施例步骤S02中生成运行环境部署树时,若存在目的代理结点不在当前作业的计算结点列表中,以及在计算结点列表中目的节点的子结点的数量超过预设阈值,且目的代理结点处于作业空闲状态,则将目的代理结点临时加入到树形结构中;步骤S03中在传输任务完成之后,还包括将临时加入树形结构的目的代理结点的状态改回空闲状态。即如果在部署时存在满足以下条件的代理节点:代理结点并不在作业结点列表中,但是其大多数“子结点”都在作业结点列表中,并且当前代理结点处于作业空闲状态,则此时可以将该代理结点临时加入到P2P树形结构中,也就是说,如果某些空闲的代理结点并不在作业结点列表中,但是其附属结点大多都在,那么这种情况下将这个空闲的代理结点也作为运行环境部署中的代理结点,来负责将运行环境分发给附属结点,以充分发挥高性能计算系统中局部拓扑的优势,将使得运行环境的部署更加高效。上述方式虽然在传输过程中可能会暂时占用某些额外的结点,但是由于整个传输过程的高效性,占用时间较短,并不会对系统其他任务产生明显的影响。在传输任务完成之后再将上述临时加入的代理结点状态改回空闲状态。
本实施例步骤S02中生成运行环境部署树时,还包括根据维护的代理结点集、附属结点集,将计算结点列表划分为主板子集、孤儿子集,即将结点列表划分为一个个“主板子集”和“孤儿子集”,其中每个主板子集为指定物理主板上代理结点及代理结点的附属结点的集合,每个孤儿子集为目的物理主板上的附属结点的集合,目的物理主板为代理节点并不在计算结点列表中的物理主板,即每个主板子集是某一块物理主板上代理结点及其附属结点的集合,每个孤儿子集是某一块物理主板上的附属结点的集合、但是这个主板上的代理结点并不在作业结点列表中。依次处理各主板子集、各孤儿子集,以使得将代理结点配置为靠近根结点,以及将代理结点的附属结点配置为运行环境部署树中代理结点的子结点,即将结点列表中的高速网络代理结点尽量排列在树的上层,代理结点的附属结点在树结构中是代理结点子结点,生成运行环境部署树。
本实施例中处理主板子集的步骤包括:
S201.将当前主板子集中的代理结点加入到树结构中,其中父结点是根结点或者代理结点;
S202.将当前主板子集中的附属结点加入到树结构中,其中父结点是当前主板子集中的代理结点,也是树结构的叶结点。
在具体应用实施例中,对于每个主板子集,首先将当前主板子集中的代理结点加入到树结构中,父节点是根节点或者某个代理结点,该结点满足子结点数量小于树宽;然后立即将这个主板子集中的附属结点加入到树结构中,父节点是这个主板子集中的代理结点,也是这个树结构的叶结点。上述具体将当前登录结点配置为运行环境部署树的树结构的根结点。
本实施例中处理孤儿子集的步骤包括:
S211.判断孤儿子集是否为空,如果非空则计算每个孤儿子集中的孤儿结点个数;
S212.判断计算得到的孤儿结点个数,如果超过预设阈值则转入步骤S213,如果孤儿结点个数不超过预设阈值或者代理结点并不是空闲的,转入步骤S214;
S213.查看当前主板上代理结点的状态,如果是空闲状态则将当前主板上代理节点作为目的代理结点临时加入到树结构中,并将目的代理结点的状态修改为占用状态;
S214.将孤儿子集中的结点加入到树结构的最后一层。
在具体应用实施例中,上述预设阈值具体可取每个物理主板上结点数目的一半。如果孤儿子集是空集,则得到第一种树结构,如图3所示,其中Login Node为登录节点,Proxy Node为代理节点,Alloc Proxy Node为分配代理节点,Normal Compute Node为普通计算节点;如果孤儿子集非空,则对于每个孤儿子集,计算这个集合中的孤儿结点个数,如果超过每个物理主板上结点数目的一半,则查看这个主板上代理结点的状态;如果是空闲状态,将这个代理结点加入到树结构中,并将其结点状态改为占用状态,这种情况下具体得到的第一种树结构,如图4所示,其中Login Node为登录节点,Proxy Node为代理节点,Alloc Proxy Node为分配代理节点,Normal Compute Node为普通计算节点;如果孤儿子集的结点个数不超过物理主板上结点数目的一半,或者代理结点并不是空闲的,那么将该类孤儿子集中的结点加入到树结构的最后一层,其父节点选择子结点数量小于树宽的代理结点。在极少数情况下,如果此时已经是一个满树,将父节点仍然设置为最后一层的代理节点,即使这时已经超过了预设的树宽,但是代理结点始终能够拥有更好的网络传输性能。
本实施例步骤S03中,具体由登录结点的daemon进程按照步骤S02得到的树结构,将所需文件以及树结构体分发给树的第一层结点,然后第一层结点按照接收到的树结构查询自己的下一层结点继续向下分发,直到所有的叶结点收到完整的文件。
在具体应用实施例中,步骤S03的详细步骤包括:
S301.将生成的运行环境及树结构体传递给第一层结点;
S302.当前层中每个结点收到运行环境以及树结构体后,查询当前结点是否是叶结点,如果不是则将接收到的运行环境以及树结构体,继续传递给树结构中当前结点自己的子结点;
S303.每个结点将所需文件传输给下一层结点完成之后,将传输完成的信号回传给根结点;
S304.当登录结点接收到所有非叶结点的回传信号之后,完成所有的传输工作。
由于文件传输时是按照树结构依次进行分发,同样的运行环境只需要代理结点接收一次后,再由代理结点分发给下属的附属结点,可以避免代理节点的重复接收,相比于传统部署方式中同样的运行环境需要每个理主板的代理结点重复接收,能够大大缓解高性能计算系统中运行环境部署时中间拓扑的网络传输压力,加快运行环境的部署速度。
上述步骤S303后、步骤S304前,还包括当前临时占用的代理结点完成传输后,清除临时代理结点上的运行环境并置为空闲状态。
本实施例基于拓扑感知的高性能计算系统运行环境部署加速系统包括:
数据维护模块,用于基于高性能计算系统的网络拓扑结构,在登陆结点上维护代理结点集以及每个代理结点的附属结点集;
树结构生成模块,用于当接收到用户发送的部署请求时,部署请求为将当前作业及当前作业的依赖文件部署到指定计算结点的请求,获取部署请求中指定的计算结点列表,根据计算结点列表以及维护的代理结点集、附属结点集生成运行环境部署树,其中将代理结点配置为靠近根结点,以及将代理结点的附属结点配置为树结构中代理结点的子结点并将各子结点设置为叶结点;
传输控制模块,用于按照树结构生成模块生成的运行环境部署树,将所需文件以及树结构体从第一层依次向下进行分发,每层按照接收到的树结构查询自己的下一层结点并继续向下分发,直到所有的叶结点接收到完整的文件。
本实施例基于拓扑感知的高性能计算系统运行环境部署加速装置与上述基于拓扑感知的高性能计算系统运行环境部署加速方法一一对应,在此不再一一赘述。
在另一实施例中,本发明还提供计算机装置,包括处理器以及存储器,存储器用于存储计算机程序,处理器用于执行计算机程序,处理器用于执行计算机程序以执行上述方法。
实施例2:
本实施例为在具体应用实施例中采用与实施例1相同的原理实现基于拓扑感知的高性能计算系统运行环境部署加速,即核心思想包括:第一,基于高性能计算系统的拓扑结构维护高速网络“代理结点”集以及“附属结点”列表;第二,基于高性能计算系统的拓扑结构设计文件传输树形结构:在拓扑结构中,将每个物理主板上的高速网络代理结点尽可能安排在树形结构中较高的层,也就是尽量靠近根结点,然后将这些代理结点的附属结点安排为树形结构中代理结点的子结点。第三,如果某些高速网代理结点并不在作业结点列表中,但是其大多“子结点”都在作业结点列表中,并且当前高速网络代理结点处于作业空闲状态,那么将该高速网络代理结点临时加入到树形结构中,在传输任务完成之后将这些临时加入的代理结点状态改回空闲状态。
如图5所示,本实施例基于拓扑感知的高性能计算系统运行环境部署加速方法的详细步骤包括:
第一步,每个登录结点和计算结点上启动一个daemon进程,该进程的任务是进行运行环境文件的接收以及向其他结点的分发。
第二步,基于高性能计算系统的网络拓扑结构,登录结点上的daemon进程维护高速网络代理结点集,并维护每个高速网络代理结点的附属结点集。
第三步,用户在登录结点上进行作业的开发及环境配置,然后用户向当前登录结点上的daemon进程发送请求,请求将作业及其依赖文件部署到指定的计算结点上。
第四步,当前登录结点的daemon进程分析用户请求中指定的计算结点列表,根据此结点列表生成一棵运行环境部署树。
步骤4.1将当前登录结点设为树的根结点。
步骤4.2根据第二步中维护的两个结点集,将结点列表划分为一个个“主板子集”和“孤儿子集”,其中每个主板子集是某一块物理主板上代理结点及其附属结点的集合,每个孤儿子集是某一块物理主板上的附属结点的集合,但是这个主板上的代理结点并不在作业结点列表中。
步骤4.3将结点列表中的高速网络代理结点尽量排列在树的上层,代理结点的附属结点在树结构中是代理结点子结点,并且设为叶结点。
4.3.1首先处理主板子集
4.3.1.1)对于步骤4.2中的每个主板子集,将主板子集中的代理结点加入到树结构中,父节点是根节点或者某个代理结点,该结点满足子结点数量小于树宽;
4.3.1.2)将这个主板子集中的附属结点加入到树结构中,父节点是这个主板子集中的代理结点,也是这个树结构的叶结点。
4.3.2孤儿子集处理
4.3.2.1)如果孤儿子集是空集,得到最终的树结构(如图2所示),如果孤儿子集非空,对于每个孤儿子集,计算这个集合中的孤儿结点个数,如果超过每个物理主板上结点数目的一半,查看这个主板上代理结点的状态;如果是空闲状态,将这个代理结点加入到树结构中,并将其结点状态改为占用状态,得到最终的树结构(如图3所示)。
4.3.2.3)如果孤儿子集的结点个数不超过物理主板上结点数目的一半,或者代理结点并不是空闲的,则将这样的孤儿子集中的结点加入到树结构的最后一层,其父节点选择子结点数量小于树宽的代理结点。如果已经是一个满树,将父节点仍然设置为最后一层的代理节点。
第五步,登录结点的daemon进程按照第四步中的树结构将文件以及树结构体分发给树的第一层结点,然后第一层结点按照接收到的树结构查询自己的下一层结点,继续向下分发。直到所有的叶结点收到完整的文件。
步骤5.1登录结点的daemon进程负责按照第四步生成的树结构将运行环境及树结构体传递给第一层结点。
步骤5.2每个结点的daemon进程收到运行环境以及树结构体后,查询此结点是否是叶结点,如果不是,将运行环境以及树结构体继续传递给树结构中自己的子结点。
步骤5.3每个结点将文件传输给下一层结点完成之后,将传输完成的信号回传给根节点,也就是用户的登录结点。
步骤5.4临时占用的代理结点完成传输后,清除这些临时代理结点上的运行环境,并立刻将其置为空闲状态。
步骤5.5登录结点收到所有非叶结点的回传信号之后,表示此时所有的传输工作完成。
上述只是本发明的较佳实施例,并非对本发明作任何形式上的限制。虽然本发明已以较佳实施例揭露如上,然而并非用以限定本发明。因此,凡是未脱离本发明技术方案的内容,依据本发明技术实质对以上实施例所做的任何简单修改、等同变化及修饰,均应落在本发明技术方案保护的范围内。
Claims (9)
1.一种基于拓扑感知的高性能计算系统运行环境部署加速方法,其特征在于,步骤包括:
S01.基于高性能计算系统的网络拓扑结构,在登陆结点上维护代理结点集以及每个代理结点的附属结点集;
S02.当接收到用户发送的部署请求时,所述部署请求为将当前作业及当前作业的依赖文件部署到指定计算结点的请求,获取所述部署请求中指定的计算结点列表,根据所述计算结点列表以及维护的所述代理结点集、附属结点集生成运行环境部署树,其中将所述代理结点配置为靠近根结点,以及将所述代理结点的附属结点配置为运行环境部署树的树结构中代理结点的子结点并将各所述子结点设置为叶结点;
S03.按照步骤S02生成的所述运行环境部署树,将所需文件以及树结构从第一层依次向下进行分发,每层按照接收到的所述树结构查询自己的下一层结点并继续向下分发,直到所有的所述叶结点接收到完整的文件;
所述步骤S02中生成运行环境部署树时,包括根据维护的所述代理结点集、附属结点集,将所述计算结点列表划分为主板子集、孤儿子集,其中每个所述主板子集为指定物理主板上代理结点及所述代理结点的附属结点的集合,每个所述孤儿子集为目的物理主板上的所述附属结点的集合,所述目的物理主板为代理节点并不在所述计算结点列表中的物理主板;依次处理各所述主板子集、各所述孤儿子集,以使得将所述代理结点配置为靠近根结点,以及将所述代理结点的附属结点配置为所述运行环境部署树中代理结点的子结点,生成所述运行环境部署树。
2.根据权利要求1所述的基于拓扑感知的高性能计算系统运行环境部署加速方法,其特征在于:所述步骤S02中生成运行环境部署树时,若存在目的代理结点不在当前作业的所述计算结点列表中,以及在所述计算结点列表中目的节点的子结点的数量超过预设阈值,且目的代理结点处于作业空闲状态,则将目的代理结点临时加入到所述树结构中;所述步骤S03中在传输任务完成之后,还包括将临时加入所述树结构的目的代理结点的状态改回空闲状态。
3.根据权利要求2所述的基于拓扑感知的高性能计算系统运行环境部署加速方法,其特征在于,处理所述主板子集的步骤包括:
S201.将当前主板子集中的代理结点加入到树结构中,其中父结点是根结点或者代理结点;
S202.将当前主板子集中的附属结点加入到树结构中,其中父结点是当前主板子集中的代理结点,也是树结构的叶结点。
4.根据权利要求2所述的基于拓扑感知的高性能计算系统运行环境部署加速方法,其特征在于,处理所述孤儿子集的步骤包括:
S211.判断所述孤儿子集是否为空,如果非空则计算每个所述孤儿子集中的孤儿结点个数;
S212.判断计算得到的所述孤儿结点个数,如果超过预设阈值则转入步骤S213,如果所述孤儿结点个数不超过预设阈值或者代理结点并不是空闲的,转入步骤S214;
S213.查看当前主板上代理结点的状态,如果是空闲状态则将当前主板上代理节点作为目的代理结点临时加入到树结构中,并将目的代理结点的状态修改为占用状态;
S214.将所述孤儿子集中的结点加入到树结构的最后一层。
5.根据权利要求1~4中任意一项所述的基于拓扑感知的高性能计算系统运行环境部署加速方法,其特征在于:步骤S02中,具体将当前登录结点配置为所述运行环境部署树的根结点。
6.根据权利要求1~4中任意一项所述的基于拓扑感知的高性能计算系统运行环境部署加速方法,其特征在于,所述步骤S03的步骤包括:
S301.将生成的所述运行环境及树结构传递给第一层结点;
S302.当前层中每个结点收到所述运行环境以及树结构后,查询当前结点是否是叶结点,如果不是则将接收到的所述运行环境以及树结构,继续传递给树结构中当前结点自己的子结点;
S303.每个结点将所需文件传输给下一层结点完成之后,将传输完成的信号回传给根结点;
S304.当登录结点接收到所有非叶结点的回传信号之后,完成所有的传输工作。
7.根据权利要求6所述的基于拓扑感知的高性能计算系统运行环境部署加速方法,其特征在于,所述步骤S303后、步骤S304前,还包括当前临时占用的代理结点完成传输后,清除当前临时占用的代理结点上的运行环境并置为空闲状态。
8.一种基于拓扑感知的高性能计算系统运行环境部署加速系统,其特征在于,包括:
数据维护模块,用于基于高性能计算系统的网络拓扑结构,在登陆结点上维护代理结点集以及每个代理结点的附属结点集;
树结构生成模块,用于当接收到用户发送的部署请求时,所述部署请求为将当前作业及当前作业的依赖文件部署到指定计算结点的请求,获取所述部署请求中指定的计算结点列表,根据所述计算结点列表以及维护的所述代理结点集、附属结点集生成运行环境部署树,其中将所述代理结点配置为靠近根结点,以及将所述代理结点的附属结点配置为运行环境部署树的树结构中代理结点的子结点并将各所述子结点设置为叶结点;
传输控制模块,用于按照所述树结构生成模块生成的所述运行环境部署树,将所需文件以及树结构从第一层依次向下进行分发,每层按照接收到的所述树结构查询自己的下一层结点并继续向下分发,直到所有的所述叶结点接收到完整的文件;
所述树结构生成模块中生成运行环境部署树时,包括根据维护的所述代理结点集、附属结点集,将所述计算结点列表划分为主板子集、孤儿子集,其中每个所述主板子集为指定物理主板上代理结点及所述代理结点的附属结点的集合,每个所述孤儿子集为目的物理主板上的所述附属结点的集合,所述目的物理主板为代理节点并不在所述计算结点列表中的物理主板;依次处理各所述主板子集、各所述孤儿子集,以使得将所述代理结点配置为靠近根结点,以及将所述代理结点的附属结点配置为所述运行环境部署树中代理结点的子结点,生成所述运行环境部署树。
9.一种计算机装置,包括处理器以及存储器,所述存储器用于存储计算机程序,所述处理器用于执行所述计算机程序,其特征在于,所述处理器用于执行所述计算机程序以执行如权利要求1~7中任意一项所述方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110865567.5A CN113630269B (zh) | 2021-07-29 | 2021-07-29 | 基于拓扑感知的高性能计算系统运行环境部署加速方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110865567.5A CN113630269B (zh) | 2021-07-29 | 2021-07-29 | 基于拓扑感知的高性能计算系统运行环境部署加速方法及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113630269A CN113630269A (zh) | 2021-11-09 |
CN113630269B true CN113630269B (zh) | 2023-11-10 |
Family
ID=78381932
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110865567.5A Active CN113630269B (zh) | 2021-07-29 | 2021-07-29 | 基于拓扑感知的高性能计算系统运行环境部署加速方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113630269B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115525302B (zh) * | 2022-09-23 | 2023-06-09 | 北京大学 | 一种大规模数字对象仓库集群的部署方法及装置 |
CN115834594B (zh) * | 2022-11-16 | 2024-04-19 | 贵州电网有限责任公司 | 一种用于改善高性能计算应用的数据收集方法 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101883039A (zh) * | 2010-05-13 | 2010-11-10 | 北京航空航天大学 | 大规模集群系统的数据传输网络及其构建方法 |
WO2015003414A1 (zh) * | 2013-07-12 | 2015-01-15 | 中国人民解放军理工大学 | 一种基于多参数认知的快速网络拓扑推断方法 |
CN104536899A (zh) * | 2015-01-20 | 2015-04-22 | 成都益联科创科技有限公司 | 一种基于智能集群的软件部署及其维护方法 |
CN111314023A (zh) * | 2020-02-18 | 2020-06-19 | 中国电子科技集团公司第五十四研究所 | 一种树型网络拓扑信息的同步方法 |
CN112394954A (zh) * | 2020-12-03 | 2021-02-23 | 中国人民解放军国防科技大学 | 一种面向高性能计算的随作业自动部署运行环境方法 |
-
2021
- 2021-07-29 CN CN202110865567.5A patent/CN113630269B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101883039A (zh) * | 2010-05-13 | 2010-11-10 | 北京航空航天大学 | 大规模集群系统的数据传输网络及其构建方法 |
WO2015003414A1 (zh) * | 2013-07-12 | 2015-01-15 | 中国人民解放军理工大学 | 一种基于多参数认知的快速网络拓扑推断方法 |
CN104536899A (zh) * | 2015-01-20 | 2015-04-22 | 成都益联科创科技有限公司 | 一种基于智能集群的软件部署及其维护方法 |
CN111314023A (zh) * | 2020-02-18 | 2020-06-19 | 中国电子科技集团公司第五十四研究所 | 一种树型网络拓扑信息的同步方法 |
CN112394954A (zh) * | 2020-12-03 | 2021-02-23 | 中国人民解放军国防科技大学 | 一种面向高性能计算的随作业自动部署运行环境方法 |
Also Published As
Publication number | Publication date |
---|---|
CN113630269A (zh) | 2021-11-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN113630269B (zh) | 基于拓扑感知的高性能计算系统运行环境部署加速方法及系统 | |
US8140704B2 (en) | Pacing network traffic among a plurality of compute nodes connected using a data communications network | |
US8122228B2 (en) | Broadcasting collective operation contributions throughout a parallel computer | |
US7895260B2 (en) | Processing data access requests among a plurality of compute nodes | |
US8775698B2 (en) | Performing an all-to-all data exchange on a plurality of data buffers by performing swap operations | |
US9268614B2 (en) | Configuring a parallel computer based on an interleave rate of an application containing serial and parallel segments | |
US8161268B2 (en) | Performing an allreduce operation on a plurality of compute nodes of a parallel computer | |
US7734706B2 (en) | Line-plane broadcasting in a data communications network of a parallel computer | |
US8516490B2 (en) | Rule-based dynamic resource adjustment for upstream and downstream processing units in response to an intermediate processing unit event | |
US8422402B2 (en) | Broadcasting a message in a parallel computer | |
US7797445B2 (en) | Dynamic network link selection for transmitting a message between compute nodes of a parallel computer | |
US8185901B2 (en) | Parsing an application to find serial and parallel data segments to minimize migration overhead between serial and parallel compute nodes | |
US7840779B2 (en) | Line-plane broadcasting in a data communications network of a parallel computer | |
EP2881862B1 (en) | Distributed processing device and distributed processing system as well as distributed processing method | |
US9208052B2 (en) | Algorithm selection for collective operations in a parallel computer | |
CN116302617B (zh) | 共享内存的方法、通信方法、嵌入式系统以及电子设备 | |
Sun et al. | Republic: Data multicast meets hybrid rack-level interconnections in data center | |
US8788649B2 (en) | Constructing a logical, regular axis topology from an irregular topology | |
US9246792B2 (en) | Providing point to point communications among compute nodes in a global combining network of a parallel computer | |
CN115705247A (zh) | 一种运行进程的方法及相关设备 | |
CN110650101A (zh) | 一种cifs网络带宽的优化方法、装置和介质 | |
CN113590281A (zh) | 基于动态集中式调度的分布式并行模糊测试方法及系统 | |
KR102582777B1 (ko) | 에지 컴퓨팅 환경을 위한 경량 큐브에지 구성 방법 및 장치 | |
Mitchell | Simulation of an optical network system for a space based high performance computer system | |
CN116302220A (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 |