CN117421108A - 一种异构算力平台设计方法、平台及资源调度方法 - Google Patents

一种异构算力平台设计方法、平台及资源调度方法 Download PDF

Info

Publication number
CN117421108A
CN117421108A CN202311724030.2A CN202311724030A CN117421108A CN 117421108 A CN117421108 A CN 117421108A CN 202311724030 A CN202311724030 A CN 202311724030A CN 117421108 A CN117421108 A CN 117421108A
Authority
CN
China
Prior art keywords
task
heterogeneous
information
service unit
temporary
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
CN202311724030.2A
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.)
Enterprise Online Beijing Data Technology Co ltd
Original Assignee
Enterprise Online Beijing Data 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 Enterprise Online Beijing Data Technology Co ltd filed Critical Enterprise Online Beijing Data Technology Co ltd
Priority to CN202311724030.2A priority Critical patent/CN117421108A/zh
Publication of CN117421108A publication Critical patent/CN117421108A/zh
Pending legal-status Critical Current

Links

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/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/25Integrating or interfacing systems involving database management systems
    • G06F16/252Integrating or interfacing systems involving database management systems between a Database Management System and a front-end application
    • 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
    • YGENERAL 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
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE 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/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Databases & Information Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

本申请公开了一种异构算力平台设计方法、平台及资源调度方法,涉及异构平台设计技术领域。所述异构算力平台设计方法包括:构建平台用资源管理器,所述平台用资源管理器通过收集和存储与平台通信的各个计算资源所具有的不同类型的AI算力资源的详细信息来建立资源数据库;构建平台用任务调度器,所述平台用任务调度器根据任务的特性和计算资源的状态来分配任务。本申请提供了一种异构人工智能(AI)算力资源调度平台的架构设计方法。该方法能够进行高效管理、调度异构计算资源,能够快速的为不同场景、不同业务的人工智能(AI)应用提供极高的性能,加快人工智能(AI)应用开发、部署、使用的效率。

Description

一种异构算力平台设计方法、平台及资源调度方法
技术领域
本申请涉及异构平台设计技术领域,尤其涉及一种异构算力平台设计方法、异构算力平台以及资源调度方法。
背景技术
随着人工智能(AI)技术的快速发展,各种类型的人工智能(AI)算力资源与多元化的人工智能应用均不断涌现。算力资源出现了包括中央处理器(CPU)、图形处理器(GPU)、Tensor处理器(TPU)、现场可编程门阵列(FPGA)、数据处理单元(DPU)等各种专用处理器。人工智能应用也在各个领域蓬勃发展,包括计算机视觉、自然语言处理、机器学习、语音处理等领域并向多领域融合形式转变。各种算力资源的专用领域与性能等差异巨大,难以统一进行管理和调度。以前的资源调度平台因为应用领域单一以及管理的算力资源类型单一,已经无法满足越来越多样的人工智能应用,更无法使用多种异构算力资源带来的性能提升和优化,也无法加快多样性人工智能应用开发效率。
因此,需要有一种技术方案来解决或至少减轻现有技术的上述不足。
发明内容
本发明的目的在于提供一种异构算力平台设计方法来至少解决上述的一个技术问题。
本发明提供了下述方案:
根据本发明的一个方面,提供一种异构算力平台设计方法,所述异构算力平台设计方法包括:
构建平台用资源管理器,所述平台用资源管理器通过收集和存储与平台通信的各个计算资源所具有的不同类型的AI算力资源的详细信息来建立资源数据库;
构建平台用任务调度器,所述平台用任务调度器根据任务的特性和计算资源的状态来分配任务。
可选地,所述构建平台用资源管理器包括:
根据计算资源的种类,每种计算资源构建一个专用资源管理器;
构建通用资源管理器;其中,
所述通用资源管理器用于与专用资源管理器进行交互以及对外提供API服务;
每个所述专用资源管理器运行于资源节点,每个所述专用资源管理器用于发现、统计、分配、回收计算资源并上报给通用资源管理器,并与kubernetes一起工作,为容器使用计算资源提供服务。
本申请还提供了一种异构算力平台,所述异构算力平台采用如上所述的异构算力平台设计方法架设而成。
本申请还提供了一种资源调度方法,用于如上所述的异构算力平台,所述资源调度方法包括:
生成自然语言任务测试集、图像任务测试集、文本处理任务测试集、音视频任务测试集;
对每个计算资源进行自然语言性能测试从而获取每个计算资源的自然语言能耗信息;
对每个计算资源进行图像性能测试从而获取每个计算资源的图像性能能耗信息;
对每个计算资源进行文本处理性能测试从而获取每个计算资源的文本处理能耗信息;
对每个计算资源进行音视频任务性能测试从而获取每个计算资源的音视频任务处理能耗信息;
根据所述每个计算资源的自然语言能耗信息、每个计算资源的图像性能能耗信息、每个计算资源的文本处理能耗信息、每个计算资源的音视频任务处理能耗信息分别为每个计算资源生成模型功耗成本对应数据库;
分别获取每个常驻异构服务单元的计算资源及功能数据库;
获取原始任务表,所述原始任务表中至少包括两个计算任务;
获取异构任务调度模型,所述异构任务调度模型至少为两个,各个任务调度模型具有不同的适应度函数;
将所述原始任务表、每个计算资源生成模型功耗成本对应数据库以及每个常驻异构服务单元的计算资源及功能数据库输入至任意一个所述异构任务调度模型,从而对各个任务进行实时调度分配。
可选地,在对各个任务进行实时调度分配过程中,所述资源调度方法进一步包括:
获取临时异构服务单元标识;
获取历史临时异构服务单元数据库,所述历史临时异构服务单元数据库包括至少一个历史临时异构服务单元唯一标识以及与该历史临时异构服务单元唯一标识对应的历史临时异构服务单元数据库,所述历史临时异构服务单元数据库包括历史临时异构服务单元的计算资源及功能数据库以及成本信息;
判断临时异构服务单元标识是否与一个历史临时异构服务单元唯一标识相同,若是,则
生成策略选择询问信息;
获取任务发布者根据所述策略选择询问信息所反馈的适应度种类以及是否允许临时异构服务单元加入信息;
根据所述是否允许临时异构服务单元加入信息判断是否允许临时异构服务单元加入,若是,则
获取当前使用的异构任务调度模型的适应度函数;
根据所述适应度种类与所述适应度函数判断当前使用的异构任务调度模型是否适配,若否,则
获取适用于所述适应度种类的所述异构任务调度模型;
根据所述原始任务表中未进行调度分配或未进行的计算任务生成新任务表;
将所述新任务表、每个计算资源生成模型功耗成本对应数据库、每个常驻异构服务单元的计算资源及功能数据库、历史临时异构服务单元的计算资源及功能数据库、成本信息输入至适用于所述适应度种类的所述异构任务调度模型从而对新任务表中的各个任务进行实时调度分配。
可选地,所述资源调度方法进一步包括:
判断临时异构服务单元标识是否与一个历史临时异构服务单元唯一标识相同,若否,则
生成性能问题信息并将性能问题信息发送给临时异构服务单元;
获取临时异构服务单元所反馈的临时异构服务单元性能信息;
判断根据所获取的临时异构服务单元性能信息是否能够生成历史临时异构服务单元的计算资源及功能数据库以及成本信息,若是,则
将所述历史临时异构服务单元的临时异构服务单元性能信息以及该历史临时异构服务单元加入至所述历史临时异构服务单元数据库并生成策略选择询问信息;
获取任务发布者根据所述策略选择询问信息所反馈的适应度种类以及是否允许临时异构服务单元加入信息;
根据所述是否允许临时异构服务单元加入信息判断是否允许临时异构服务单元加入,若是,则
获取当前使用的异构任务调度模型的适应度函数;
根据所述适应度种类与所述适应度函数判断当前使用的异构任务调度模型是否适配,若否,则
获取适用于所述适应度种类的所述异构任务调度模型;
根据所述原始任务表中未进行调度分配或未进行的计算任务生成新任务表;
将所述新任务表、每个计算资源生成模型功耗成本对应数据库、每个常驻异构服务单元的计算资源及功能数据库、历史临时异构服务单元的计算资源及功能数据库、成本信息输入至适用于所述适应度种类的所述异构任务调度模型从而对新任务表中的各个任务进行实时调度分配。
可选地,所述资源调度方法进一步包括:
判断根据所获取的临时异构服务单元性能信息是否能够生成历史临时异构服务单元的计算资源及功能数据库以及成本信息,若否,则
获取原始任务表中的计算任务信息;
根据所述计算任务信息选取所述自然语言任务测试集、图像任务测试集、文本处理任务测试集、音视频任务测试集中的一个或多个发送给临时异构服务单元;
获取临时异构服务单元根据所接收的自然语言任务测试集、图像任务测试集、文本处理任务测试集、音视频任务测试集中的一个或多个对所述临时异构服务单元进行测试从而获取部分计算资源及功能数据库以及成本信息;
生成策略选择询问信息并发送给任务发布者;
获取任务发布者根据所述策略选择询问信息所反馈的适应度种类以及是否允许临时异构服务单元加入信息;
根据所述是否允许临时异构服务单元加入信息判断是否允许临时异构服务单元加入,若是,则
获取当前使用的异构任务调度模型的适应度函数;
根据所述适应度种类与所述适应度函数判断当前使用的异构任务调度模型是否适配,若否,则
获取适用于所述适应度种类的所述异构任务调度模型;
根据所述原始任务表中未进行调度分配或未进行的计算任务生成新任务表;
将所述新任务表、每个计算资源生成模型功耗成本对应数据库、每个常驻异构服务单元的计算资源及功能数据库、部分计算资源及功能数据库、成本信息输入至适用于所述适应度种类的所述异构任务调度模型从而对新任务表中的各个任务进行实时调度分配。
可选地,所述的适应度种类包括以能耗估计为适应度参考信息、以运算时间为适应度参考信息、以成本为适应度参考信息、以能耗估计、运算时间以及成本的组合为适应度参考信息;
所述适应度函数包括以能耗越低个体适应度值越高作为个体优化策略的第一适应度函数、以运算时间越低个体适应度值越高作为个体优化策略的第二适应度函数、以成本越低个体适应度值越高作为个体优化策略的第三适应度函数以及以能耗估计、运算时间以及成本的组合越低个体适应度值越高作为个体优化策略的第四适应函数。
可选地,根据所述适应度种类与所述适应度函数判断当前使用的异构任务调度模型是否适配包括:
当所述适应度种类为以能耗估计为适应度参考信息且适应度函数为第一适应度函数时,判断为适配;
当所述适应度种类为以运算时间为适应度参考信息且适应度函数为第二适应度函数时,判断为适配;
当所述适应度种类为以成本为适应度参考信息且适应度函数为第三适应度函数时,判断为适配;
当所述适应度种类为以能耗估计、运算时间以及成本的组合为适应度参考信息且适应度函数为第四适应度函数时,判断为适配。
可选地,所述策略选择询问信息包括策略选择问题、临时异构服务单元的成本信息以及允许运行时间长度信息。
本申请的异构算力平台设计方法提供了一种异构人工智能(AI)算力资源调度平台的架构设计方法。该方法能够进行高效管理、调度异构计算资源,能够快速的为不同场景、不同业务的人工智能(AI)应用提供极高的性能,加快人工智能(AI)应用开发、部署、使用的效率。
附图说明
图1是本申请一实施例中的异构算力平台设计方法的流程示意图。
具体实施方式
下面将结合附图对本发明的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
图1是本申请一实施例中的异构算力平台设计方法的流程示意图。
如图1所示的所述异构算力平台设计方法包括:
步骤1:构建平台用资源管理器,所述平台用资源管理器通过收集和存储与平台通信的各个计算资源所具有的不同类型的AI算力资源的详细信息来建立资源数据库;
步骤2:构建平台用任务调度器,所述平台用任务调度器根据任务的特性和计算资源的状态来分配任务。
本申请的异构算力平台设计方法提供了一种异构人工智能(AI)算力资源调度平台的架构设计方法。该方法能够进行高效管理、调度异构计算资源,能够快速的为不同场景、不同业务的人工智能(AI)应用提供极高的性能,加快人工智能(AI)应用开发、部署、使用的效率。
在本实施例中,构建平台用资源管理器包括:
根据计算资源的种类,每种计算资源构建一个专用资源管理器;
构建通用资源管理器;其中,
所述通用资源管理器用于与专用资源管理器进行交互以及对外提供API服务;
每个所述专用资源管理器运行于资源节点,每个所述专用资源管理器用于发现、统计、分配、回收计算资源并上报给通用资源管理器,并与kubernetes一起工作,为容器使用计算资源提供服务。
本申请还提供了一种异构算力平台,所述异构算力平台采用如上所述的异构算力平台设计方法架设而成。
下面以举例的方式对本申请进行进一步详细阐述,可以理解的是,该举例并不构成对本申请的任何限制。
一种异构算力平台,包括:
资源管理器:负责管理不同类型的AI算力资源,包括CPU、GPU(英伟达、寒武纪、昆仑芯等)、TPU、FPGA、DPU(IB、NVMe等)等。每一种AI算力资源都有一种专用资源管理器,该专用资源管理器主要用于本类型资源的发现、分配、回收、统计。除上述的资源管理器之外还有一个抽象通用资源管理层,用来发现、收集、存储关于这些不同资源的详细信息,比如资源类型、版本、数量、处理能力、内存大小、性能指标等,并能对资源进行分组(可以使用资源类型、版本等各种指标进行分组)。抽象通用资源管理层为任务调度或其他模块提供服务,专用资源管理器用来负责具体的资源管理(发现、分配、回收等)。
任务调度器:负责根据任务的特性和计算资源的状态来分配任务。任务是一种工作负载,是由用户或者程序生成的,任务负载中描述了任务所使用的计算框架、数据、模型、资源组类别、资源类型、资源数量。因此任务调度器通过分析任务负载中的标签并通过一定的算法来分配任务的计算资源的使用,并依据任务的类别、优先级、任务负载以优先级的方式在用户资源上运行任务,以便做出最优的调度决策。
资源监控器:负责实时监控资源的状态和任务执行的情况。它收集并分析资源、任务等数据,一方面及时发现和解决物理资源、软件、服务、集群、任务可能出现的问题,另一方面统计收集资源、任务的信息,为平台的运行、优化、用户决策提供依据。
存储系统:存储系统为异构人工智能(AI)算力资源调度平台提供存储服务,负责平台的存储资源的管理。它是一个可插拔的存储管理系统,可以对接很多的存储平台,例如ceph、NFS等。它可以对平台中使用的存储资源进行分配、扩容(注:存储系统需支持磁盘限额功能)、回收等管理。
用户服务:负责用户相关的服务。它一方面提供了用户、权限管理相关的服务,另一方面提供了用户业务方面的服务,再一方面提供了运维运营方面的服务。其中用户权限管理部分,提供了用户定义、认证、用户资源隔离、平台资源(外部资源、物理资源、软件资源)用户视角、资源配额等功能。用户业务方面,它提供了业务构造、业务支持、业务流程管理等功能。业务构造,它包含AI开发环境(命令行、可视化环境、环境镜像等)、数据管理(数据集管理、文件管理)、模型管理等。业务支持,它提供了通用的计算框架的控制器,例如tensorflow、pytorch、paddle等,除此还提供了镜像管理、模型部署等功能。业务流程,它提供了任务管理、工作流管理等功能。运维运营方面,它提供了监控告警、计量计费、审计报表、系统管理等用户层面的功能。
本发明的优点在于,可以实现了统一的平台对异构人工智能(AI)算力资源(CPU、GPU、DPU、TPU等)的单一方式管理,使得跨平台、跨领域的、融合多种专业化芯片的、多样化的人工智能(AI)应用成为可能,提升了多样化的人工智能(AI)应用的开发、部署、使用的效率。此外,该平台还具有良好的通用性和扩展性,一方面可以轻松添加新的人工智能(AI)算力资源类型,另一方面可以兼容多模态、全领域的人工智能(AI)应用。
在本实施例中,资源管理器:该组件通过收集和存储不同类型的AI算力资源的详细信息,建立一个全面的资源数据库。这些信息包括处理能力、内存大小、存储空间等。此外,该组件还提供了一组API,一方面其他组件可以随时查询这些信息,另一方面可以提供基于资源信息构建的资源组、资源配额等服务,资源组和资源配额是资源分配的基础。资源管理器运行于kubernetes(容器编排)之上,包含专用资源管理器、通用资源管理器两部分。专用资源管理器,它运行于资源节点,它发现、统计、分配、回收特定的计算资源并上报给通用资源管理器,并与kubernetes(容器编排)一起工作,为容器使用计算资源提供服务。通用资源管理器,它一方面提供一个服务用于与专用资源管理器的交互,用来存储专用资源管理器上报的资源信息(资源类型、全部资源数量、已用资源数量、可用资源数量;资源类型包含,cpu、内存、可用本地存储、gpu、dpu、容器数量等),另一方面提供了一个对外的web服务器,对外提供API服务,服务内容为资源信息查询、资源组、资源配额、资源设置等。
资源管理器的启动与使用步骤如下:
1、通用资源管理器被启动。
2、资源注册。资源节点被加入kubernetes(容器编排)集群,资源节点被标记(依据资源类型进行标记)。
3、专用资源管理器启动。专用资源管理器在资源节点被启动(依据资源节点资源类型标记启动特定资源的专用资源管理器)。
4、专用资源管理器统计并向通用资源管理器上报资源。
5、通用资源管理器统计、存储各类资源类型、数量,并对外提供API服务。
任务调度器:该组件根据任务的特性和计算资源的状态来分配任务。它使用一种算法来进行调度决策,除此之外又使用工作流来对任务调度进行补充。在一个实施例中,计算资源是以资源组形式分配给用户,资源是用户独享的。平台是以计算资源组为核心来构建任务调度的。平台中所有计算资源都进行了资源分组,每一个计算资源组都维护了运行、就绪队列,队列中存储对应的运行态、就绪态任务,根据本申请所描述的异构AI算力资源调度平台的计算资源调度方法来进行任务调度。任务会包含如下信息,计算框架(tensorflow、pytorch、paddle等)、镜像、算法、数据集、模型、模型存储位置、计算资源组、其他资源组、资源用量、所属用户等。任务与计算资源组的匹配是以本申请所描述的异构AI算力资源调度平台的计算资源调度方法来进行任务调度的。工作流是多任务在逻辑关系上的组织,通过工作流将具有先后逻辑顺序或按资源使用量逻辑关系组织在一起的多个任务进行组织,充分使用计算资源,极大提高系统资源利用率。
任务调度器的使用步骤如下:
一、非使用工作流状态
1、用户通过用户接口创建任务(指定计算框架、镜像、算法、数据、模型、资源组、资源用量等),任务存于数据库。
2、任务调度器从数据库获取任务并分析,若任务配置错误,则驳回。
3、若任务配置正确,则将任务放于任务所在计算资源组的就绪队列。
4、任务调度器根据算法进行任务调度(先入先执行或提请)。
5、若任务被允许调度,则根据任务负载构建任务配置信息,将配置信息提交给计算框架控制器,进行任务的执行,任务从就绪队列移到运行队列。
6、若任务不被允许调度,则等待。
7、任务完成运行,则将任务从运行队列移除,并变更数据库任务状态。
8、结束。
二、工作流状态
1、用户根据任务逻辑关系创建工作流,并将工作流配置信息存储于数据库。
2、任务管理器读取工作流,分析任务逻辑关系,并根据条件表达式的内容选择任务执行分支;
3、选定分支的任务进行执行;
4、任务工作流结束;
5、更新工作流状态;
6、结束。
资源监控器:该组件实时监控资源的状态和任务执行的情况。它收集并分析数据,以便及时发现并解决可能出现的问题。它包含三部分,一部分是监控服务器、一部分是数据采集器、一部分是告警管理器。监控服务器用来存储数据采集器采集的各类数据,数据采集器用来采集数据,告警管理器用来告警设置。资源监控器中预置了一些监控对象与监控指标,分别是物理资源(服务器的cpu、内存、磁盘、磁盘io、GPU等)、软件资源(系统使用的数据库、系统服务等)。除此之外,用户需要根据自己需求自定义监控目标与监控指标(例如:资源组中GPU资源的使用情况)来使用监控告警系统。
自定义监控使用:
1、用户定义监控目标与监控指标,并存于数据库;
2、资源监控器根据用户的配置启动特定目标的数据采集器;
3、资源监控器根据用户的配置配置监控服务器从数据采集器拉取监控数据;
4、监控服务器记录保存拉取的数据;
5、监控服务器根据用户定义的目标和监控指标绘制数据图标;
6、用户使用;
7、结束。
存储系统:存储系统为异构人工智能(AI)算力资源调度平台提供存储服务,负责平台的存储资源的管理。存储系统分为存储控制器、外部存储两部分。存储控制器用来存储外部存储系统的访问端点、用户权限、资源分配、管理等。外部存储系统用来进行真正的存储的分配、回收管理设置。
存储系统的使用:
1、具有一个外部存储系统(需支持多点挂载、磁盘扩容、磁盘限额)。
2、外部存储系统注册,外部存储系统的访问端点、用户权限等注册到存储控制器。
3、kubernetes(容器编排)平台部署相应存储系统的Provisioner软件(动态存储空间分配)。
4、存储控制器通过访问端点、用户权限访问外部存储系统,读取外部存储系统的信息(存储类型、容量、可用容量、已分配信息等)。
5、存储控制器将读取的信息推送给资源管理器,以便资源组和资源配额管理。
6、用户创建与用户资源配额设置。
7、存储控制器调用存储系统的Provisioner软件为用户创建资源配额大小的存储空间(使用用户id进行标记)。
8、用户的所有任务共享多点挂载该用户id标记的存储空间。
9、用户磁盘限额调整。
10、存储控制器停止所有用户任务,并调整kubernetes中用户的磁盘限制,调整完成恢复用户任务执行。
11、结束。
用户服务:它具有三大模块,一方面为用户权限管理,另一方面为运维运营,再一方面为用户业务。
一、用户权限管理:它提供了一个RBAC(基于角色的访问控制)的访问控制系统,该系统与kubernetes通过token与label的对应关系来实现的用户的多角色的资源权限的访问控制。
二、运维运营部分:运维部分主要是用户自定义的监控告警以及相关的运维策略,具体起作用的仍然是资源监控器,因此略过。运营该部分是可插拔、可定制的用户服务部分,与异构人工智能(AI)资源的调度无关,因此略过。
用户业务:它提供了业务构造、业务支持、业务流程管理功能。业务构造,它提供了一组API,可以实现文件管理(文件在存储空间的上传、下载、删除),算法管理(建立算法文件的索引对象),数据集管理(建立数据文件的索引对象),AI开发环境(运行命令行、可视化环境等容器应用),模型管理(建立模型文件的索引对象,以及对模型文件的操作),镜像管理(镜像文件的上传、下载、删除),模型部署(构造基于特定模型文件的应用,将该应用部署到kubernetes,对外提供服务)等功能。业务支持部分主要内容为,人工智能计算框架控制器,人工智能计算框架仓库,人工智能计算框架镜像(pytorch、tenforflow等镜像),前两者由平台提供,后者提供了相应的API接口(镜像上传、下载、删除)。业务流程,它提供了一组API,该API与用户进行交互,以实现任务管理、工作流管理等功能(参见任务调度器部分)。
本申请还提供了一种资源调度方法,用于如上所述的异构算力平台,通过平台用任务调度器进行调度,可以实现资源的调度分配,具体而言,所述资源调度方法包括:
生成自然语言任务测试集、图像任务测试集、文本处理任务测试集、音视频任务测试集;
对每个计算资源进行自然语言性能测试从而获取每个计算资源的自然语言能耗信息;
对每个计算资源进行图像性能测试从而获取每个计算资源的图像性能能耗信息;
对每个计算资源进行文本处理性能测试从而获取每个计算资源的文本处理能耗信息;
对每个计算资源进行音视频任务性能测试从而获取每个计算资源的音视频任务处理能耗信息;
根据所述每个计算资源的自然语言能耗信息、每个计算资源的图像性能能耗信息、每个计算资源的文本处理能耗信息、每个计算资源的音视频任务处理能耗信息分别为每个计算资源生成模型功耗成本对应数据库;
分别获取每个常驻异构服务单元的计算资源及功能数据库;
获取原始任务表,所述原始任务表中至少包括两个计算任务;
获取异构任务调度模型,所述异构任务调度模型至少为两个,各个任务调度模型具有不同的适应度函数;
将所述原始任务表、每个计算资源生成模型功耗成本对应数据库以及每个常驻异构服务单元的计算资源及功能数据库输入至任意一个所述异构任务调度模型,从而对各个任务进行实时调度分配。
通过本申请的资源调度方法,可以首先收集每种计算资源在各个处理方向上的能耗情况以及每个常驻异构服务单元的计算资源及功能数据库,并通过具有不同的适应度函数的异构任务调度模型来进行具有不同侧重点的任务分配策略。
在本实施例中,自然语言能耗信息可以包括如下信息:语言模型信息:例如,GPT-OD语言模型、word2vec语义嵌入模型等等;计算资源信息,其中,计算资源信息包括计算资源种类(例如,是GPU、FPGA还是其他种类)、计算资源运行数量信息(例如,是一个GPU在运行还是两个FPGA在运行);功耗信息;运算时间信息等。
在本实施例中,图像性能能耗信息包括:图像模型信息:例如,VGG模型、YOLO模型等等;计算资源信息,其中,计算资源信息包括计算资源种类(例如,是GPU、FPGA还是其他种类)、计算资源运行数量信息(例如,是一个GPU在运行还是两个FPGA在运行);功耗信息;运算时间信息等。
在本实施例中,文本处理能耗信息包括:文本处理模型信息:例如,Transformer模型等等;计算资源信息,其中,计算资源信息包括计算资源种类(例如,是GPU、FPGA还是其他种类)、计算资源运行数量信息(例如,是一个GPU在运行还是两个FPGA在运行);功耗信息;运算时间信息等。
在本实施例中,音视频任务处理能耗信息包括:音视频任务处理模型信息:例如,GE2E模型等等;计算资源信息,其中,计算资源信息包括计算资源种类(例如,是GPU、FPGA还是其他种类)、计算资源运行数量信息(例如,是一个GPU在运行还是两个FPGA在运行);功耗信息;运算时间信息等。
在本实施例中,根据所述每个计算资源的自然语言能耗信息、每个计算资源的图像性能能耗信息、每个计算资源的文本处理能耗信息、每个计算资源的音视频任务处理能耗信息分别为每个计算资源生成模型功耗成本对应数据库。
分别获取每个常驻异构服务单元的计算资源及功能数据库,在本实施例中,常驻异构服务单元是指能够随时进行使用的服务器,计算资源及功能数据库包括该服务器中的各个计算资源信息,例如,以服务器A为例,其可能具有GPU芯片6个,FPGA芯片8个,MLU芯片4个。在本实施例中,计算资源及功能数据库还包括该服务器的基础信息,例如,基础功耗以及浮动值。
在本实施例中,原始任务表包括多个计算任务,计算任务可以是通过某个模型对某些数据进行训练的任务,例如,通过某一图像处理用神经网络多10万张图像进行训练这种即为一个任务。在本实施例中,一个原始任务表中可以包括多个任务,例如,包括100个任务,其中部分任务可能是图像训练任务,部分任务可能是语音训练任务等。
在本实施例中,当各个任务之间具有依赖关系或者优先级时,也会在原始任务表中标记出来具体的依赖信息以及优先级信息。
在本实施例中,异构任务调度模型为遗传算法模型,在本实施例中,各个遗传算法模型的适应度函数是不一样的,这样,通过适应度函数的不同侧重,可以获取多种分配策略。
在本实施例中,将所述原始任务表、每个计算资源生成模型功耗成本对应数据库以及每个常驻异构服务单元的计算资源及功能数据库输入至任意一个所述异构任务调度模型,从而对各个任务进行实时调度分配。
在本实施例中,在对各个任务进行实时调度分配过程中,所述资源调度方法进一步包括:
获取临时异构服务单元标识;
获取历史临时异构服务单元数据库,所述历史临时异构服务单元数据库包括至少一个历史临时异构服务单元唯一标识以及与该历史临时异构服务单元唯一标识对应的历史临时异构服务单元数据库,所述历史临时异构服务单元数据库包括历史临时异构服务单元的计算资源及功能数据库以及成本信息;
判断临时异构服务单元标识是否与一个历史临时异构服务单元唯一标识相同,若是,则
生成策略选择询问信息;
获取任务发布者根据所述策略选择询问信息所反馈的适应度种类以及是否允许临时异构服务单元加入信息;
根据所述是否允许临时异构服务单元加入信息判断是否允许临时异构服务单元加入,若是,则
获取当前使用的异构任务调度模型的适应度函数;
根据所述适应度种类与所述适应度函数判断当前使用的异构任务调度模型是否适配,若否,则
获取适用于所述适应度种类的所述异构任务调度模型;
根据所述原始任务表中未进行调度分配或未进行的计算任务生成新任务表;
将所述新任务表、每个计算资源生成模型功耗成本对应数据库、每个常驻异构服务单元的计算资源及功能数据库、历史临时异构服务单元的计算资源及功能数据库、成本信息输入至适用于所述适应度种类的所述异构任务调度模型从而对新任务表中的各个任务进行实时调度分配。
在进行实施例分配任务的过程中,很可能会有临时异构服务单元申请加入帮助分担任务。
举例来说,在一个实施例中,常驻异构服务单元可能只有2个,然而,本申请还允许其他临时异构服务单元加入,例如,一个空闲的异构服务单元通过发送请求的方式可以申请加入整个任务中。
在本实施例中,首先需要获取临时异构服务单元标识,该标识表示该异构服务单元的唯一身份。
获取历史临时异构服务单元数据库,该历史临时异构服务单元数据库中存储有之前已经加入过的临时异构服务单元(临时异构服务单元可以根据情况随时加入或者退出,可以理解的是,这种退出需要在完成已分配任务的情况下退出,或者给出可加入的时间,例如,可加入8个小时,那么当完成最后一个任务后其剩余时间不够完成下一个任务的情况下,就不在分配给其任务,直接让其时间到后退出即可),此时,可以通过进行比对的方式判断现在请求加入的临时异构服务单元是否为以前加入过的,如果是以前加入过的,那该临时异构服务单元的各种信息(历史临时异构服务单元的计算资源及功能数据库以及成本信息)都存在于数据库中。
在本实施例中,临时异构服务单元的信息还进一步包括成本信息,因为在某些情况下,这些临时加入的服务单元可能利用空闲时间赚钱,因此,可以自由进行定价,可以理解的是,常驻异构服务单元也可以有成本信息,该成本信息可以是0。
如果在历史临时异构服务单元数据库中能够找到该临时异构服务单元,则生成策略选择询问信息。
在本实施例中,策略选择询问信息可以是一段文字,例如,现在有新服务单元加入,其具有4个GPU、6个FPGA,成本为A元/分钟。即通过这段文字让任务发布者了解新加入的服务单元的基本情况,这样任务发布者会根据自己的情况判断是否要使用该临时异构服务单元。
获取任务发布者根据所述策略选择询问信息所反馈的适应度种类以及是否允许临时异构服务单元加入信息,举例来说,任务发布者可以通过选择项回复是否允许临时异构服务单元,另外可以输入其所需要的适应度种类。
根据所述是否允许临时异构服务单元加入信息判断是否允许临时异构服务单元加入,若是,则
获取当前使用的异构任务调度模型的适应度函数;
根据所述适应度种类与所述适应度函数判断当前使用的异构任务调度模型是否适配,若否,则
获取适用于所述适应度种类的所述异构任务调度模型;
根据所述原始任务表中未进行调度分配或未进行的计算任务生成新任务表;举例来说,假设原始任务表中有100个任务,现在已经分配了30个,剩下的70个则组成新任务表。
将新任务表、每个计算资源生成模型功耗成本对应数据库、每个常驻异构服务单元的计算资源及功能数据库、历史临时异构服务单元的计算资源及功能数据库、成本信息输入至适用于所述适应度种类的所述异构任务调度模型从而对新任务表中的各个任务进行实时调度分配。
在本实施例中,资源调度方法进一步包括:
判断临时异构服务单元标识是否与一个历史临时异构服务单元唯一标识相同,若否,则
生成性能问题信息并将性能问题信息发送给临时异构服务单元;
获取临时异构服务单元所反馈的临时异构服务单元性能信息;
判断根据所获取的临时异构服务单元性能信息是否能够生成历史临时异构服务单元的计算资源及功能数据库以及成本信息,若是,则
将所述历史临时异构服务单元的计算资源及功能数据库、成本信息以及该历史临时异构服务单元加入至所述历史临时异构服务单元数据库并生成策略选择询问信息;
获取任务发布者根据所述策略选择询问信息所反馈的适应度种类以及是否允许临时异构服务单元加入信息;
根据所述是否允许临时异构服务单元加入信息判断是否允许临时异构服务单元加入,若是,则
获取当前使用的异构任务调度模型的适应度函数;
根据所述适应度种类与所述适应度函数判断当前使用的异构任务调度模型是否适配,若否,则
获取适用于所述适应度种类的所述异构任务调度模型;
根据所述原始任务表中未进行调度分配或未进行的计算任务生成新任务表;
将所述新任务表、每个计算资源生成模型功耗成本对应数据库、每个常驻异构服务单元的计算资源及功能数据库、历史临时异构服务单元的计算资源及功能数据库、成本信息输入至适用于所述适应度种类的所述异构任务调度模型从而对新任务表中的各个任务进行实时调度分配。
在某些情况下,该临时异构服务单元可能是新加入的,也就是说以前没有加入过,此时,在历史临时异构服务单元数据库中可以没有存储有该临时异构服务单元的数据。
在这种情况下,生成性能问题信息并将性能问题信息发送给临时异构服务单元,具体而言,性能问题信息即在异构任务调度模型进行工作时所需要的内容,例如,GPU的数量、FPGA的数量、单个GPU的性能、单个FPGA的性能、基础功耗等内容。
获取临时异构服务单元所反馈的临时异构服务单元性能信息,如果临时异构服务单元所反馈的信息足够生成历史临时异构服务单元的计算资源及功能数据库以及成本信息,则将所述历史临时异构服务单元的临时异构服务单元性能信息以及该历史临时异构服务单元加入至所述历史临时异构服务单元数据库并生成策略选择询问信息;
获取任务发布者根据所述策略选择询问信息所反馈的适应度种类以及是否允许临时异构服务单元加入信息;
根据所述是否允许临时异构服务单元加入信息判断是否允许临时异构服务单元加入,若是,则
获取当前使用的异构任务调度模型的适应度函数;
根据所述适应度种类与所述适应度函数判断当前使用的异构任务调度模型是否适配,若否,则
获取适用于所述适应度种类的所述异构任务调度模型;
根据所述原始任务表中未进行调度分配或未进行的计算任务生成新任务表;
将所述新任务表、每个计算资源生成模型功耗成本对应数据库、每个常驻异构服务单元的计算资源及功能数据库、历史临时异构服务单元的计算资源及功能数据库、成本信息输入至适用于所述适应度种类的所述异构任务调度模型从而对新任务表中的各个任务进行实时调度分配。
在本实施例中,所述资源调度方法进一步包括:
判断根据所获取的临时异构服务单元性能信息是否能够生成历史临时异构服务单元的计算资源及功能数据库以及成本信息,若否,则
获取原始任务表中的计算任务信息;
根据所述计算任务信息选取所述自然语言任务测试集、图像任务测试集、文本处理任务测试集、音视频任务测试集中的一个或多个发送给临时异构服务单元;
获取临时异构服务单元根据所接收的自然语言任务测试集、图像任务测试集、文本处理任务测试集、音视频任务测试集中的一个或多个对所述临时异构服务单元进行测试从而获取部分计算资源及功能数据库以及成本信息;
生成策略选择询问信息并发送给任务发布者;
获取任务发布者根据所述策略选择询问信息所反馈的适应度种类以及是否允许临时异构服务单元加入信息;
根据所述是否允许临时异构服务单元加入信息判断是否允许临时异构服务单元加入,若是,则
获取当前使用的异构任务调度模型的适应度函数;
根据所述适应度种类与所述适应度函数判断当前使用的异构任务调度模型是否适配,若否,则
获取适用于所述适应度种类的所述异构任务调度模型;
根据所述原始任务表中未进行调度分配或未进行的计算任务生成新任务表;
将所述新任务表、每个计算资源生成模型功耗成本对应数据库、每个常驻异构服务单元的计算资源及功能数据库、部分计算资源及功能数据库、成本信息输入至适用于所述适应度种类的所述异构任务调度模型从而对新任务表中的各个任务进行实时调度分配。
在本实施例中,可能临时异构服务单元的拥有者也无法完全提供满足需求的临时异构服务单元性能信息,例如,可能拥有者知道有几个GPU,但是不知道具体的功耗情况等,此时,就无法直接加入计算资源及功能数据库,在这种情况下,可以根据所述计算任务信息选取所述自然语言任务测试集、图像任务测试集、文本处理任务测试集、音视频任务测试集中的一个或多个发送给临时异构服务单元;
举例来说,如果计算任务信息里边只有单一的某一类型任务(例如,只有图片训练任务),则可以只将图像任务测试集给临时异构服务单元即可,如果有多种任务,则可以将多种测试集都给临时异构服务单元。
临时异构服务单元通过与常驻异构服务单元同样的测试集,可以获取到与常驻异构服务单元在同样标准下所测得的详细数据。
获取临时异构服务单元根据所接收的自然语言任务测试集、图像任务测试集、文本处理任务测试集、音视频任务测试集中的一个或多个对所述临时异构服务单元进行测试从而获取部分计算资源及功能数据库以及成本信息;例如,如果当临时异构服务单元只获取到图像任务测试集的话,其获取的部分计算资源及功能数据库只包括图像任务的,而不包括其他任务的。如果其获取了全部的测试集,则部分计算资源及功能数据库中可以包括全部的性能信息。
当具有了临时异构服务单元的足够的信息后,生成策略选择询问信息并发送给任务发布者;
获取任务发布者根据所述策略选择询问信息所反馈的适应度种类以及是否允许临时异构服务单元加入信息;
根据所述是否允许临时异构服务单元加入信息判断是否允许临时异构服务单元加入,若是,则
获取当前使用的异构任务调度模型的适应度函数;
根据所述适应度种类与所述适应度函数判断当前使用的异构任务调度模型是否适配,若否,则
获取适用于所述适应度种类的所述异构任务调度模型;
根据所述原始任务表中未进行调度分配或未进行的计算任务生成新任务表;
将所述新任务表、每个计算资源生成模型功耗成本对应数据库、每个常驻异构服务单元的计算资源及功能数据库、部分计算资源及功能数据库、成本信息输入至适用于所述适应度种类的所述异构任务调度模型从而对新任务表中的各个任务进行实时调度分配。
在本实施例中,所述的适应度种类包括以能耗估计为适应度参考信息、以运算时间为适应度参考信息、以成本为适应度参考信息、以能耗估计、运算时间以及成本的组合为适应度参考信息;
所述适应度函数包括以能耗越低个体适应度值越高作为个体优化策略的第一适应度函数、以运算时间越低个体适应度值越高作为个体优化策略的第二适应度函数、以成本越低个体适应度值越高作为个体优化策略的第三适应度函数以及以能耗估计、运算时间以及成本的组合越低个体适应度值越高作为个体优化策略的第四适应函数。
在本实施例中,根据所述适应度种类与所述适应度函数判断当前使用的异构任务调度模型是否适配包括:
当所述适应度种类为以能耗估计为适应度参考信息且适应度函数为第一适应度函数时,判断为适配;
当所述适应度种类为以运算时间为适应度参考信息且适应度函数为第二适应度函数时,判断为适配;
当所述适应度种类为以成本为适应度参考信息且适应度函数为第三适应度函数时,判断为适配;
当所述适应度种类为以能耗估计、运算时间以及成本的组合为适应度参考信息且适应度函数为第四适应度函数时,判断为适配。
在本实施例中,适应度函数的选取直接影响到遗传算法的收敛速度以及能否找到最优解,因为遗传算法在进化搜索中基本不利用外部信息,仅以适应度函数为依据,利用种群每个个体的适应度来进行搜索.因为适应度函数的复杂度是遗传算法复杂度的主要组成部分。
在本实施例中,第一适应度函数的优化策略是最终的能耗越低,这个个体越容易被选择,适应度越好,所以这里我们需要对适应度进行处理,将每个个体的适应度与适应度总和相比,得到新的个体适应度值,并再次相加得到新的适应度总和,这时能耗越低的个体适应度值越高,符合本文的要求。
在本实施例中,所述策略选择询问信息包括策略选择问题、临时异构服务单元的成本信息以及允许运行时间长度信息。
本申请的资源调度方法具有如下优点:
1、本申请在进行分配过程中,随时可以根据临时异构服务单元进行优化调整,从而获取到最后合适的资源调配策略。
2、本申请在进行分配过程中, 可以根据任务发布者自身的情况来选择是否使用临时异构服务单元,从而在速度、时间以及成本上进行自主选择。
3、本申请在进行分配过程中,有多种适应度类型供任务发布者进行选择,从而根据任务发布者自身情况选择合适的偏重方向。
最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。

Claims (10)

1.一种异构算力平台设计方法,其特征在于,所述异构算力平台设计方法包括:
构建平台用资源管理器,所述平台用资源管理器通过收集和存储与平台通信的各个计算资源所具有的不同类型的AI算力资源的详细信息来建立资源数据库;
构建平台用任务调度器,所述平台用任务调度器根据任务的特性和计算资源的状态来分配任务。
2.根据权利要求1所述的异构算力平台设计方法,其特征在于,所述构建平台用资源管理器包括:
根据计算资源的种类,每种计算资源构建一个专用资源管理器;
构建通用资源管理器;其中,
所述通用资源管理器用于与专用资源管理器进行交互以及对外提供API服务;
每个所述专用资源管理器运行于资源节点,每个所述专用资源管理器用于发现、统计、分配、回收计算资源并上报给通用资源管理器,并与kubernetes一起工作,为容器使用计算资源提供服务。
3.一种异构算力平台,其特征在于,所述异构算力平台采用如权利要求1至2中任意一项所述的异构算力平台设计方法架设而成。
4.一种资源调度方法,用于如权利要求3所述的异构算力平台,其特征在于,所述资源调度方法包括:
生成自然语言任务测试集、图像任务测试集、文本处理任务测试集、音视频任务测试集;
对每个计算资源进行自然语言性能测试从而获取每个计算资源的自然语言能耗信息;
对每个计算资源进行图像性能测试从而获取每个计算资源的图像性能能耗信息;
对每个计算资源进行文本处理性能测试从而获取每个计算资源的文本处理能耗信息;
对每个计算资源进行音视频任务性能测试从而获取每个计算资源的音视频任务处理能耗信息;
根据所述每个计算资源的自然语言能耗信息、每个计算资源的图像性能能耗信息、每个计算资源的文本处理能耗信息、每个计算资源的音视频任务处理能耗信息分别为每个计算资源生成模型功耗成本对应数据库;
分别获取每个常驻异构服务单元的计算资源及功能数据库;
获取原始任务表,所述原始任务表中至少包括两个计算任务;
获取异构任务调度模型,所述异构任务调度模型至少为两个,各个任务调度模型具有不同的适应度函数;
将所述原始任务表、每个计算资源生成模型功耗成本对应数据库以及每个常驻异构服务单元的计算资源及功能数据库输入至任意一个所述异构任务调度模型,从而对各个任务进行实时调度分配。
5.如权利要求4所述的资源调度方法,其特征在于,在对各个任务进行实时调度分配过程中,所述资源调度方法进一步包括:
获取临时异构服务单元标识;
获取历史临时异构服务单元数据库,所述历史临时异构服务单元数据库包括至少一个历史临时异构服务单元唯一标识以及与该历史临时异构服务单元唯一标识对应的历史临时异构服务单元数据库,所述历史临时异构服务单元数据库包括历史临时异构服务单元的计算资源及功能数据库以及成本信息;
判断临时异构服务单元标识是否与一个历史临时异构服务单元唯一标识相同,若是,则
生成策略选择询问信息;
获取任务发布者根据所述策略选择询问信息所反馈的适应度种类以及是否允许临时异构服务单元加入信息;
根据所述是否允许临时异构服务单元加入信息判断是否允许临时异构服务单元加入,若是,则
获取当前使用的异构任务调度模型的适应度函数;
根据所述适应度种类与所述适应度函数判断当前使用的异构任务调度模型是否适配,若否,则
获取适用于所述适应度种类的所述异构任务调度模型;
根据所述原始任务表中未进行调度分配或未进行的计算任务生成新任务表;
将所述新任务表、每个计算资源生成模型功耗成本对应数据库、每个常驻异构服务单元的计算资源及功能数据库、历史临时异构服务单元的计算资源及功能数据库、成本信息输入至适用于所述适应度种类的所述异构任务调度模型从而对新任务表中的各个任务进行实时调度分配。
6.如权利要求5所述的资源调度方法,其特征在于,所述资源调度方法进一步包括:
判断临时异构服务单元标识是否与一个历史临时异构服务单元唯一标识相同,若否,则
生成性能问题信息并将性能问题信息发送给临时异构服务单元;
获取临时异构服务单元所反馈的临时异构服务单元性能信息;
判断根据所获取的临时异构服务单元性能信息是否能够生成历史临时异构服务单元的计算资源及功能数据库以及成本信息,若是,则
将所述历史临时异构服务单元的临时异构服务单元性能信息以及该历史临时异构服务单元加入至所述历史临时异构服务单元数据库并生成策略选择询问信息;
获取任务发布者根据所述策略选择询问信息所反馈的适应度种类以及是否允许临时异构服务单元加入信息;
根据所述是否允许临时异构服务单元加入信息判断是否允许临时异构服务单元加入,若是,则
获取当前使用的异构任务调度模型的适应度函数;
根据所述适应度种类与所述适应度函数判断当前使用的异构任务调度模型是否适配,若否,则
获取适用于所述适应度种类的所述异构任务调度模型;
根据所述原始任务表中未进行调度分配或未进行的计算任务生成新任务表;
将所述新任务表、每个计算资源生成模型功耗成本对应数据库、每个常驻异构服务单元的计算资源及功能数据库、历史临时异构服务单元的计算资源及功能数据库、成本信息输入至适用于所述适应度种类的所述异构任务调度模型从而对新任务表中的各个任务进行实时调度分配。
7.如权利要求6所述的资源调度方法,其特征在于,所述资源调度方法进一步包括:
判断根据所获取的临时异构服务单元性能信息是否能够生成历史临时异构服务单元的计算资源及功能数据库以及成本信息,若否,则
获取原始任务表中的计算任务信息;
根据所述计算任务信息选取所述自然语言任务测试集、图像任务测试集、文本处理任务测试集、音视频任务测试集中的一个或多个发送给临时异构服务单元;
获取临时异构服务单元根据所接收的自然语言任务测试集、图像任务测试集、文本处理任务测试集、音视频任务测试集中的一个或多个对所述临时异构服务单元进行测试从而获取部分计算资源及功能数据库以及成本信息;
生成策略选择询问信息并发送给任务发布者;
获取任务发布者根据所述策略选择询问信息所反馈的适应度种类以及是否允许临时异构服务单元加入信息;
根据所述是否允许临时异构服务单元加入信息判断是否允许临时异构服务单元加入,若是,则
获取当前使用的异构任务调度模型的适应度函数;
根据所述适应度种类与所述适应度函数判断当前使用的异构任务调度模型是否适配,若否,则
获取适用于所述适应度种类的所述异构任务调度模型;
根据所述原始任务表中未进行调度分配或未进行的计算任务生成新任务表;
将所述新任务表、每个计算资源生成模型功耗成本对应数据库、每个常驻异构服务单元的计算资源及功能数据库、部分计算资源及功能数据库、成本信息输入至适用于所述适应度种类的所述异构任务调度模型从而对新任务表中的各个任务进行实时调度分配。
8.如权利要求7所述的资源调度方法,其特征在于,所述的适应度种类包括以能耗估计为适应度参考信息、以运算时间为适应度参考信息、以成本为适应度参考信息、以能耗估计、运算时间以及成本的组合为适应度参考信息;
所述适应度函数包括以能耗越低个体适应度值越高作为个体优化策略的第一适应度函数、以运算时间越低个体适应度值越高作为个体优化策略的第二适应度函数、以成本越低个体适应度值越高作为个体优化策略的第三适应度函数以及以能耗估计、运算时间以及成本的组合越低个体适应度值越高作为个体优化策略的第四适应函数。
9.如权利要求8所述的资源调度方法,其特征在于,根据所述适应度种类与所述适应度函数判断当前使用的异构任务调度模型是否适配包括:
当所述适应度种类为以能耗估计为适应度参考信息且适应度函数为第一适应度函数时,判断为适配;
当所述适应度种类为以运算时间为适应度参考信息且适应度函数为第二适应度函数时,判断为适配;
当所述适应度种类为以成本为适应度参考信息且适应度函数为第三适应度函数时,判断为适配;
当所述适应度种类为以能耗估计、运算时间以及成本的组合为适应度参考信息且适应度函数为第四适应度函数时,判断为适配。
10.如权利要求9所述的资源调度方法,其特征在于,所述策略选择询问信息包括策略选择问题、临时异构服务单元的成本信息以及允许运行时间长度信息。
CN202311724030.2A 2023-12-15 2023-12-15 一种异构算力平台设计方法、平台及资源调度方法 Pending CN117421108A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202311724030.2A CN117421108A (zh) 2023-12-15 2023-12-15 一种异构算力平台设计方法、平台及资源调度方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202311724030.2A CN117421108A (zh) 2023-12-15 2023-12-15 一种异构算力平台设计方法、平台及资源调度方法

Publications (1)

Publication Number Publication Date
CN117421108A true CN117421108A (zh) 2024-01-19

Family

ID=89526961

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202311724030.2A Pending CN117421108A (zh) 2023-12-15 2023-12-15 一种异构算力平台设计方法、平台及资源调度方法

Country Status (1)

Country Link
CN (1) CN117421108A (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN118069380A (zh) * 2024-04-25 2024-05-24 维能(深圳)大数据技术有限公司 一种算力资源处理方法

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105704255A (zh) * 2016-04-29 2016-06-22 浙江理工大学 一种基于遗传算法的服务器负载均衡方法
CN112667594A (zh) * 2021-01-14 2021-04-16 北京智源人工智能研究院 一种基于混合云资源的异构计算平台及模型训练方法
US20220004433A1 (en) * 2020-07-01 2022-01-06 International Business Machines Corporation Heterogeneous system on a chip scheduler
CN114996018A (zh) * 2022-06-15 2022-09-02 中国电力科学研究院有限公司 面向异构计算的资源调度方法、节点、系统、设备及介质
CN116360972A (zh) * 2021-12-27 2023-06-30 华为技术有限公司 资源管理方法、装置及资源管理平台
CN117176722A (zh) * 2022-05-26 2023-12-05 中国移动通信集团终端有限公司 动态重构方法、装置及服务器

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105704255A (zh) * 2016-04-29 2016-06-22 浙江理工大学 一种基于遗传算法的服务器负载均衡方法
US20220004433A1 (en) * 2020-07-01 2022-01-06 International Business Machines Corporation Heterogeneous system on a chip scheduler
CN112667594A (zh) * 2021-01-14 2021-04-16 北京智源人工智能研究院 一种基于混合云资源的异构计算平台及模型训练方法
CN116360972A (zh) * 2021-12-27 2023-06-30 华为技术有限公司 资源管理方法、装置及资源管理平台
CN117176722A (zh) * 2022-05-26 2023-12-05 中国移动通信集团终端有限公司 动态重构方法、装置及服务器
CN114996018A (zh) * 2022-06-15 2022-09-02 中国电力科学研究院有限公司 面向异构计算的资源调度方法、节点、系统、设备及介质

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN118069380A (zh) * 2024-04-25 2024-05-24 维能(深圳)大数据技术有限公司 一种算力资源处理方法
CN118069380B (zh) * 2024-04-25 2024-06-25 维能(深圳)大数据技术有限公司 一种算力资源处理方法

Similar Documents

Publication Publication Date Title
US9086923B2 (en) Autonomic workflow management in dynamically federated, hybrid cloud infrastructures
Buyya et al. Gridsim: A toolkit for the modeling and simulation of distributed resource management and scheduling for grid computing
Wang et al. Adaptive scheduling for parallel tasks with QoS satisfaction for hybrid cloud environments
US8612987B2 (en) Prediction-based resource matching for grid environments
CN104050042B (zh) Etl作业的资源分配方法及装置
US20090282413A1 (en) Scalable Scheduling of Tasks in Heterogeneous Systems
US20160366246A1 (en) Computing resource deployment system
WO2020113310A1 (en) System and method for resource partitioning in distributed computing
CN109075988A (zh) 任务调度和资源发放系统和方法
US20070226231A1 (en) Systems and methods for managing business issues
US11620168B2 (en) Managing metadata for a distributed processing system with manager agents and worker agents
US20170199757A1 (en) Virtualized execution across distributed nodes
CN111464659A (zh) 节点的调度、节点的预选处理方法、装置、设备及介质
CN111984385A (zh) 基于装饰bim模型的任务调度方法和任务调度装置
CN117421108A (zh) 一种异构算力平台设计方法、平台及资源调度方法
Ding et al. Kubernetes-oriented microservice placement with dynamic resource allocation
Kijsipongse et al. A hybrid GPU cluster and volunteer computing platform for scalable deep learning
Somasundaram et al. Semantic-enabled CARE Resource Broker (SeCRB) for managing grid and cloud environment
Bhattacharjee et al. Stratum: A bigdata-as-a-service for lifecycle management of iot analytics applications
Gu et al. Characterizing job-task dependency in cloud workloads using graph learning
Ghazali et al. CLQLMRS: improving cache locality in MapReduce job scheduling using Q-learning
Ni et al. An ant colony optimization for the composite SaaS placement problem in the cloud
CN114896049A (zh) 电力人工智能平台作业任务调度方法、系统、设备及介质
Fontes et al. CoDIMS-G: a data and program integration service for the grid
Yu et al. Qos-based scheduling of workflows on global grids

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