CN114679448A - 一种资源匹配方法及装置 - Google Patents

一种资源匹配方法及装置 Download PDF

Info

Publication number
CN114679448A
CN114679448A CN202011551356.6A CN202011551356A CN114679448A CN 114679448 A CN114679448 A CN 114679448A CN 202011551356 A CN202011551356 A CN 202011551356A CN 114679448 A CN114679448 A CN 114679448A
Authority
CN
China
Prior art keywords
resource
resources
node
layer
level
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.)
Pending
Application number
CN202011551356.6A
Other languages
English (en)
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.)
XFusion Digital Technologies Co Ltd
Original Assignee
XFusion Digital Technologies 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 XFusion Digital Technologies Co Ltd filed Critical XFusion Digital Technologies Co Ltd
Priority to CN202011551356.6A priority Critical patent/CN114679448A/zh
Publication of CN114679448A publication Critical patent/CN114679448A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • 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/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • 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/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5011Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals
    • G06F9/5016Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals the resource being the memory
    • 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/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5011Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals
    • G06F9/5022Mechanisms to release resources
    • 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/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5027Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本申请公开了一种资源匹配方法及装置,应用于计算机集群,所述计算机集群包括多层资源,每层资源对应一个属性,每层资源包括一级或多级资源,每级资源对应一个属性值,该方法包括获取作业调度资源的请求;根据请求中包括资源的第一属性确定第一层资源,在第一层资源中查找第一属性值对应第一级资源;根据请求中包括资源的第二属性确定第二层资源,并在第二层资源中确定与第一级资源关联的资源集合,在资源集合中查找第二属性值对应的第二级资源;确定在第二级资源对应的节点上运行作业。因此,在多层资源中查找作业所需的资源,进而可以降低时间复杂度,提高资源匹配的效率。

Description

一种资源匹配方法及装置
技术领域
本发明实施例涉及计算领域,尤其涉及一种资源匹配方法及装置。
背景技术
集群可以理解为通过利用大量同构或异构计算机,并通过快速局域网相互连接为一个虚拟的计算机集群。集群用于为解决大规模的计算问题提供一个模型。在集群运行应用时,调度器为应用(通常称作业)分配资源。在现有技术中,调度器为作业分配资源,具体实现可以采用以下方式:调度器从计算机集群的所有节点中选取一批节点,并根据作业所需要资源的资源量或属性,在这批节点中进行逐一对比以找到合适的节点。但是,上述资源匹配方法需要遍历所有节点,时间复杂度较高,使得资源匹配的效率较低。
发明内容
本申请实施例提供的一种资源匹配方法及装置,可以降低时间复杂度,提高资源匹配的效率。
第一方面、本申请实施例提供的一种资源匹配方法,应用于计算机集群,计算机集群包括多层资源,每层资源对应一个属性,每层资源包括一级或多级资源,每级资源对应一个属性值,该方法可以包括:获取作业调度资源的请求;请求中包括资源的第一属性和第二属性。根据第一属性确定第一层资源,在第一层资源中查找第一属性值对应第一级资源。根据第二属性确定第二层资源,并在第二层资源中确定与第一级资源关联的资源集合,在资源集合中查找第二属性值对应的第二级资源。确定在第二级资源对应的节点上运行作业。如此,本申请实施例通过在多层资源中查找作业所需的资源,能够提高资源匹配的效率,降低时间复杂度。
在一种可实现方式中,本申请实施例提供的一种资源匹配方法还包括历史资源列表,历史资源列表中包括一个或多个释放资源,释放资源为在作业运行后被释放的资源;在根据第一属性确定第一层资源,在第一层资源中查找第一属性值对应第一级资源之前,包括:确定历史资源列表中一个或多个释放资源中不存在第一级资源。本申请实施例中,当调度节点确定在历史资源列表中不存在作业所需的资源时,调度节点在上述层级资源树中查找作业所需的资源,从而达到快捷的匹配作业所需的资源的目的。
在一种可实现方式中,本申请实施例提供的一种资源匹配方法还包括:当确定历史资源列表中一个或多个释放资源中存在第一级资源时,在历史资源列表中一个或多个释放资源中查找第一属性值对应的第一级资源。本申请实施例中,当调度节点确定在历史资源列表中存在作业所需的资源时,调度节点在历史资源列表中查找作业所需的资源,从而达到快捷的匹配作业所需的资源的目的。
在一种可实现方式中,在确定在第二级资源对应的节点上运行作业之后,还包括:获取释放资源的信息。将释放资源的信息插入到历史资源列表中。本申请实施例通过调度节点将释放资源的信息存储到历史资源列表中,以便于后续在匹配资源时可以先查找历史资源列表中的资源,进一步提高资源匹配效率。
在一种可实现方式中,在将释放资源的信息插入到历史资源列表中之后,还包括:更新释放资源对应节点的节点信息。
在一种可实现方式中,上述实施例中多层资源包括指针层,指针层包括第一指针,第一指针用于指向资源对应的多个节点中的第一节点。确定在第二级资源对应的节点上运行作业,包括:确定在根据第一指针查找到的第二级资源对应的第一节点上运行作业。
在一种可实现方式中,指针层还包括第二指针,第二指针用于指向资源对应的多个节点中的第二节点,第二节点与第一节点不同。确定在第二级资源对应的节点上运行作业,具体为:确定在根据第二指针查找到的第二级资源对应的第二节点上运行作业。
第二方面、本申请实施例提供的一种资源匹配装置,应用于计算机集群,计算机集群包括多层资源,每层资源对应一个属性,每层资源包括一级或多级资源,每级资源对应一个属性值,该装置包括:第一获取单元,用于获取作业调度资源的请求;请求中包括资源的第一属性和第二属性;第一确定单元,用于根据第一属性确定第一层资源,在第一层资源中查找第一属性值对应第一级资源;第二确定单元,用于根据第二属性确定第二层资源,并在第二层资源中确定与第一级资源关联的资源集合,在资源集合中查找第二属性值对应的第二级资源;第三确定单元,用于确定在第二级资源对应的节点上运行作业。如此,本申请实施例通过在多层资源中查找作业所需的资源,能够提高资源匹配的效率,降低时间复杂度。
在一种可实现方式中,本申请实施例提供的资源匹配装置还包括历史资源列表,历史资源列表中包括一个或多个释放资源,释放资源为在作业运行后被释放的资源。装置还包括:第四确定单元,用于确定历史资源列表中一个或多个释放资源中不存在第一级资源。本申请实施例中,当调度节点确定在历史资源列表中不存在作业所需的资源时,调度节点在上述层级资源树中查找作业所需的资源,从而达到快捷的匹配作业所需的资源的目的。
在一种可实现方式中,本申请实施例提供的资源配置装置还包括:查找单元,用于当确定历史资源列表中一个或多个释放资源中存在第一级资源时,在历史资源列表中一个或多个释放资源中查找第一属性值对应的第一级资源。本申请实施例中,当调度节点确定在历史资源列表中存在作业所需的资源时,调度节点在历史资源列表中查找作业所需的资源,从而达到快捷的匹配作业所需的资源的目的。
在一种可实现方式中,本申请实施例提供的资源配置装置还包括:第二获取单元,用于获取释放资源的信息。插入单元,用于将释放资源的信息插入到历史资源列表中。本申请实施例通过调度节点将释放资源的信息存储到历史资源列表中,以便于后续在匹配资源时可以先查找历史资源列表中的资源,进一步提高资源匹配效率。
在一种可实现方式中,本申请实施例提供的资源配置装置还包括:更新单元,用于更新释放资源对应节点的节点信息。
在一种可实现方式中,上述所述的多层资源包括指针层,指针层包括第一指针,第一指针用于指向资源对应的多个节点中的第一节点;第三确定单元还用于确定在根据第一指针查找到的第二级资源对应的第一节点上运行作业。
在一种可实现方式中,指针层还包括第二指针,第二指针用于指向资源对应的多个节点中的第二节点,第二节点与第一节点不同;第三确定单元还用于确定在根据第二指针查找到的第二级资源对应的第二节点上运行作业。
第三方面、提供一种计算机可读存储介质,包括计算机指令,当计算机指令在终端上运行时,使得终端执行如上述方面及其中任一种可能的实现方式中所述的方法。
第四方面、提供一种计算机程序产品,当计算机程序产品在计算机上运行时,使得计算机执行如上述方面中及其中任一种可能的实现方式中所述的方法。
第五方面、提供一种芯片系统,包括处理器,当处理器执行指令时,处理器执行如上述方面中及其中任一种可能的实现方式中所述的方法。
其中,上述第二方面至第五方面中各个实施例的具体实施方式及对应的技术效果可以参见上述第一方面的具体实施方式及技术效果。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它的附图。
图1为本申请实施例提供的资源匹配系统的架构图;
图2为本申请实施例提供的一种设备的结构示意图;
图3为本申请实施例提供的一种资源匹配方法的流程示意图;
图4为本申请实施例提供的一种层级资源树的一种结构示意图;
图5为本申请实施例提供的节点链接列表的结构示意图;
图6为本申请实施例提供的又一种资源匹配方法的流程图;
图7为本申请实施例提供的历史资源列表的结构示意图;
图8为本申请实施例提供的另一种资源匹配方法的流程图;
图9为本申请实施例提供的数据整体架构图;
图10为本申请实施例提供的一种资源匹配装置的结构示意图。
具体实施方式
在本申请实施例的描述中,除非另有说明,“/”表示或的意思,例如,A/B可以表示A或B;本文中的“和/或”仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。
以下,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括一个或者更多个该特征。在本申请实施例的描述中,除非另有说明,“多个”的含义是两个或两个以上。
在本申请实施例中,“示例性的”或者“例如”等词用于表示作例子、例证或说明。本申请实施例中被描述为“示例性的”或者“例如”的任何实施例或设计方案不应被解释为比其它实施例或设计方案更优选或更具优势。确切而言,使用“示例性的”或者“例如”等词旨在以具体方式呈现相关概念。
图1为本申请实施例提供的资源匹配系统的架构图。如图1所示,在集群运行应用时,终端11可以创建应用(通常称作业),该作业为完成一项特定的计算业务所需要执行的一组程序实例的集合,通常对应于一台或多台计算机上的一组进程、容器或其他运行时实体。终端11将作业提交至调度节点12,该调度节点12可以是计算机上安装的一款分布式集群管理系统软件,其负责计算资源的管理和批处理作业的调度;当然,该调度节点12也可以是硬件设备,如调度器。调度节点12根据作业所需的资源信息在计算节点13中确定目标节点,并确定在目标节点上运行上述作业。其中,计算节点13可以理解为计算机集群中的多个计算机。
在现有的资源匹配方法中,可以存在以下匹配方式:调度节点从计算机集群的所有计算节点中选取一批节点,并根据作业所需要资源的资源量或属性,在这批节点中进行逐一对比以找到合适的节点。但是,上述资源匹配方法需要遍历所有节点,时间复杂度为o(n),使得资源匹配的效率较低。
因此,为了解决上述技术问题,在本申请实施例中,提出了一种资源匹配方法,该方法应用于计算机集群,计算机集群包括多层资源,每层资源对应一个属性,每层资源包括一级或多级资源,每级资源对应一个属性值,该方法通过获取作业调度资源的请求,该请求中包括资源的第一属性和第二属性。根据第一属性确定第一层资源,在第一层资源中查找第一属性值对应第一级资源。根据第二属性确定第二层资源,并在第二层资源中确定与第一级资源关联的资源集合,在资源结合中查找第二属性值对应的第二级资源。确定在第二级资源对应的节点上运行作业,能够提高资源匹配的效率,降低时间复杂度。
下面结合本申请实施例中的附图,对图1所示的资源匹配系统中的调度节点12、计算节点13和存储节点14进行描述。
图2为本申请实施例提供的一种设备200的组成示意图,该设备200可以包括处理器201和存储器204。进一步的,该设备200还可以包括通信线路202以及通信接口203。其中,处理器201,存储器204以及通信接口203之间可以通过通信线路202连接。其中,设备200可以为调度节点12。设备200也可以为计算节点13。设备200还可以为存储节点14。当然,设备200中的存储器204可以为存储节点14。
处理器201,可以是中央处理器(central processing unit,CPU)、通用处理器、网络处理器(network processor,NP)、数字信号处理器(digital signal processing,DSP)、微处理器、微控制器、可编程逻辑器件(programmable logic device,PLD)或它们的任意组合。处理器201还可以是其它具有处理功能的装置,如电路、器件或软件模块,不予限制。
通信线路202,用于在通信装置300所包括的各部件之间传送信息。
通信接口203,用于与其他设备或其它通信网络进行通信。该其它通信网络可以为以太网,无线接入网(radio access network,RAN),无线局域网(wireless local areanetworks,WLAN)等。通信接口203可以是模块、电路、收发器或者任何能够实现通信的装置。
存储器204,用于存储指令。其中,指令可以是计算机程序。
其中,存储器204可以是只读存储器(read-only memory,ROM)或可存储静态信息和/或指令的其他类型的静态存储设备,也可以是随机存取存储器(random accessmemory,RAM)或可存储信息和/或指令的其他类型的动态存储设备,还可以是电可擦可编程只读存储器(electrically erasable programmable read-only memory,EEPROM)、只读光盘(compact disc read-only memory,CD-ROM)或其他光盘存储、光碟存储(包括压缩光碟、激光碟、光碟、数字通用光碟、蓝光光碟)、磁盘存储介质、其他磁存储设备,不予限制。
需要说明的是,存储器204可以独立于处理器201存在,也可以和处理器201集成在一起。存储器204可以用于存储指令或者程序代码或者一些数据等。存储器204可以位于设备200内,也可以位于设备200外,不予限制。
处理器201,用于执行存储器204中存储的指令,以实现本申请下述实施例提供的业务切换方法。例如,当设备200为网络设备中的芯片或者片上系统时,处理器201执行存储器204中存储的指令,以实现本申请下述实施例中网络设备所执行的步骤。
在一种示例中,处理器201可以包括一个或多个CPU,例如图2中的CPU0和CPU1。
作为一种可选的实现方式,设备200包括多个处理器,例如,除图2中的处理器201之外,还可以包括处理器207。
作为一种可选的实现方式,设备200还包括输出设备205和输入设备206。示例性地,输入设备206是键盘、鼠标、麦克风或操作杆等设备,输出设备205是显示屏、扬声器(speaker)等设备。
需要说明的是,设备200可以是台式机、便携式电脑、网络服务器、移动手机、平板电脑、无线终端、嵌入式设备、芯片系统或有图2中类似结构的设备。此外,图2中示出的组成结构并不构成对该通信装置的限定,除图2所示部件之外,该通信装置可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
本申请实施例中,芯片系统可以由芯片构成,也可以包括芯片和其他分立器件。
此外,本申请的各实施例之间涉及的动作,术语等均可以相互参考,不予限制。本申请的实施例中各个设备之间交互的消息名称或消息中的参数名称等只是一个示例,具体实现中也可以采用其他的名称,不予限制。
下面以图2所示架构为例,对本申请实施例提供的资源匹配方法进行描述。下述实施例中的各网元可以具备图2所示部件,不予赘述。需要说明的是,本申请的实施例中各个设备之间交互的消息名称或消息中的参数名称等只是一个示例,具体实现中也可以采用其他的名称。本申请实施例中的确定也可以理解为创建(create)或者生成(generate),本申请实施例中的“包括”也可以理解为“携带”,在此统一说明,本申请实施例对此不作具体限定。
下面结合本申请实施例中的附图,对本申请实施例提供的资源匹配方法进行描述。
本申请实施例提供的一种资源匹配方法可应用于图1所示的资源匹配系统。图1中所示的调度节点12、计算节点13和存储节点14均可以分别为一个或多个计算机,而这些计算机可以组成计算机集群。当在该计算机集群运行作业时,终端11将作业提交至调度节点12,调度节点12根据作业所需的资源信息在计算节点13中确定目标节点,并确定在目标节点上运行上述作业。其中,调度节点13为作业匹配资源的可实现方式如下:
图3为本申请实施例提供的一种资源匹配方法的流程示意图,如图3所示,该方法可以包括:
S301、调度节点读取配置信息
该配置信息可以是终端向调度节点发送的,也可以是调度节点已存储的,在此不做具体限定。该配置信息可以包括:层资源的信息、级资源的信息,层资源之间的关联关系,层资源与级资源之间的关联关系,等等。
S302、调度节点根据配置信息,生成层级资源树
调度节点根据配置信息,将上述计算机集群包括的多层资源构成层级资源树。其中,每层资源对应一个属性,每层资源包括一级或多级资源,每级资源对应一个属性值。
示例性的,多层资源包括第一层资源和第二层资源。第一层资源可以对应第一属性,该第一属性可以表示为resource1,该第一层资源可以包括第一级资源和第二级资源,该第一级资源可以对应第一属性值,该第一属性值可以表示为bucket1,该第二级资源可以对应第二属性值,该第二属性值可以表示为bucket2。第二层资源可以对应第二属性,该第二属性可以表示为resource2,该第二层资源可以包括第一级资源、第二级资源和第三级资源,该第一级资源可以对应第一属性值,该第一属性值可以表示为bucket1,该第二级资源可以对应第二属性值,该第二属性值可以表示为bucket2,该第三级资源可以对应第三属性值,该第三属性值可以表示为bucket3。
层级资源树的表达式可以为:
resource1:
-bucket1
-bucket2
resource2:
-bucket1
-bucket2
-bucket3
该多层资源还可以包括指针层,该指针层可以包括第一指针,第一指针用于指向作业所需资源所属的第一节点。该第一节点可以理解为第一个适合分配作业所需资源的节点。当然,该指针层还可以包括第二指针,该第二指针用于指向作业所需资源所属的第二节点。该第二节点可以理解为除了第一节点之外的适合分配作业所需资源的节点。第二节点与第一节点不同。因此,当完成资源匹配之后,第二指针指向下一个作业所需资源所属的节点,以实现负载均衡。该指针层还可以包括数量指针,数量指针用于记录落入此层级资源树的节点数量。因此当前指针可以快速确定是否有足够的分配资源的目的。
当然,多层资源可以包括第三层资源。多层资源还可以包括第四层资源。本申请实施例中并不局限多层资源的具体层数,具体实施时需要根据实际需求选取。
其中,多层资源中的各层资源之间存在关联关系。该关联关系可以是人为定义的,也可以是随机形成的,或者,是根据各层资源的属性建立的,再或者,是按照规定顺序排列(如,按照序号顺序从小到大排列)形成的。
示例1,图4为本申请实施例提供的一种层级资源树的一种结构示意图。如图4所示,假设,第一层资源为中央处理器(central processing unit,CPU),第一层资源对应的第一属性为CPU架构,该CPU的架构可以包括X86架构(第一级资源对应的第一属性值)和Aarch64架构(第二级资源对应的第二属性值)。故,第一层资源(Res1)的表达式可以为:
CPU Type:
-X86
-aarch64
第二层资源为CPU核数,第二层资源对应的第二属性为可用的CPU核数(FREE_CPU),该可用的CPU核数可以包括0(第一级资源对应的第一属性值)、8(第二级资源对应的第二属性值)和16(第三级资源对应的第三属性值)。故,第二层资源(Res2)的表达式可以为:
FREE_CPU:
0
8
16
第三层资源为内存,第三层资源对应的第三属性可以为可用内存(FREE_MEM),该可用内存可以包括0(第一级资源对应的第一属性值)、16(第二级资源对应的第二属性值)和32(第三级资源对应的第三属性值)。故,第三层资源(Res3)的表达式可以为:
FREE_MEM:
0
16
32
指针层可以包括第一指针(head指针或头指针)、第二指针(current指针或当前指针)和数量指针(#nodes)。其中,第一指针可以为第一级资源,第二指针可以为第二级资源,第三指针可以为第三级资源。故,指针层(node head)的表达式可以为:
node head:
head
current
#nodes
其中,第一层资源、第二层资源、第三层资源和指针层之间的关联关系,可以根据第一层资源、第二层资源和第三层资源之间的排列顺序的不同而不同,在此不做具体限定,具体实施时可以根据实际需求设定。
例如,如图4所示,第一层资源中的第一级资源,与第二层资源中的第一级资源、第二级资源和第三级资源构成的资源集合关联。第一层资源中的第二级资源,与第二层资源中的第一级资源、第二级资源和第三级资源构成的资源集合关联。第二层资源中的第一级资源,与第三层资源中的第一级资源、第二级资源和第三级资源构成的资源集合关联。第三层资源中的第一级资源,与第四层资源中的第一级资源、第二级资源和第三级资源构成的资源集合关联。
综上,本申请实施例通过对第一层级资源、第二层级资源、第三层级资源和指针层组织生成如图4所示的一种层级资源树,该层级资源树可以类似于B+树。这里需要解释的是B+树是一种树数据结构,其特点是能够保持数据稳定有序。因此,本申请实施例中,层级资源树的生成,能够实现对资源的预分组,可以一定程度解决资源碎片化的问题,从而便于实现对资源的快速选择。
S303、调度节点对层级资源树进行初始化,使得各个资源找到所属的节点
具体为,调度节点对上述层级资源树进行初始化,使得各个资源找到所属的节点,并将多个资源所属的节点组成节点链接列表,该节点链接列表是节点与节点之间由一个双向链表维护。该双向链表是链表的一种,其的每个数据都有两个指针,这两个指针分别指向直接后继和直接前驱。
也就是说,根据层级资源树对计算机群进行分组,以得到节点链接列表。该节点链接列表(node link list)中的节点表(node table)为一个散列表,散列表是根据关键码值(key value)直接进行访问的数据结构。散列表的键值(key)为节点的标识信息,如名称、IP地址等。散列表的值可以为节点信息,如,可用核数(free_core)、可用内存(free_mem)、可用磁盘(free_disk)、下一个指针(next)和上一个指针(pre)等。
图5为本申请实施例提供的节点链接列表的结构示意图,如图5所示,节点表(nodetable)包括节点1(node 1),节点2(node 2),节点3(node 3),等等。节点1(node 1)、节点2(node 2)和节点3(node 3)均可以包括可用核数(free_core)、可用内存(free_mem)、可用磁盘(free_disk)、下一个指针(next)和上一个指针(pre)等。
因此,本申请实施例中的节点链接列表采用散列表和双向链表,实现对节点信息的维护,以实现节点信息修改、节点信息添加、节点信息移除的时间复杂度降低,可以使得时间复杂度接近O(1)。
综上,层级资源树可以是预先生成的,也可以是在计算机集群运行作业的过程中实时生成的,本申请实施例不做具体限定。
这里需要补充的是,本申请实施例提供的资源匹配方法还可以包括:当新增资源的属性不满足层级资源树中存在的属性时,更新层级资源树。
应理解为,当新增资源可以导致层级资源树的层资源(或级资源)发生变化时,更新层级资源树。示例性的,假设,现有的属性为可用核数和可用存储量。新增资源的属性为磁盘,而现有的属性里不存在可用磁盘,故更新层级资源树使得新的层级资源树中包含可用磁盘的层资源(或级资源)。
图6为本申请实施例提供的又一种资源匹配方法的流程示意图。如图6所示,在调度节点生成层级资源树之后,本申请实施例提供的资源匹配方法还可以包括:
S601、调度节点获取作业调度资源的请求。
调度节点可以是一款分布式集群管理系统软件,安装在计算机集群中的一个或多个计算机上,用于负责计算资源的管理和批处理作业的调度。
该资源可以包括硬件资源,如中央处理器(central processing unit,CPU)、内存、网络和网络存储等。该资源还可以包括其他非硬件资源,如软件资源,该软件资源可以包括可用的网络服务,软件许可证等。
该请求可以包括简单资源请求和复杂资源请求。其中,简单资源请求可以为对资源的请求类型固定,和/或可枚举等。复杂资源请求可以为对资源的请求类型动态变化,且会涉及自定义资源类型。
由于每层资源对应一个属性,所以该请求中包括资源的第一属性和第二属性,可以理解为请求中包括第一层资源的第一属性和第二层资源的第二属性。
示例性的,假设,第一层资源为CPU,相应的,第一属性可以为CPU的类型。第二层资源为内存,相应的,第二属性可以为可用内存。当然,针对不同的层资源,对应的属性也不同,在此不再一一列举。
本步骤具体可实现为,如图1所示的终端11向调度节点12发送作业调度资源的请求。该调度节点12获取作业调度资源的请求。
S602、调度节点根据第一属性确定第一层资源,在第一层资源中查找第一属性值对应第一级资源。
属性值可以指属性可量化的值。示例性的,沿用上述示例,属性为CPU的类型,相应的,属性值可以为X86或aarch64。属性为可用内存,相应的,属性值可以为32G、64G或128G。
示例1,如图1所示的终端11向调度节点12发送作业调度资源的请求,该请求可以包括CPU的类型。调度节点12根据CPU的类型确定第一层资源为CPU,在CPU所在的层中查找第一属性值为X86的第一级资源。
示例2,如图1所示的终端11向调度节点12发送作业调度资源的请求,该请求可以包括可用内存。调度节点12根据可用内存确定第一层资源为内容,在内存所在的层中查找第一属性值为32G的第一级资源。
S603、调度节点根据第二属性确定第二层资源,并在第二层资源中确定与第一级资源关联的资源集合,在资源集合中查找第二属性值对应的第二级资源。
沿用上述示例1,作业调度资源的请求还可以包括CPU的可用核数。调度节点12根据可用核数确定第二层资源为CPU的核数,在CPU的核数所在的层中查找CPU的类型为X86且可用核数小于16的第二级资源。
沿用上述示例2,作业调度资源的请求还可以包括CPU的可用核数。调度节点12根据可用核数确定第二层资源为CPU的核数,在CPU的核数所在的层中查找可用内存为32G且可用核数小于16的第二级资源。
S604、调度节点确定在第二级资源对应的节点上运行作业。
本步骤具体可实现为:
若多层资源可以包括指针层,指针层可以包括第一指针,该第一指针用于指向资源对应的多个节点中的第一节点,则S604具体可实现为:调度节点确定在根据第一指针查找到的第二级资源对应的第一节点上运行作业。
若该指针层还包括第二指针,该第二指针用于指向资源对应的多个节点中的第二节点,第二节点与第一节点不同,则S604具体可实现为:调度节点确定在根据第二指针查找到的第二级资源对应的第二节点上运行作业。
也就是说,若第一指针指向的第二级资源对应的第一节点被占用,则调度节点确定在第二指针指向的第二级资源对应的第二节点上运行作业。因此,在确保资源快速分配的同时,可以使满足要求的各个节点均被使用,以达到负载均衡的目的,有效缓解负载倾斜的问题。
在一些实施例中,本申请实施例提供的资源匹配方法还可以包括历史资源列表,历史资源列表中可以包括一个或多个释放资源,释放资源为在作业运行后被释放的资源。
图7为本申请实施例提供的历史资源列表的结构示意图,如图7所示,历史资源列表(free list)为一个散列表,其键值(Res_key1)为作业对资源的需求,该散列表的值为一系列可用资源信息。该历史资源列表包括第一指针层(RES1)和第二指针层(RES2)。该第一指针层和第二指针层均可以包括next指针,该next指针用于指向下一个可用资源所属的节点。该第一指针层和第二指针层均还可以包括Node_ptr,该Node_ptr用于指向本资源块所属的节点(node)。该第一指针层和第二指针层均还可以包括Free_res 1、Free_res 2……Free_res n。其中,Free_res 1表示第一指针层res1空闲。Free_res 2表示第二指针层res2空闲。Free_res n表示第n指针层res n空闲。因此,本申请实施例中的历史资源列表实质是存储历史使用的资源,将历史使用的资源构成散列表,是一层数据结构而非多层数据结构,能够实现对历史使用的资源进行精准匹配。
综上可知,历史资源列表为一层数据结构,层级资源树为多层数据结构。因此,为了便于更快速的找到作业所需的资源,在执行S602之前,本申请实施例提供的资源匹配方法还可以包括:
S605、调度节点确定历史资源列表中一个或多个释放资源中是否存在第一级资源。若不存在,则执行S607;若存在,则执行S606。
应理解为,调度节点先确定历史资源列表中是否存在作业所需的资源。若不存在,则调度节点在层级资源树中查找作业所需的资源;若存在,则调度节点在历史资源列表中查找作业所需的资源。
S606、调度节点当确定历史资源列表中一个或多个释放资源中存在第一级资源时,在历史资源列表中一个或多个释放资源中查找第一属性值对应的第一级资源。
应理解为,历史资源列表中存在作业所需的资源的完整信息。例如,作业所需的资源为X86、可用核数为10、可用内存为20G。那么,历史资源列表中存储资源信息为X86、可用核数为10、可用内存为20G,以及该资源信息所属的节点信息。
S607、调度节点确定层级资源树的多个资源中是否存在第一级资源。若存在,则执行S602;若不存在,则执行S608。
S608、资源匹配失败。
可选在,在执行S604之后,本申请实施例提供的资源匹配方法还可以包括:S609、调度节点更新第二资源对应的节点的信息。
本申请实施例中,当调度节点确定在历史资源列表中不存在作业所需的资源时,调度节点在上述层级资源树中查找作业所需的资源。当调度节点确定在历史资源列表中存在作业所需的资源时,调度节点在历史资源列表中查找作业所需的资源,从而达到快捷的匹配作业所需的资源的目的。
在计算机集群运行作业之后,计算机集群需要释放资源。具体操作如下:
图8为本申请实施例提供的另一种资源匹配方法的流程示意图。如图8所示,该方法还可以包括:
S801、调度节点发送资源释放请求。
调度节点向计算机集群发送资源释放请求,计算机集群根据资源释放请求释放资源,并将释放资源的信息反馈给调度节点。
S802、调度节点获取释放资源的信息。
S803、调度节点将释放资源的信息插入到历史资源列表中。
本步骤具体可实现为:S8031、调度节点根据释放资源的信息查找历史资源列表是否存在释放资源。若是,则执行S8032;若否,则执行S8033。S8032、调度节点将释放资源的信息插入到历史资源列表的列表头中。S8033、调度节点将释放资源的信息插入到历史资源列表中。
优选的,在执行S803之后,还包括:
S804、调度节点更新释放资源对应节点的节点信息。
应理解为,调度节点将释放资源所属的节点的信息,更新至历史资源列表中。也就是说,在历史资源列表中,调度节点更新释放资源的信息的同时,更新释放资源所属的节点的信息,以便于查找到释放资源即可找到该释放资源所属的节点。
本申请实施例通过调度节点将释放资源的信息存储到历史资源列表中,以便于后续在匹配资源时可以先查找历史资源列表中的资源,进一步提高资源匹配效率。
在实际应用中,图9为本申请实施例提供的一种数据整体架构图。图9为上述层级资源树(hierarchy resource bucketing tree)、历史资源列表(free list)和节点链接列表(node link list)的组合图。如图9所示,假设:层级资源树包括第一层资源和第二层资源。其中,
第一层资源为核数,第一层资源对应的第一属性为可用核数(free core),该可用核数可以包括0(第一级资源对应的第一属性值)、8(第二级资源对应的第二属性值)、16(第三级资源对应的第三属性值)、32(第四级资源对应的第四属性值)和64(第五级资源对应的第五属性值)。故,第一层资源(free core)的表达式可以为:
Free Core:
0
8
16
32
64
第二层资源为内存,第二层资源对应的第二属性为可用内存(Free Mem),该可用核数可以包括0(第一级资源对应的第一属性值)、16(第二级资源对应的第二属性值)、32(第三级资源对应的第三属性值)、64(第四级资源对应的第四属性值)和128(第五级资源对应的第五属性值)。故,第二层资源(Free Mem)的表达式可以为:
Free Mem:
0
16
32
64
128
节点链接列表包括节点(node 1),节点2(node 2),节点3(node 3),节点N(nodeN),节点K(node K),每个节点均可以包括:可用核数(free_core)、可用内存(free_mem)、可用磁盘(free_disk)、下一个指针(next)和上一个指针(pre)等。
历史资源列表(free list)包括键值res_key1和键值res_key2。键值res_key1对应第一释放资源,键值res_key2对应第二释放资源。该历史资源列表还可以包括next指针,该next指针用于指向下一个可用资源所属的节点。该历史资源列表还可以包括Node_ptr,该Node_ptr用于指向本资源块所属的节点(node)。
以该层级资源树中的第一层资源中的第四级资源与第二层资源中的资源集合关联为例,当计算机集群运行作业时,终端将作业提交至调度节点,调度节点根据作业所需的资源在计算机集群中确定目标节点。
假设,作业所需的资源为可用核数为50,及可用内存为64G。历史资源列表中存在作业所需的资源,如历史资源列表中的键值res_key1对应作业所需的资源。调度节点获取到作业调度资源的请求,调度节点确定历史资源列表中存在作业所需的资源,调度节点在历史资源列表中查找到该资源所属的节点,既节点N。调度节点确定在节点N上运行上述作业。
再假设,作业所需的资源为可用核数为50,及可用内存为128G。历史资源列表中不存在作业所需的资源,调度节点获取到作业调度资源的请求,调度节点确定历史资源列表中不存在作业所需的资源,调度节点在层级资源树中查找到该资源所属的节点,既节点1。调度节点确定在节点1上运行上述作业。
本申请实施例通过查找层级资源树或历史资源列表,找到作业匹配的资源,解决HPC(高性能计算机群)场景下经常出现的因硬件问题出现的应用运行反复失败问题。本申请试试通过不间断分析运行结果,主动及时发现故障点并主动规避,以规避目前仅能通过被动发现,人工干预的模式。进而减少应用的运行时间,提高HPC集群的利用率。
当然,本申请实施例除了应用于HPC场景外,还可以适用于公/私有云虚拟化场景。公/私有云虚拟化对资源的需求比较简单且可枚举,如8U64G,16U128G,所申请的资源整块儿申请,整块儿回收,可以更高效的实现资源匹配。针对公/私有云虚拟化场景,具体原理详见上述描述,在此不再赘述。
图10为本申请实施例提供的一种资源匹配装置的结构示意图,该资源匹配装置应用于计算机集群,计算机集群包括多层资源,每层资源对应一个属性,每层资源包括一级或多级资源,每级资源对应一个属性值,该装置1000可以包括:
第一获取单元1001,用于获取作业调度资源的请求;请求中包括资源的第一属性和第二属性;
第一确定单元1002,用于根据第一属性确定第一层资源,在第一层资源中查找第一属性值对应第一级资源;
第二确定单元1003,用于根据第二属性确定第二层资源,并在第二层资源中确定与第一级资源关联的资源集合,在资源集合中查找第二属性值对应的第二级资源;
第三确定单元1004,用于确定在第二级资源对应的节点上运行作业。
在一些实施例中,该装置1000还可以包括历史资源列表,历史资源列表中包括一个或多个释放资源,释放资源为在作业运行后被释放的资源;
装置1000还可以包括:
第四确定单元1005,用于确定历史资源列表中一个或多个释放资源中不存在第一级资源。
在一些实施例中,该装置1000还包括:
查找单元1006,用于当确定历史资源列表中一个或多个释放资源中存在第一级资源时,在历史资源列表中一个或多个释放资源中查找第一属性值对应的第一级资源。
在一些实施例中,该装置1000还可以包括:
第二获取单元1007,用于获取释放资源的信息;
插入单元1008,用于将释放资源的信息插入到历史资源列表中。
在一些实施例中,该装置1000还可以包括:
更新单元1009,用于更新释放资源对应节点的节点信息。
在一些实施例中,该装置还可以包括指针层,指针层包括第一指针,第一指针用于指向资源对应的多个节点中的第一节点;
第三确定单元1004还用于确定在根据第一指针查找到的第二级资源对应的第一节点上运行作业。
在一些实施例中,指针层还包括第二指针,第二指针用于指向资源对应的多个节点中的第二节点,第二节点与第一节点不同;
第三确定单元1004还用于确定在根据第二指针查找到的第二级资源对应的第二节点上运行作业。
可选的,该可能的设计中,上述图1~图9所示方法实施例中涉及电子设备的各步骤的所有相关内容均可以援引到对应功能模块的功能描述,在此不再赘述。该可能的设计中所述的电子设备用于执行图1~图9所示实时通信方法中电子设备的功能,因此可以达到与上述资源匹配方法相同的效果。
本申请实施例还提供一种芯片系统,该芯片系统包括至少一个处理器和至少一个接口电路。处理器和接口电路可通过线路互联。例如,接口电路可用于从其它装置(例如存储器)接收信号。又例如,接口电路可用于向其它装置(例如处理器)发送信号。示例性的,接口电路可读取存储器中存储的指令,并将该指令发送给处理器。当所述指令被处理器执行时,可使得电子设备执行上述实施例中的各个步骤。当然,该芯片系统还可以包含其他分立器件,本申请实施例对此不作具体限定。
本申请实施例还提供一种装置,该装置包含在电子设备中,该装置具有实现上述实施例中任一方法中电子设备行为的功能。该功能可以通过硬件实现,也可以通过硬件执行相应的软件实现。硬件或软件包括至少一个与上述功能相对应的模块或单元。例如,检测模块或单元、以及确定模块或单元等。
本申请实施例还提供一种计算机可读存储介质,包括计算机指令,当计算机指令在电子设备上运行时,使得电子设备执行如上述实施例中任一方法。
本申请实施例还提供一种计算机程序产品,当计算机程序产品在计算机上运行时,使得计算机执行如上述实施例中任一方法。
可以理解的是,上述终端等为了实现上述功能,其包含了执行各个功能相应的硬件结构和/或软件模块。本领域技术人员应该很容易意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,本申请实施例能够以硬件或硬件和计算机软件的结合形式来实现。某个功能究竟以硬件还是计算机软件驱动硬件的方式来执行,取决于技术方案的特定应用和设计约束条件。本领域技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明实施例的范围。
本申请实施例可以根据上述方法示例对上述终端等进行功能模块的划分,例如,可以对应各个功能划分各个功能模块,也可以将两个或两个以上的功能集成在一个处理模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。需要说明的是,本发明实施例中对模块的划分是示意性的,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。
通过以上的实施方式的描述,所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将装置的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。上述描述的系统,装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请实施例各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请实施例的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)或处理器执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:快闪存储器、移动硬盘、只读存储器、随机存取存储器、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何在本申请揭露的技术范围内的变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以所述权利要求的保护范围为准。

Claims (17)

1.一种资源匹配方法,其特征在于,应用于计算机集群,所述计算机集群包括多层资源,每层资源对应一个属性,每层资源包括一级或多级资源,每级资源对应一个属性值,所述方法包括:
获取作业调度资源的请求;所述请求中包括资源的第一属性和第二属性;
根据所述第一属性确定第一层资源,在所述第一层资源中查找所述第一属性值对应第一级资源;
根据所述第二属性确定第二层资源,并在所述第二层资源中确定与所述第一级资源关联的资源集合,在所述资源集合中查找所述第二属性值对应的第二级资源;
确定在所述第二级资源对应的节点上运行所述作业。
2.根据权利要求1所述的方法,其特征在于,还包括历史资源列表,所述历史资源列表中包括一个或多个释放资源,所述释放资源为在所述作业运行后被释放的资源;
在根据所述第一属性确定第一层资源,在所述第一层资源中查找所述第一属性值对应第一级资源之前,包括:
确定所述历史资源列表中一个或多个所述释放资源中不存在所述第一级资源。
3.根据权利要求2所述的方法,其特征在于,还包括:
当确定所述历史资源列表中一个或多个所述释放资源中存在所述第一级资源时,在所述历史资源列表中一个或多个所述释放资源中查找所述第一属性值对应的第一级资源。
4.根据权利要求2或3所述的方法,其特征在于,在确定在所述第二级资源对应的节点上运行所述作业之后,还包括:
获取所述释放资源的信息;
将所述释放资源的信息插入到所述历史资源列表中。
5.根据权利要求4所述的方法,其特征在于,在将所述释放资源的信息插入到所述历史资源列表中之后,还包括:
更新所述释放资源对应节点的节点信息。
6.根据权利要求1-5中任一项所述的方法,其特征在于,所述多层资源包括指针层,所述指针层包括第一指针,所述第一指针用于指向资源对应的多个节点中的第一节点;
确定在所述第二级资源对应的节点上运行所述作业,包括:
确定在根据所述第一指针查找到的所述第二级资源对应的所述第一节点上运行所述作业。
7.根据权利要求6所述的方法,其特征在于,所述指针层还包括第二指针,所述第二指针用于指向资源对应的多个节点中的第二节点,所述第二节点与所述第一节点不同;
确定在所述第二级资源对应的节点上运行所述作业,包括:
确定在根据所述第二指针查找到的所述第二级资源对应的所述第二节点上运行所述作业。
8.一种资源匹配装置,其特征在于,应用于计算机集群,所述计算机集群包括多层资源,每层资源对应一个属性,每层资源包括一级或多级资源,每级资源对应一个属性值,所述装置包括:
第一获取单元,用于获取作业调度资源的请求;所述请求中包括资源的第一属性和第二属性;
第一确定单元,用于根据所述第一属性确定第一层资源,在所述第一层资源中查找所述第一属性值对应第一级资源;
第二确定单元,用于根据所述第二属性确定第二层资源,并在所述第二层资源中确定与所述第一级资源关联的资源集合,在所述资源集合中查找所述第二属性值对应的第二级资源;
第三确定单元,用于确定在所述第二级资源对应的节点上运行所述作业。
9.根据权利要求8所述的装置,其特征在于,还包括历史资源列表,所述历史资源列表中包括一个或多个释放资源,所述释放资源为在所述作业运行后被释放的资源;
所述装置还包括:
第四确定单元,用于确定所述历史资源列表中一个或多个所述释放资源中不存在所述第一级资源。
10.根据权利要求9所述的装置,其特征在于,还包括:
查找单元,用于当确定所述历史资源列表中一个或多个所述释放资源中存在所述第一级资源时,在所述历史资源列表中一个或多个所述释放资源中查找所述第一属性值对应的第一级资源。
11.根据权利要求9或10所述的装置,其特征在于,还包括:
第二获取单元,用于获取所述释放资源的信息;
插入单元,用于将所述释放资源的信息插入到所述历史资源列表中。
12.根据权利要求11所述的装置,其特征在于,还包括:
更新单元,用于更新所述释放资源对应节点的节点信息。
13.根据权利要求8-11中任一项所述的装置,其特征在于,包括指针层,所述指针层包括第一指针,所述第一指针用于指向资源对应的多个节点中的第一节点;
所述第三确定单元还用于确定在根据所述第一指针查找到的所述第二级资源对应的所述第一节点上运行所述作业。
14.根据权利要求13所述的装置,其特征在于,所述指针层还包括第二指针,所述第二指针用于指向资源对应的多个节点中的第二节点,所述第二节点与所述第一节点不同;
所述第三确定单元还用于确定在根据所述第二指针查找到的所述第二级资源对应的所述第二节点上运行所述作业。
15.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质包括计算机指令,当所述计算机指令在电子设备上运行时,使得所述电子设备执行如权利要求1-7中任一项所述的资源匹配方法。
16.一种计算机程序,其特征在于,当所述程序被处理器调用时,权利要求1至7任一项所述的资源匹配方法被执行。
17.一种芯片系统,其特征在于,包括一个或多个处理器,当所述一个或多个处理器执行指令时,所述一个或多个处理器执行如权利要求1-7中任一项所述的资源匹配方法。
CN202011551356.6A 2020-12-24 2020-12-24 一种资源匹配方法及装置 Pending CN114679448A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202011551356.6A CN114679448A (zh) 2020-12-24 2020-12-24 一种资源匹配方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011551356.6A CN114679448A (zh) 2020-12-24 2020-12-24 一种资源匹配方法及装置

Publications (1)

Publication Number Publication Date
CN114679448A true CN114679448A (zh) 2022-06-28

Family

ID=82070849

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011551356.6A Pending CN114679448A (zh) 2020-12-24 2020-12-24 一种资源匹配方法及装置

Country Status (1)

Country Link
CN (1) CN114679448A (zh)

Similar Documents

Publication Publication Date Title
US11409556B2 (en) Custom placement policies for virtual machines
US20200364608A1 (en) Communicating in a federated learning environment
US10936659B2 (en) Parallel graph events processing
US9262210B2 (en) Light weight workload management server integration
US20160162308A1 (en) Deploying a virtual machine in a computing environment
US9401835B2 (en) Data integration on retargetable engines in a networked environment
US10764159B2 (en) Dynamic system level agreement provisioning
US10158709B1 (en) Identifying data store requests for asynchronous processing
CN103970607A (zh) 使用等价集合来计算优化虚拟机分配的方法和装置
US20160378754A1 (en) Fast query processing in columnar databases with gpus
CN112005219B (zh) 计算集群中具有数据访问意识的工作负载管理的方法和系统
US10761869B2 (en) Cloud platform construction method and cloud platform storing image files in storage backend cluster according to image file type
US20220329651A1 (en) Apparatus for container orchestration in geographically distributed multi-cloud environment and method using the same
US9317328B2 (en) Strategic placement of jobs for spatial elasticity in a high-performance computing environment
US20220383219A1 (en) Access processing method, device, storage medium and program product
US9229659B2 (en) Identifying and accessing reference data in an in-memory data grid
US10620837B2 (en) Tuning memory across database clusters for distributed query stability
US20210149746A1 (en) Method, System, Computer Readable Medium, and Device for Scheduling Computational Operation Based on Graph Data
US11948010B2 (en) Tag-driven scheduling of computing resources for function execution
CN114679448A (zh) 一种资源匹配方法及装置
US11416490B2 (en) Prioritization and optimization of database workloads
EP3938904A1 (en) Computing node identifier-based request allocation
US20230221986A1 (en) Working memory management
US20220398134A1 (en) Allocation of services to containers
US20230409575A1 (en) Database query processing with database clients

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