CN113630453B - 面向高性能计算的大规模运行环境快速启动方法及系统 - Google Patents
面向高性能计算的大规模运行环境快速启动方法及系统 Download PDFInfo
- Publication number
- CN113630453B CN113630453B CN202110863957.9A CN202110863957A CN113630453B CN 113630453 B CN113630453 B CN 113630453B CN 202110863957 A CN202110863957 A CN 202110863957A CN 113630453 B CN113630453 B CN 113630453B
- Authority
- CN
- China
- Prior art keywords
- transmission
- file system
- user
- environment
- scale
- 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 69
- 230000005540 biological transmission Effects 0.000 claims abstract description 187
- 230000008569 process Effects 0.000 claims abstract description 39
- 238000004458 analytical method Methods 0.000 claims abstract description 25
- 230000011218 segmentation Effects 0.000 claims abstract description 12
- 230000004048 modification Effects 0.000 claims description 18
- 238000012986 modification Methods 0.000 claims description 18
- 230000018109 developmental process Effects 0.000 claims description 10
- 238000004590 computer program Methods 0.000 claims description 8
- 230000001419 dependent effect Effects 0.000 description 10
- 238000010586 diagram Methods 0.000 description 4
- 238000005516 engineering process Methods 0.000 description 4
- 238000005538 encapsulation Methods 0.000 description 2
- 230000009471 action Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000004806 packaging method and process Methods 0.000 description 1
- 239000000126 substance Substances 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1097—Protocols in which an application is distributed across nodes in the network for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]
-
- 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
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/06—Protocols specially adapted for file transfer, e.g. file transfer protocol [FTP]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/104—Peer-to-peer [P2P] networks
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/104—Peer-to-peer [P2P] networks
- H04L67/1074—Peer-to-peer [P2P] networks for supporting data block transmission mechanisms
- H04L67/1078—Resource delivery mechanisms
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开一种面向高性能计算的大规模运行环境快速启动方法及系统,该方法步骤包括:S1.在高性能计算系统的登录结点上为每个用户预置层次化文件系统;S2.接收到用户发出的作业运行请求时,对当前作业进行依赖分析并进行运行环境分割,将层次化文件系统的上层文件系统中当前作业及当前作业所需要的依赖项作为第一部分传输内容、上层文件系统中其余文件作为第二部分传输内容;S3.服务进程进行传输时,分步传输第一部分传输内容、第二部分传输内容,其中优先传输所述第一部分传输内容,在第一部分传输内容完成时启动用户作业。本发明能够适用于大规模运行环境,具有实现方法简单、传输效率高以及用户作业启动速度快等优点。
Description
技术领域
本发明涉及高性能计算技术领域,尤其涉及一种面向高性能计算的大规模运行环境快速启动方法及系统。
背景技术
当前的高性能计算机系统将物理结点划分为登录结点和计算结点,用户在登录结点发出作业请求后,高性能计算系统通过作业管理系统来分配计算结点以响应这些请求,完成相应的任务,这个作业请求发出之前,需要提前完成作业以及作业的运行环境在计算结点上的部署。上述部署过程通常耗费大量的时间,尤其随着规模的增大,运行环境的启动耗时将会越来越长。在上述部署过程中,当前运行环境的部署与启动主要存在以下几种模式:
1、基于全局共享文件系统的运行环境
在高性能计算系统中,存在全局共享文件系统(如图1所示)。全局共享文件系统是一个高速存储服务器。所有的登录结点和计算结点都可以直接访问这个全局共享文件系统。依赖于全局共享文件系统,用户可以方便的在登录结点上进行作业的开发和环境的配置,然后需要将作业及其运行环境部署到计算结点上。登录结点上的用户只需要将作业开发及其环境配置全部在全局共享文件系统中进行即可,然后计算结点上将能够直接访问这个全局共享文件系统,使作业得以正常运行。也就是说,这种模式是通过全局共享文件系统进行了运行环境的部署,使得避免用户将运行环境手动同步到计算结点上的麻烦。
但是该类基于全局共享文件系统的运行环境主要会存在以下缺点:
(1)多个用户在全局共享文件系统中进行作业开发和环境配置,那么每个用户的文件对于其他用户都是可见的,也就是说,该模式完全无法保护用户的隐私。
(2)多个用户在全局共享文件系统中进行作业的开发和环境的配置,由于不同用户的需求差异,很容易导致运行环境的配置冲突,使得部分用户的作业无法正常运行。
基于以上的两个缺点,该模式在实际的使用场景中并不被推荐。
2、基于容器技术的运行环境
用户的作业使用的库和依赖项可能很复杂,为了使得作业运行环境的部署更加方便,容器技术被应用到高性能计算系统中。例如Shifter和Singularity就是专门为高性能计算设计的容器,它们是通过利用容器image来实现更为迅速的作业打包、移植和部署,用户在登录结点上进行自己的作业开发以及环境配置,然后将这些打包到容器image中,然后将容器image传输到计算结点上,最后用户发出作业运行请求之后,相应的计算结点上将根据容器image来启动相应的容器,用户的作业即是在这个容器环境中运行。相比较于基于全局共享文件系统的运行环境模式,基于容器技术的运行环境部署与启动模式能够在一定程度上保护用户的隐私。
但是基于容器技术的运行环境部署与启动模式仍然会存在以下缺点:
(1)容器image只能通过用户手动维护,作业正常运行所需要的环境需要打包到容器image中,但是在高性能计算系统这种高度定制的软硬件环境中,用户很难完全自己维护。
(2)容器image中通常包含大量无效文件,也就是用户作业以及实际运行时所需要的依赖项在容器image中所占的比例较小,将容器image传输到计算结点上需要耗费大量的时间,因而容器image的传输时间成为了运行环境快速启动的瓶颈。而将容器image手动地从一个登录结点直接传输到大量计算结点上,显然是效率最低的方式。
在上述基于容器技术的运行环境部署方式的基础上,为了使容器image更快的分发到相应的计算结点上,更快的启动作业的运行环境,现有技术中主要采用以下有两种方式:
(一)基于共享文件系统的容器image拉取
用户在登录结点上将作业及其依赖项打包成容器image后,将这个容器image拷贝至全局共享文件系统,然后在每个计算结点上需要启动容器运行环境时,将容器image从全局共享文件系统拉取至本地。
但是该模式也存在明显的缺点:全局共享文件系统是一个远程存储服务器,在大规模的计算结点同时进行访问时,尤其是访问容器image这样的大文件,很容易达到服务能力瓶颈,因而由于存在远程存储服务器的带宽等限制条件,该模式将很难实现大规模场景下容器image的快速拉取。
(二)基于P2P文件传输的容器image分发
用户在登录结点上将作业及其依赖项打包成容器image后,将这个容器image通过P2P传输的方式分发给使用的计算结点。典型的P2P树型传输的基本模式为:登录结点将容器image分发给第一层结点,然后结点在收到容器image后,将这个容器image分发给下一层。在使用的计算结点规模庞大时,该类基于P2P文件传输的容器image分发模式将比基于共享文件系统的容器image拉取模式更加高效。但是该模式也存在明显的缺点:在作业使用的计算结点的规模较大时,这种模式并不高效,尤其是使用的计算结点的数量越大,该问题将会越发明显,即计算结点的数量越大效率会越低。
发明内容
本发明要解决的技术问题就在于:针对现有技术存在的技术问题,本发明提供一种实现方法简单、传输效率高以及用户作业启动速度快的面向高性能计算的大规模运行环境快速启动方法及系统。
为解决上述技术问题,本发明提出的技术方案为:
一种面向高性能计算的大规模运行环境快速启动方法,步骤包括:
S1.在高性能计算系统的登录结点上为每个用户预置层次化文件系统,所述层次化文件系统中将系统标准环境作为底层、用于存储用户所做文件修改的用户空目录作为上层;
S2.接收到用户发出的作业运行请求时,对当前作业进行依赖分析并根据依赖分析结果进行运行环境分割,将所述层次化文件系统的上层文件系统中当前作业及当前作业所需要的依赖项作为第一部分传输内容、所述上层文件系统中其余文件作为第二部分传输内容;
S3.服务进程进行传输时,分步传输所述第一部分传输内容、所述第二部分传输内容,其中优先传输所述第一部分传输内容,在第一部分传输内容完成时启动用户作业。
进一步的,所述层次化文件系统中底层配置为被用户共享,用户作业的开发、运行环境的配置以及用户所做的文件修改发生在所述层次化文件系统中上层。
进一步的,所述步骤S1后、步骤S2前,当用户登陆到登陆节点上时,还包括将用户视角下的根目录重定向到所述层次化文件系统的整合目录。
进一步的,所述步骤S3的步骤包括:
S301.服务进程开始进行传输时,传输所述第一部分传输内容;
S302.当所述第一部分传输内容传输完成,启动运行环境以及用户作业同时传输第二部分。
进一步的,所述步骤S302的步骤包括:
S311.服务进程接收到所述第一部分传输内容传输完成的信号时,在对应计算结点上启动对应运行环境并开始执行作业;
S312.服务进程开始传输所述第二部分传输内容,当所述第二部分传输内容传输完成或者作业运行完成,结束传输并返回结果。
进一步的,所述步骤S3中服务进程进行传输时,还包括根据当前作业规模确定传输方式,具体步骤包括:判断当前作业规模,若当前作业规模不超过预先配置的系统传输能力临界值,则使用第一传输方式,否则采用第二传输方式,所述第一传输方式与所述第二传输方式不同。
进一步的,所述第一传输方式为基于共享文件系统的运行环境拉取方式,所述第二传输方式为基于P2P文件传输的运行环境分发方式。
进一步的,所述系统传输能力临界值具体根据所述基于共享文件系统拉取与所述基于P2P文件传输的性能等价点确定得到。
一种面向高性能计算的大规模运行环境快速启动系统,包括:
文件系统配置模块,用于在高性能计算系统的登录结点上为每个用户预置层次化文件系统,所述层次化文件系统中将系统标准环境作为底层、用于存储用户所做的文件修改的用户空目录作为上层;
依赖分析及运行环境分割模块,用于接收到用户发出的作业运行请求时,对当前作业进行依赖分析并根据依赖分析结果进行运行环境分割,将所述层次化文件系统的上层文件系统中当前作业及当前作业所需要的依赖项作为第一部分传输内容、所述上层文件系统中其余文件作为第二部分传输内容;
传输控制模块,用于服务进程进行传输时,分步传输所述第一部分传输内容、所述第二部分传输内容,其中优先传输所述第一部分传输内容,在第一部分传输内容完成时启动用户作业。
一种计算机装置,包括处理器以及存储器,所述存储器用于存储计算机程序,所述处理器用于执行所述计算机程序,所述处理器用于执行所述计算机程序以执行如上述方法。
与现有技术相比,本发明的优点在于:
1、本发明在高性能计算系统的登录结点上为每个用户设计层次化文件系统的基础上,结合该层次化文件系统架构,在用户发出作业运行请求时,对用户的作业进行依赖分析,将当前作业的位于上层文件系统的依赖项以及作业本身作为运行环境传输和部署的第一部分传输内容、其他文件作为第二部分传输内容,优先传输第一部分传输内容,该部分传输完成后启动用户作业,相比于传统容器部署需要完整传输容器image来说,可以大大提高传输效率,使得运行环境的启动时间大大缩短,从而实现运行环境的快速启动。
2、本发明进一步在进行运行环境传输时,根据作业的实时运行规模进行传输方式选择,在规模较小的情况下,选择基于共享文件系统的运行环境拉取方式,使得具有更高的效率,在规模较大的情况下,选择基于P2P文件传输的运行环境分发方式,以提高大规模环境下的传输效率,从而充分发挥高性能计算系统中不同传输方式的性能优势,使得可以确保各类规模环境下传输效率,且还可以为用户减少高性能计算系统的使用负担。
附图说明
图1是传统的高性能计算系统全局共享文件系统架构示意图。
图2是本发明实施例1面向高性能计算的大规模运行环境快速启动方法的实现流程示意图。
图3是本发明实施例1、2中层次化文件系统设置的原理示意图;
图4是本发明实施例1、2中采用的基于共享文件系统的运行环境拉取方式的实现原理示意图。
图5是本发明实施例1、2中采用的基于P2P文件传输的运行环境分发方式的实现原理示意图。
图6是本发明实施例2面向高性能计算的大规模运行环境快速启动方法的实现流程示意图。
具体实施方式
以下结合说明书附图和具体优选的实施例对本发明作进一步描述,但并不因此而限制本发明的保护范围。
实施例1:
如图2所示,本实施例面向高性能计算的大规模运行环境快速启动方法的详细步骤包括:
S1.在高性能计算系统的登录结点上为每个用户预置层次化文件系统,层次化文件系统中将系统标准环境作为底层、用于存储用户所做的文件修改的用户空目录作为上层。
本实施例层次化文件系统中底层配置为被用户共享,用户作业的开发、运行环境的配置以及用户所做的文件修改均发生在层次化文件系统中上层,用户的修改包括用户作业以及作业运行所需要的依赖等。
在具体应用实施例中,在高性能计算系统的登录结点上为每个用户预置层次化文件系统,如图2所示,首先系统标准环境作为层次化文件系统的底层,被所有用户共享,具体由系统管理员维护层次化文件系统的底层,系统管理员的修改可以立即更新到所有用户视角下;其次,由一个用户空目录作为层次化文件系统的上层,用户作业的开发以及运行环境的自定义配置均发生在层次化文件系统的上层。由于每个用户拥有独立的上层文件系统,因而用户的操作既不会影响系统标准环境,也不会对其他用户产生影响。用户在登录结点上完成作业调试以及运行环境配置之后,发出作业运行请求。
本实施例通过配置层次化文件系统来替代传统的容器image,将标准的系统环境作为层次化文件系统的底层、用户所做的一切文件的修改(用户的作业开发以及作业环境配置)均发生在层次化文件系统的上层,相对于传统的容器image封装运行环境的方式,可以使每个用户都可以直接共享底层标准系统环境,又可以自由地进行环境配置/定制,且由于修改的过程会触发“写时复制”机制,使得文件的修改均发生在层细化文件系统的上层,这样既不会影响标准的系统环境,也不会在不同的用户之间产生影响,并且不同的用户拥有独立的上层文件系统,用户之间互不产生影响。通过采用上述层次化文件系统作业在计算结点上运行时,只需要将上层文件系统提前同步到相应的计算结点上即可。
本实施例步骤S1后、步骤S2前还包括:用户登录到登录结点上时,将用户视角下的根目录被重定向到层次化文件系统的整合目录。初始情况下,用户则可以直接看到整个系统底层环境。
S2.接收到用户发出的作业运行请求时,对当前作业进行依赖分析并根据依赖分析结果进行运行环境分割,将层次化文件系统的上层文件系统中当前作业及当前作业所需要的依赖项作为第一部分传输内容、上层文件系统中其余文件作为第二部分传输内容。
上层文件系统中用户可能针对不同的作业做了大量的修改,本实施例在用户发出作业运行请求之后,对当前作业进行依赖分析,确定哪些依赖项位于层次化文件系统的上层,这部分依赖项即为用户的自定义配置项,将这一部分依赖项以及作业本身作为第一部分传输内容,即将上层文件系统中当前作业及其所需要的依赖项作为第一部分传输内容(具体如图4和图5中Part I),上层文件系统中其余文件作为第二部分传输内容(具体如图4和图5中Part II),至此完成作业运行环境切割。
在具体应用实施例中,采用上述步骤进行依赖分析划分得到第一部分传输内容(Part I)、第二部分传输内容(Part II)如图4、5所示。
通过上述步骤,在第一部分传输内容传输完成时,用户作业在计算结点上已经得到了完整的运行环境,已经达到运行环境启动、作业运行的条件,用户作业即可以正常运行,使得用户作业可以提前启动,从而达到了运行环境快速启动的目的。
S3.服务进程进行传输时,分步传输第一部分传输内容、第二部分传输内容,其中优先传输所述第一部分传输内容,在第一部分传输内容完成时启动用户作业。
结合步骤S2中的依赖分析以及运行环境分割结果,本实施例步骤S3中将第一部分传输内容、第二部分传输内容分步进行传输,并在第一部分传输完成时提前启动用户作业,使得可以实现运行环境的快速启动。
本实施例步骤S3的具体步骤包括:
S301.服务进程开始进行第一部分传输内容的传输;
S302.当第一部分传输内容传输完成,启动运行环境以及用户作业,同时传输第二部分。
即分步传输时,首先传输第一部分传输内容(Part I),第一部分传输内容(PartI)传输完成,启动运行环境以及用户作业,同时传输第二部分传输内容(Part II)。
上述步骤S302的详细步骤包括:
S311.服务进程收到第一部分传输内容传输完成的信号后,在对应计算结点上启动对应运行环境并开始执行作业;
S312.服务进程开始传输第二部分传输内容,当第二部分传输内容传输完成或者作业运行完成,结束传输并返回结果。
上述步骤S311具体服务进程收到第一部分传输内容传输完成的信号后,可以通过作业管理系统在对应计算结点上启动对应运行环境并开始执行作业,并开始执行作业。
上述步骤S312中根据作业的运行时长,第二部分传输内容传输完成或者作业运行完成两者可能在不同情况下完成的先后顺序不同,但是并不影响结果的正确性。
本实施例步骤S3中服务进程进行传输时,还包括根据当前作业规模确定传输方式,具体步骤包括:判断当前作业规模,若当前作业规模不超过预先配置的系统传输能力临界值,则使用第一传输方式,否则采用第二传输方式,第一传输方式与第二传输方式不同。即上述第一部分传输内容、第二部分传输内容传输时,依据作业规模来确定具体的传输方式,以使得满足不同作业规模下的需求,确保不同作业规模下的传输效率。
本实施例中,第一传输方式具体为基于共享文件系统的运行环境拉取方式,如图4所示,第二传输方式具体为基于P2P文件传输的运行环境分发方式,如图5所示。在规模较小时,基于共享文件系统的方式效率更高,随着规模的增大,基于P2P文件传输的方式性能得以更加充分的体现,本实施例通过根据作业的实时运行规模进行传输方式的选择,能够更加快速地完成运行环境的部署,从而为快速启动提供支持,且该过程对于用户是透明的、自动完成的,能够为用户减少了高性能计算系统的使用负担。当然上述第一传输方式、第二传输方式具体也可以根据实际需求选取其他方式,以使得能够进一步满足不同规模下的传输需求。
在高性能计算系统中,基于共享文件系统的运行环境拉取和基于P2P文件传输的运行环境分发存在性能分界点,系统传输能力临界值具体可以即可取基于共享文件系统拉取和基于P2P文件传输的性能等价点。
在具体应用实施例中,上述传输第一部分传输内容的详细步骤为:服务进程维护一个系统传输能力临界值,该值具体为系统基于共享文件系统拉取和基于P2P文件传输的性能等价点;服务进程根据当前作业的规模选择更加高效的传输方式:当作业规模不超过系统传输能力临界值时,使用基于共享文件系统的运行环境拉取方式(如图3所示),即首先将用户上层文件系统的第一部分传输内容(Part I)从登录结点传输到共享文件系统(即为图3中的存储服务器)中,然后计算结点直接将第一部分传输内容(Part I)从共享文件系统拉取到本地;当作业规模超过系统传输能力临界值时,使用基于P2P文件传输的运行环境分发方式(如图4所示),即直接将用户上层文件系统的第一部分传输内容(Part I)通过P2P传输的方式从登录结点直接分发到相应的计算结点上。
完成上述步骤后,还包括计算结点清除作业运行环境步骤,以清除当前的作业运行环境。
本发明在高性能计算系统中,在配置层次化文件系统实现用户作业运行环境的封装的基础上,通过用户作业依赖分析进行分步传输,提前启动用户作用,可以达到大规模运行环境快速启动的目的,进一步通过依据作业实时运行规模选择匹配的运行环境部署方式,可以进一步匹配大规模运行环境实现更加快速的启动。
本实施例还包括面向高性能计算的大规模运行环境快速启动系统,包括:
文件系统配置模块,用于在高性能计算系统的登录结点上为每个用户预置层次化文件系统,层次化文件系统中将系统标准环境作为底层、用于存储用户所做的文件修改的用户空目录作为上层;
依赖分析及运行环境分割模块,用于接收到用户发出的作业运行请求时,对当前作业进行依赖分析并根据依赖分析结果进行运行环境分割,将层次化文件系统的上层文件系统中当前作业及当前作业所需要的依赖项作为第一部分传输内容、上层文件系统中其余文件作为第二部分传输内容;
传输控制模块,用于服务进程进行传输时,分步传输所述第一部分传输内容、所述第二部分传输内容。
本实施例面向高性能计算的大规模运行环境快速启动系统与上述面向高性能计算的大规模运行环境快速启动方法一一对应,在此不再一一赘述。
在另一实施例中,本发明还提供计算机装置,包括处理器以及存储器,存储器用于存储计算机程序,处理器用于执行计算机程序,处理器用于执行计算机程序以执行上述运行环境快速启动方法。
实施例2:
本实施例为在具体应用实施例中,采用与实施例1相同的原理实现面向高性能计算的运行环境快速启动,即核心思想包括:1、在高性能计算系统中,通过层次化文件系统实现用户作业运行环境的封装,通过用户作业依赖分析进行分步传输,提前启动,通过作业实时运行规模选择更快速的运行环境部署方式,从而达到大规模运行环境快速启动的目的。
如图6所示,本发明面向高性能计算的大规模运行环境快速启动方法的详细步骤为:
第一步,在高性能计算系统登录结点上为用户预置层次化文件系统(如图2所示),以及启动服务进程,其中层次化文件系统将系统标准环境作为底层,将用户空目录作为上层,服务进程的任务是后续进行用户作业依赖分析以及运行环境传输、部署。
第二步,用户登录到登录结点上,用户视角下的根目录被重定向到层次化文件系统的整合目录,其中初始情况下,用户将直接看到整个系统底层环境。
第三步,用户在登录结点进行作业的开发调试以及作业运行环境的配置,发出作业运行请求。
步骤3.1系统管理员维护层次化文件系统的底层,其中系统管理员维护的系统标准环境作为层次化文件系统的底层,被所有用户共享,则系统管理员的修改可以立即更新到所有用户视角下。
步骤3.2用户作业的开发以及运行环境的自定义配置均发生在层次化文件系统的上层。
步骤3.3用户在登录结点上完成作业调试以及运行环境配置之后,发出作业运行请求。
第四步,服务进程收到用户的作业运行请求后,进行作业依赖分析以及运行环境切分。
步骤4.1服务进程收到用户作业运行请求,首先对当前作业的依赖项进行分析,确定哪些依赖项位于层次化文件系统的上层,这部分依赖项即为用户的自定义配置项,将这一部分依赖项以及作业本身作为第一部分传输内容。
步骤4.2服务进程将用户上层文件系统中的其他文件作为第二部分传输内容,完成作业运行环境切割。
第五步,服务进程根据作业实时规模选择更加高效的传输方式,并首先传输第一部分传输内容。
步骤5.1服务进程维护一个系统传输能力临界值,该值具体是系统基于共享文件系统拉取和基于P2P文件传输的性能等价点。
步骤5.2服务进程根据当前作业的规模选择更加高效的传输方式,其中当作业规模不超过系统传输能力临界值时,使用基于共享文件系统的运行环境拉取方式(如图3所示);当作业规模超过系统传输能力临界值时,使用基于P2P文件传输的运行环境分发方式(如图4所示)。
步骤5.3服务进程开始进行上层文件系统的第一部分传输。
第六步,第一部分传输完成,启动运行环境以及用户作业,同时传输第二部分。
步骤6.1服务进程收到第一部分传输完成的信号后,通过作业管理系统在相应计算结点上启动相应运行环境,并开始执行作业。
步骤6.2服务进程开始传输上层文件系统的第二部分。
第七步,第二部分传输完成或者作业运行完成,返回结果。
第八步,计算结点清除作业运行环境。
上述步骤中,首先,在高性能计算系统的登录结点上,为每个用户设计层次化文件系统,系统的标准预置环境作为层次化文件系统的底层,一个用户空目录作为层次化文件系统的上层,这样所有用户可以直接共享系统的底层标准环境,同时又可以修改这些环境配置,使得文件的修改均发生在层细化文件系统的上层,这样既不会影响标准的系统环境,也不会在不同的用户之间产生影响。
然后,在用户发出作业运行请求时,对用户的作业进行依赖分析,将当前作业的位于上层文件系统的依赖项以及作业本身作为运行环境传输和部署的第一部分传输内容,上层文件系统中的其他文件作为第二部分传输内容,在第一步传输完成之后即进行运行环境启动、启动作业运行。且在上述过程中,进行运行环境传输时,根据作业的实时运行规模进行传输方式选择,在规模较小的情况下,选择基于共享文件系统的运行环境拉取方式具有更高的效率,在规模较大的情况下,选择基于P2P文件传输的运行环境分发,以充分发挥不同分发方式的优势,确保不同规模下的运行环境启动效率。
上述只是本发明的较佳实施例,并非对本发明作任何形式上的限制。虽然本发明已以较佳实施例揭露如上,然而并非用以限定本发明。因此,凡是未脱离本发明技术方案的内容,依据本发明技术实质对以上实施例所做的任何简单修改、等同变化及修饰,均应落在本发明技术方案保护的范围内。
Claims (7)
1.一种面向高性能计算的大规模运行环境快速启动方法,其特征在于,步骤包括:
S1.在高性能计算系统的登录结点上为每个用户预置层次化文件系统,所述层次化文件系统中将系统标准环境作为底层、用于存储用户所做文件修改的用户空目录作为上层;
S2.接收到用户发出的作业运行请求时,对当前作业进行依赖分析并根据依赖分析结果进行运行环境分割,将所述层次化文件系统的上层文件系统中当前作业及当前作业所需要的依赖项作为第一部分传输内容、所述上层文件系统中其余文件作为第二部分传输内容;
S3.服务进程进行传输时,分步传输所述第一部分传输内容、所述第二部分传输内容,其中优先传输所述第一部分传输内容,在所述第一部分传输内容完成时启动用户作业;
所述步骤S3中服务进程进行传输时,还包括根据当前作业规模确定传输方式,具体步骤包括:判断当前作业规模,若当前作业规模不超过预先配置的系统传输能力临界值,则使用第一传输方式,否则采用第二传输方式,所述第一传输方式与所述第二传输方式不同;
所述第一传输方式为基于共享文件系统的运行环境拉取方式,所述第二传输方式为基于P2P文件传输的运行环境分发方式;
所述系统传输能力临界值具体根据所述基于共享文件系统拉取与所述基于P2P文件传输的性能等价点确定得到。
2.根据权利要求1所述的面向高性能计算的大规模运行环境快速启动方法,其特征在于:所述层次化文件系统中底层配置为被用户共享,用户作业的开发、运行环境的配置以及用户所做的文件修改发生在所述层次化文件系统中上层。
3.根据权利要求1所述的面向高性能计算的大规模运行环境快速启动方法,其特征在于,所述步骤S1后、步骤S2前,当用户登陆到登陆节点上时,还包括将用户视角下的根目录重定向到所述层次化文件系统的整合目录。
4.根据权利要求1所述的面向高性能计算的大规模运行环境快速启动方法,其特征在于,所述步骤S3的步骤包括:
S301.服务进程开始进行传输时,传输所述第一部分传输内容;
S302.当所述第一部分传输内容传输完成,启动运行环境以及用户作业同时传输第二部分。
5.根据权利要求4所述的面向高性能计算的大规模运行环境快速启动方法,其特征在于,所述步骤S302的步骤包括:
S311.服务进程接收到所述第一部分传输内容传输完成的信号时,在对应计算结点上启动对应运行环境并开始执行作业;
S312.服务进程开始传输所述第二部分传输内容,当所述第二部分传输内容传输完成或者作业运行完成,结束传输并返回结果。
6.一种面向高性能计算的大规模运行环境快速启动系统,其特征在于,包括:
文件系统配置模块,用于在高性能计算系统的登录结点上为每个用户预置层次化文件系统,所述层次化文件系统中将系统标准环境作为底层、用于存储用户所做的文件修改的用户空目录作为上层;
依赖分析及运行环境分割模块,用于接收到用户发出的作业运行请求时,对当前作业进行依赖分析并根据依赖分析结果进行运行环境分割,将所述层次化文件系统的上层文件系统中当前作业及当前作业所需要的依赖项作为第一部分传输内容、所述上层文件系统中其余文件作为第二部分传输内容;
传输控制模块,用于服务进程进行传输时,分步传输所述第一部分传输内容、所述第二部分传输内容,其中优先传输所述第一部分传输内容,在第一部分传输内容完成时启动用户作业;
所述传输控制模块中服务进程进行传输时,还包括根据当前作业规模确定传输方式,具体步骤包括:判断当前作业规模,若当前作业规模不超过预先配置的系统传输能力临界值,则使用第一传输方式,否则采用第二传输方式,所述第一传输方式与所述第二传输方式不同;
所述第一传输方式为基于共享文件系统的运行环境拉取方式,所述第二传输方式为基于P2P文件传输的运行环境分发方式;
所述系统传输能力临界值具体根据所述基于共享文件系统拉取与所述基于P2P文件传输的性能等价点确定得到。
7.一种计算机装置,包括处理器以及存储器,所述存储器用于存储计算机程序,所述处理器用于执行所述计算机程序,其特征在于,所述处理器用于执行所述计算机程序以执行如权利要求1~5中任意一项所述方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110863957.9A CN113630453B (zh) | 2021-07-29 | 2021-07-29 | 面向高性能计算的大规模运行环境快速启动方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110863957.9A CN113630453B (zh) | 2021-07-29 | 2021-07-29 | 面向高性能计算的大规模运行环境快速启动方法及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113630453A CN113630453A (zh) | 2021-11-09 |
CN113630453B true CN113630453B (zh) | 2024-03-15 |
Family
ID=78381577
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110863957.9A Active CN113630453B (zh) | 2021-07-29 | 2021-07-29 | 面向高性能计算的大规模运行环境快速启动方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113630453B (zh) |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101674226A (zh) * | 2008-09-12 | 2010-03-17 | 华为技术有限公司 | 一种传输方式的选择方法、装置和系统 |
CN102609448A (zh) * | 2012-01-10 | 2012-07-25 | 西北工业大学 | 一种多用户版本文件递阶式映射方法 |
CN108696911A (zh) * | 2017-04-11 | 2018-10-23 | 中国移动通信集团设计院有限公司 | 一种物联网数据传输方式的选择方法和装置 |
CN111131146A (zh) * | 2019-11-08 | 2020-05-08 | 北京航空航天大学 | 一种广域环境下多超算中心软件系统部署和增量更新方法 |
CN112394954A (zh) * | 2020-12-03 | 2021-02-23 | 中国人民解放军国防科技大学 | 一种面向高性能计算的随作业自动部署运行环境方法 |
CN112685134A (zh) * | 2020-12-31 | 2021-04-20 | 中科星图股份有限公司 | 一种在容器环境中基于镜像装载的镜像构建及装载方法 |
-
2021
- 2021-07-29 CN CN202110863957.9A patent/CN113630453B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101674226A (zh) * | 2008-09-12 | 2010-03-17 | 华为技术有限公司 | 一种传输方式的选择方法、装置和系统 |
CN102609448A (zh) * | 2012-01-10 | 2012-07-25 | 西北工业大学 | 一种多用户版本文件递阶式映射方法 |
CN108696911A (zh) * | 2017-04-11 | 2018-10-23 | 中国移动通信集团设计院有限公司 | 一种物联网数据传输方式的选择方法和装置 |
CN111131146A (zh) * | 2019-11-08 | 2020-05-08 | 北京航空航天大学 | 一种广域环境下多超算中心软件系统部署和增量更新方法 |
CN112394954A (zh) * | 2020-12-03 | 2021-02-23 | 中国人民解放军国防科技大学 | 一种面向高性能计算的随作业自动部署运行环境方法 |
CN112685134A (zh) * | 2020-12-31 | 2021-04-20 | 中科星图股份有限公司 | 一种在容器环境中基于镜像装载的镜像构建及装载方法 |
Non-Patent Citations (2)
Title |
---|
可定制的应用运行环境;阎栋;王屏;李恺威;边哲;;中国科技论文(07);全文 * |
高性能高适应性分布式文件服务器研究与实现;王伟;范径武;;计算机工程与设计(13);全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN113630453A (zh) | 2021-11-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20220229649A1 (en) | Conversion and restoration of computer environments to container-based implementations | |
US11836516B2 (en) | Reducing execution times in an on-demand network code execution system using saved machine states | |
US11829742B2 (en) | Container-based server environments | |
CN110768833B (zh) | 基于kubernetes的应用编排部署方法及装置 | |
EP3347816B1 (en) | Extension of resource constraints for service-defined containers | |
US8434081B2 (en) | Storage manager for virtual machines with virtual storage | |
US9575749B1 (en) | Method and apparatus for execution of distributed workflow processes | |
US20120185855A1 (en) | Image management for virtual machine instances and associated virtual storage | |
US10430378B1 (en) | Fast container distribution with storage acceleration | |
CN110489126B (zh) | 编译任务的执行方法和装置、存储介质及电子装置 | |
CN113296792B (zh) | 存储方法、装置、设备、存储介质和系统 | |
CN103064742A (zh) | 一种hadoop集群的自动部署系统及方法 | |
US10193973B2 (en) | Optimal allocation of dynamically instantiated services among computation resources | |
CN112231052A (zh) | 一种高性能分布式容器镜像分发系统及方法 | |
CN111090823A (zh) | 一种页面应用的集成平台以及应用访问方法、装置和设备 | |
US10845997B2 (en) | Job manager for deploying a bundled application | |
CN110659104B (zh) | 一种业务监控方法及相关设备 | |
CN112394954B (zh) | 一种面向高性能计算的随作业自动部署运行环境方法 | |
CN113630453B (zh) | 面向高性能计算的大规模运行环境快速启动方法及系统 | |
US11561843B2 (en) | Automated performance tuning using workload profiling in a distributed computing environment | |
CN117056029B (zh) | 资源处理方法、系统、装置、存储介质及电子设备 | |
CN110321335B (zh) | 建模数据下载方法、装置、电子设备及计算机存储介质 | |
CN113222174B (zh) | 模型管理方法及装置 | |
US20230054058A1 (en) | Determining data copy resources | |
CN117632351A (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 |