WO2021056909A1 - 一种基于资源管理平台的任务分配方法及系统 - Google Patents

一种基于资源管理平台的任务分配方法及系统 Download PDF

Info

Publication number
WO2021056909A1
WO2021056909A1 PCT/CN2019/129975 CN2019129975W WO2021056909A1 WO 2021056909 A1 WO2021056909 A1 WO 2021056909A1 CN 2019129975 W CN2019129975 W CN 2019129975W WO 2021056909 A1 WO2021056909 A1 WO 2021056909A1
Authority
WO
WIPO (PCT)
Prior art keywords
data set
node
size
required data
task
Prior art date
Application number
PCT/CN2019/129975
Other languages
English (en)
French (fr)
Inventor
王德奎
Original Assignee
广东浪潮大数据研究有限公司
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 广东浪潮大数据研究有限公司 filed Critical 广东浪潮大数据研究有限公司
Priority to US17/763,607 priority Critical patent/US11822969B2/en
Priority to EP19946560.0A priority patent/EP4020200A4/en
Priority to KR1020227011219A priority patent/KR20220058606A/ko
Publication of WO2021056909A1 publication Critical patent/WO2021056909A1/zh

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/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
    • G06F9/5033Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals considering data affinity
    • 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/5061Partitioning or combining of resources
    • G06F9/5066Algorithms for mapping a plurality of inter-dependent sub-tasks onto a plurality of physical CPUs
    • 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
    • G06F9/4843Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
    • G06F9/4881Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues
    • 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/5083Techniques for rebalancing the load in a distributed system
    • G06F9/5088Techniques for rebalancing the load in a distributed system involving task migration
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2209/00Indexing scheme relating to G06F9/00
    • G06F2209/50Indexing scheme relating to G06F9/50
    • G06F2209/5017Task decomposition
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2209/00Indexing scheme relating to G06F9/00
    • G06F2209/50Indexing scheme relating to G06F9/50
    • G06F2209/5022Workload threshold
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2209/00Indexing scheme relating to G06F9/00
    • G06F2209/50Indexing scheme relating to G06F9/50
    • G06F2209/509Offload

Definitions

  • This application relates to the field of artificial intelligence technology, and in particular to a task allocation method and system based on a resource management platform.
  • the data set required for artificial intelligence model training and testing tasks contains a lot of data.
  • the existing resource management platform allocates tasks based on the node's own performance and so on. It takes a lot of time and resources to process tasks before processing tasks.
  • the data set is downloaded on the node of each processing task, which affects the speed and efficiency of the processing task.
  • this application provides a task allocation method and system based on a resource management platform, which can solve the prior art, when processing artificial intelligence model training or testing tasks on the resource management platform, because a large number of nodes need to download data sets The problem of wasting time and resources.
  • an embodiment of the present application provides a task allocation method based on a resource management platform, characterized in that the method includes:
  • the data set distribution information includes the name of the data set in the node and the size of each data set;
  • the node determines whether the node has the required data set; if the node has the required data set, select the required data set according to the size of the required data set in the node Nodes whose size meets the preset requirements are assigned tasks.
  • selecting a node whose size of the required data set meets a preset requirement for task allocation includes:
  • the data set score of the node is obtained through the data set scoring strategy of the node, and the node whose data set score meets the preset score is selected for task assignment.
  • the data set scoring strategy of the node specifically includes:
  • the method further includes: obtaining the data set update time of the node; and obtaining the data set score of the node includes:
  • the data set update time of the node it is judged whether the required data set in the node is updated before processing this task; if not, the data set score of the node calculated during the last task assignment is used.
  • the obtaining the data set distribution information of the node includes: obtaining the data set distribution information of the node sent by the agent unit.
  • sending the data set distribution information of the node by the proxy unit includes: when the data set of the node changes, the proxy unit sends the data set distribution information of the node.
  • selecting a node whose size of the required data set meets a preset requirement for task allocation includes:
  • a node whose performance and the size of the required data set meet the preset requirements is selected for task allocation.
  • the number of nodes whose size of the required data set meets the preset requirements cannot meet the requirements of task allocation, it also includes: selecting those that have the required number of data sets that cannot meet the preset requirements or do not have the required data The nodes of the set perform task assignment.
  • the method further includes: after the task is assigned to each node, checking whether the node has the required data set and whether the size of the required data set meets the needs of the processing task, if the node does not have the required data set Or the size of the data set is insufficient, and the required data set is downloaded.
  • an embodiment of the present application provides a task allocation system based on a resource management platform, which is characterized in that it includes:
  • the acquiring unit is used for receiving artificial intelligence model training and/or testing tasks and the names of data sets required for processing tasks; acquiring data set distribution information of multiple nodes; wherein, the data set distribution information includes the data set in the node The name of the data set and the size of each data set;
  • a judging unit configured to judge whether the node has the required data set according to the name of the data set in the node
  • the allocating unit is configured to, if the required data set is available in the node, according to the size of the required data set in the node, select the node whose size of the required data set meets the preset requirements for task allocation.
  • the allocation unit includes:
  • the data set score of the node is obtained through the data set scoring strategy of the node, and the node with a higher score is selected for task assignment.
  • the allocating unit is configured to obtain the data set score of the node through the data set scoring strategy of the node, which specifically includes:
  • the allocation unit determines the size relationship between the relative value size i of the data set size of the node and the minimum value minsize of the required data set and the maximum value maxsize of the required data set; if the relative value of the data set size of the node is less than The minimum value of the required data set, the relative value of the data set size of the node is equal to the minimum value of the required data set; if the relative value of the data set size of the node is greater than the maximum value of the required data set, the data set size of the node is set The relative value is equal to the maximum value of the required data set;
  • the allocating unit includes: according to the node's own performance and the size of the required data set in the node, selecting nodes whose own performance and the size of the required data set meet the preset requirements for task allocation .
  • the system includes: an agent unit configured to send the data set distribution information of the target node to the acquiring unit when the size of the data set of the node changes.
  • the system further includes: a rechecking unit for checking whether the node has the required data set and whether the size of the required data set meets the needs of the processing task, if the node does not have the required data If the data set or the size of the data set does not meet the preset requirements, download the required data set.
  • a rechecking unit for checking whether the node has the required data set and whether the size of the required data set meets the needs of the processing task, if the node does not have the required data If the data set or the size of the data set does not meet the preset requirements, download the required data set.
  • the resource management platform first obtains the data set information of the node before assigning the task, and compares it with the data set required to process the task to determine the node with the required data set.
  • the size of the required data set select the node whose size of the required data set meets the preset requirements for task assignment. It can be seen that, in the method provided by the embodiment of the present application, the data set of the node is considered when assigning tasks, and the task is assigned to the size of the required data set according to the size of the required data set in the node.
  • the node On a node that meets the preset requirements, the node does not need to download the required data set or the frequency of downloading the data set by the node is reduced, and the node downloads the required data set after the task is assigned without considering the data set of the node.
  • the resulting waste of time and resources reduces the network pressure of the cluster and improves the efficiency of processing tasks.
  • Fig. 1 is a flowchart of a task allocation method based on a resource management platform provided by an embodiment of the application;
  • FIG. 2 is a flowchart of yet another task allocation method based on a resource management platform provided by an embodiment of the application;
  • FIG. 3 is a schematic structural diagram of a task allocation system based on a resource management platform provided by an embodiment of the application.
  • the current task allocation method of the resource management platform mainly considers the performance of each node, and lacks the statistics and analysis of the data set information on the node.
  • the node When the task is allocated, the node is based on the current performance of the node. Score, and then assign tasks. Since the training and testing of artificial intelligence models require data sets, when processing artificial intelligence model training and/or testing tasks on the resource management platform, the resource management platform first allocates tasks to the tasks according to the current performance of each node On each node, the node that obtains the task then downloads the data set required for the processing task.
  • the inventor found through research that, due to the lack of analysis of the data set on the node in the task allocation method in the prior art, the node has the above problems when processing tasks. Therefore, the task allocation method in the existing resource management platform Need to consider the data set that the node has. It is necessary to obtain the information of the data set on each node, where the information must include the name of the data set that the node has, in order to determine whether the node has the required data set. Since the size of the data set required for each processing task is different, some tasks only require part of the data set, and some tasks require a larger data set. Therefore, the size of the data set required by each node needs to be obtained.
  • FIG. 1 is a flowchart of a task allocation method based on a resource management platform provided by an embodiment of the application.
  • the method provided by the embodiment of the present application can be applied to a distributed resource management platform, such as a resource management platform such as kubernetes.
  • the method can be implemented through the following steps S101-S104, for example.
  • S101 Accept the artificial intelligence model training and/or test task and the name of the data set required to process the task.
  • the type of artificial intelligence model is not limited in the embodiments of this application.
  • the artificial intelligence model mentioned in the embodiments of this application may be an algorithm model in deep learning or machine learning.
  • the tasks in the embodiments of the present application may be training tasks or test tasks of the model, and the types of tasks that need to be processed are not limited here.
  • the data set mentioned in the embodiments of this application can be a classic data set commonly used by those skilled in the art when training artificial intelligence models.
  • the specific data set selection can be based on the actual artificial intelligence model. Need to be determined.
  • the data set may be an MNIST data set; for another example, the data set may be an ImageNet data set.
  • the specific method for obtaining the task and data set name by the resource management platform is not limited, and in a possible implementation manner, a technician can submit it to the resource management platform.
  • S102 Obtain data set distribution information of multiple nodes; wherein the data set distribution information includes the name of the data set in the node and the size of each data set.
  • multiple nodes mentioned in the embodiments of the present application may be all nodes in the resource management platform.
  • the embodiment of the present application does not limit the expression form of the data set size in the data set distribution information, and in a possible implementation manner, it may be a specific numerical representation of the data set size. In another possible implementation, it can be the percentage of the data set size to the total size of the data set.
  • the specific method of obtaining the data set distribution information is not limited in the embodiment of the present application.
  • the data set distribution information of the cached node can be obtained from the unit of related information storage.
  • S103 Determine whether the node has the required data set according to the name of the data set in the node.
  • the embodiment of the present application does not limit the specific method of comparison.
  • the preset requirements for the required data set size are not limited in the embodiments of this application, and can be set according to the actual situation of the processing task. Among them, the preset requirements for the data set size can be the same as the data set size required by the processing task. different.
  • task allocation for nodes mentioned in the embodiments of this application can be based on the specific conditions of each node and the data set of the nodes in the cluster, and different numbers of nodes for each task to be allocated can be performed according to the actual situation. Task Assignment.
  • the node with the required data set is determined, and the task is assigned to the node whose size of the required data set meets the preset requirements, so that the task is allocated to the node with the data set, reducing
  • the frequency of downloading data sets by nodes that allocate tasks or reducing the size of nodes downloading data sets can alleviate the network pressure caused by downloading a large number of data sets by the resource management platform, and reduce the time for nodes to download data sets, and improve the resources Manage the efficiency of processing tasks on the platform.
  • a node with a required data set size that meets a preset requirement is selected for task allocation, and it is difficult to quantify the required data set size of the node.
  • a large number of tasks are easily distributed to a small number of nodes, resulting in The load of each assigned task node is too heavy.
  • FIG. 2 is a flowchart of another task allocation method based on a resource management platform provided by an embodiment of this application.
  • S201 Receive the artificial intelligence model training and/or test task and the name of the data set required to process the task.
  • S202 Obtain the data set distribution information of the node sent by the agent unit; wherein the data set distribution information includes the name of the data set in the node and the size of each data set.
  • agent unit described in the embodiment of the present application can be deployed on each node of the cluster, and corresponds to the node one-to-one.
  • the data set distribution information in the embodiment of the present application may also include information such as the update time of each data set.
  • the embodiment of the application does not limit the trigger time for the agent unit to send the data set distribution information of the node.
  • the agent unit detects a data set change on the node, for example, new data is added. set. Delete the data set. In the case of updating the data set, etc., send the new data set distribution information.
  • S203 Determine whether the node has the required data set according to the name of the data set in the node.
  • the data set score of the node is obtained through the data set scoring strategy of the node, and the node whose score meets the preset score is selected for task assignment.
  • the specific node data set scoring strategy is not limited in the embodiment of the present application, and the data set scoring strategy can be formulated according to the actual situation of the node and task allocation in the resource management platform.
  • the ratio of the required data set size in the node to the size of the data set required for the processing task can be calculated as the node's data set score, which is determined according to the ratio of the relative size of the data set of each node The size of the required data set meets the preset requirements of the node.
  • the embodiment of the present application does not limit the number of nodes required for a specific processing task, and the specific number can be set according to the processing task and the performance of each node.
  • the selection strategy of nodes whose data set size cannot meet the requirements or does not have a data set is not limited. Those skilled in the art can base on the performance of nodes on the resource management platform and the processing tasks. Requires pre-setting.
  • the data set scoring strategy of the node can be set to accurately quantify the required data set size in the node, which is convenient for node selection; and the number of nodes where the required data set size meets the preset requirements is insufficient
  • assign tasks to nodes with fewer or no data sets which avoids assigning a large number of tasks to a smaller number of nodes when there are fewer nodes with the required data sets, resulting in The load of a single node is too large, which affects task processing.
  • the task assignment of the node takes into account the situation of the required data set on the node.
  • the node with the larger required data set is selected for task assignment. It can ensure that the download of data sets is reduced when processing tasks.
  • a node with a large required data set may not be able to meet the needs of processing tasks in terms of its own performance, etc., only considering whether there is a data set in the node may not be able to select the most efficient node for processing tasks under conditions .
  • this application provides another embodiment of a task allocation method based on a resource management platform.
  • the main difference between this embodiment and the previous two embodiments is that the selection of a node for assigning tasks not only considers the required data set of the node, but also considers the computing power and storage capacity of the node itself.
  • nodes whose own performance and the size of the required data set meet the preset requirements are selected for task allocation.
  • the node's own performance and the size of the required data set in the node are not specifically limited, and the specific data representing the node's own performance is not limited, which can be processed according to The actual situation of the data is set,
  • the embodiment of the application does not limit the judgment of each performance in the node.
  • it can be implemented according to the set node performance scoring strategy, and the weighted value of the score of different performance of the node is calculated. The total evaluation value for this node.
  • the scoring strategy of the resource management platform itself can be combined with the data set score of the node to further obtain the evaluation score for the overall performance of the node.
  • the embodiment of this application further considers the performance of the node itself based on the original consideration of the data set information of the node, and adds the above-mentioned node performance to the consideration of the node to ensure that the selected node has both its own performance and the data set. It can meet the needs of processing tasks and improve the efficiency of processing tasks on the resource management platform.
  • the resource management platform is Kubernetes
  • the algorithm technician submits the training task of the artificial intelligence model to the Kubernetes resource management platform, and specifies the name of the dataset as dataset.
  • the agent unit set up on each node in advance submits the data set distribution information of each node to the resource management platform Kubernetes when the data set information of the node changes.
  • the data set distribution information submitted by the agent unit includes the data set name dataset i in the node and the size datasize i of each data set. The size of each data set corresponds to the name of the data set, and i represents the number of the node.
  • the task allocation unit in Kubernetes judges whether each node has the required data set according to the name of the data set in the node and the name of the data set required for processing the task.
  • the size of the required data set in the nodes with the required data set is compared, and the node whose size of the required data set meets the preset requirements is selected for task assignment.
  • the nodes are scored according to the preset scoring strategy of the node's data set. Since the Kubernetes resource management platform has a scoring strategy for the performance of the node, it is based on the original node scoring strategy of the Kubernetes platform and combined with the data set score of the node to assign tasks to the node.
  • the formula Calculate the relative value sizei of the data set size in the node; where nodeNum is the number of nodes in the cluster that has the data set, and allNum is the total number of nodes in the cluster.
  • nodeNum is the number of nodes in the cluster that has the data set
  • allNum is the total number of nodes in the cluster.
  • the size relationship between the relative value size i of the node data set size and the minimum value minsize of the required data set and the maximum value maxsize of the required data set is determined.
  • the maximum and minimum required data sets are set by the algorithm staff according to the actual situation of the processing task when submitting the task.
  • the relative value of the data set size of the node is less than the minimum required data set, then the relative value of the data set size of the node is equal to the minimum required data set; if the relative value of the data set size of the node is greater than the maximum required data set Value, the relative value of the data set size of the node is equal to the maximum value of the required data set.
  • Kubernetes has the original node scheduling strategy, according to the formula Get the data set score datascore i of the node. Among them, weight is the weight value of the data set score in the Kubernetes scheduling strategy, and weight can take 10. The data set score of the obtained node is added to the original node score score of Kubernetes.
  • the data set score is zero, and the node with the score that can meet the processing task requirements is selected for task assignment .
  • the number of nodes that meet the requirements is small, nodes whose scores do not meet the requirements can be selected.
  • FIG. 3 is a schematic structural diagram of a task allocation system based on a resource management platform provided by an embodiment of the application.
  • the system 300 may specifically include, for example, an acquisition unit 301, a judgment unit 302, and an allocation unit 303.
  • the obtaining unit 301 can be used to receive artificial intelligence model training and/or test tasks and the names of data sets required for processing tasks; obtain data set distribution information of a node; wherein, the data set distribution information includes the data set in the node The name of the data set and the size of each data set;
  • the judging unit 302 may be configured to judge whether the node has the required data set according to the name of the data set in the node;
  • the allocating unit 303 can be configured to, if the required data set is available in the node, according to the size of the required data set in the node, select a node whose size of the required data set meets the preset requirements for task allocation.
  • the allocating unit may be used to obtain the data set score of the node through the data set scoring strategy of the node according to the size of the required data set in the node, and select the data set with a higher score.
  • the node assigns tasks.
  • the allocating unit is configured to select a node whose performance and the size of the required data set meet the preset requirements to perform the task according to the performance of the node and the size of the required data set in the node. distribution.
  • the system may also include an agent unit, which may be used to send the data set distribution information of the target node to the acquiring unit when the size of the data set of the node changes.
  • agent unit which may be used to send the data set distribution information of the target node to the acquiring unit when the size of the data set of the node changes.
  • the system may further include a recheck unit for checking whether the node has the required data set and whether the size of the required data set meets the preset requirements, if the node does not have the required data If the data set or the size of the data set does not meet the preset requirements, download the required data set.
  • a recheck unit for checking whether the node has the required data set and whether the size of the required data set meets the preset requirements, if the node does not have the required data If the data set or the size of the data set does not meet the preset requirements, download the required data set.
  • system 300 is a system corresponding to the method provided in the above method embodiment, for the description of each unit of the system 300, please refer to the description part of the above method embodiment, which will not be repeated here.
  • the task and the required data set name and the data set distribution information of each node are received through the acquiring unit.
  • the judging unit determines the node with the required data set according to the name of the required data set and the data set distribution information of the node, and assigns tasks to the nodes with the required data set whose size meets the preset requirements.
  • the data set of the node when assigning tasks, and assign tasks to nodes with required data sets, which reduces the download of data sets required by the nodes for processing tasks, and reduces the network pressure on the resource management platform cluster This saves the time for nodes to download data sets, and improves the efficiency of the distributed resource management platform in processing tasks that require data sets of artificial intelligence models.
  • At least one (item) refers to one or more, and “multiple” refers to two or more.
  • “And/or” is used to describe the association relationship of associated objects, indicating that there can be three types of relationships, for example, “A and/or B” can mean: only A, only B, and both A and B , Where A and B can be singular or plural.
  • the character “/” generally indicates that the associated objects before and after are in an “or” relationship.
  • the following at least one item (a) or similar expressions refers to any combination of these items, including any combination of a single item (a) or a plurality of items (a).
  • At least one of a, b, or c can mean: a, b, c, "a and b", “a and c", “b and c", or "a and b and c" ", where a, b, and c can be single or multiple.

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Artificial Intelligence (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Data Mining & Analysis (AREA)
  • Evolutionary Computation (AREA)
  • Medical Informatics (AREA)
  • Computing Systems (AREA)
  • Mathematical Physics (AREA)
  • Information Transfer Between Computers (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

一种基于资源管理平台的任务分配方法及系统,该方法包括:接收人工智能模型训练和/或测试任务以及处理任务所需的数据集的名称;获取多个节点的数据集分布信息;根据所述节点中具有的数据集的名称,判断所述节点是否具有所需数据集;若节点中具有所需的数据集,根据节点中具有的所需数据集的大小,选择所需数据集的大小满足预设要求的节点进行任务分配。可以使得节点无需下载所需的数据集或者降低节点下载数据集的频率,提高了处理任务的效率。

Description

一种基于资源管理平台的任务分配方法及系统
本申请要求于2019年09月27日提交中国专利局、申请号为201910925565.3、发明名称为“一种基于资源管理平台的任务分配方法及系统”的中国专利申请的优先权,其全部内容通过引用结合在本申请中。
技术领域
本申请涉及人工智能技术领域,特别是涉及一种基于资源管理平台的任务分配方法及系统。
背景技术
随着人工智能技术和容器化技术的快速发展,越来越多的人工智能模型在分布式资源管理平台上进行训练与测试。现有的人工智能模型是利用数据集进行训练与测试的,并且针对于不同模型的应用场景选择不同的数据集。相对应的,分布式资源管理平台需要根据模型的应用场景下载对应的数据集进行模型的训练与测试。当需要在资源管理平台上处理人工智能模型的训练任务或者测试任务时,资源管理平台先将任务分配给部分节点,在处理任务前将所需要的数据集下载到处理任务的节点上。
但是人工智能模型训练与测试任务所需的数据集中包含的数据较多,现有的资源管理平台是根据节点的自身性能等进行任务分配的,处理任务前需要花费大量的时间和资源用于在各个处理任务的节点上下载数据集,影响处理任务的速度和效率。
发明内容
基于上述问题,本申请提供一种基于资源管理平台的任务分配方法及系统,能够解决现有技术中,在资源管理平台上处理人工智能模型的训练或者测试任务时,由于大量节点需要下载数据集导致的时间和资源浪费的问题。
本申请实施例公开了如下技术方案:
第一方面,本申请实施例提供了一种基于资源管理平台的任务分配方法,其特征在于,所述方法包括:
接收人工智能模型训练和/或测试任务以及处理任务所需的数据集的名称;
获取多个节点的数据集分布信息;其中,所述数据集分布信息包括该节点中具有的数据集的名称以及各个数据集的大小;
根据所述节点中具有的数据集的名称,判断所述节点是否具有所需数据集;若节点中具有所需的数据集,根据节点中具有的所需数据集的大小,选择所需数据集的大小满足预设要求的节点进行任务分配。
可选的,所述根据节点中具有的所需数据集的大小,选择所需数据集的大小满足预设要求的节点进行任务分配,包括:
根据节点中具有的所需数据集的大小,通过节点的数据集评分策略,得到该节点的数据集分值,选择数据集分值满足预设分值的节点进行任务分配。
可选的,所述节点的数据集评分策略,具体包括:
按照公式
Figure PCTCN2019129975-appb-000001
计算该节点中具有的数据集大小相对值size i;其中i为该节点的编号,nodeNum为集群中具有该数据集的节点的数量,allNum为集群中节点的总数量,datasize i为该目标节点所具有的所需数据集的大小;
判断所述节点数据集大小的相对值size i与所需数据集的最小值minsize和所需数据集的最大值maxsize之间的大小关系;若该节点的数据集大小相对值小于所需数据集最小值,则令该节点的数据集大小相对值等于所需数据集最小值;若该节点的数据集大小相对值大于所需数据集最大值,则令该节点的数据集大小相对值等于所需数据集最大值;
按照公式
Figure PCTCN2019129975-appb-000002
计算该节点的数据集分值datascore i
可选的,所述方法还包括:获取节点的数据集更新时间;所述得到节点的数据集分值,包括:
依据节点的数据集更新时间,判断处理本次任务之前,节点中具有的所需数据集是否更新;如果否,则使用上次任务分配时计算的该节点的数据集分值。
可选的,所述获取节点的数据集分布信息包括:获得由代理单元发送的节点的数据集分布信息。
可选的,代理单元发送节点的数据集分布信息,包括:在节点的数据集发生变化时,代理单元发送节点的数据集分布信息。
可选的,所述根据节点中具有的所需数据集的大小,选择所需数据集的大小符合预设要求的节点进行任务分配,包括:
根据节点的自身性能以及节点中具有的所需数据集的大小,选择自身性能以及所需数据集的大小都满足预设要求的节点进行任务分配。
可选的,所述所需数据集的大小符合预设要求的节点的数量不能满足任务分配的要求时,还包括:选择具有所需数据集数量不能满足预设要求的或者不具有所需数据集的节点进行任务分配。
可选的,所述方法还包括:任务分配到各个节点上后,检查节点是否具有所需数据集以及所需数据集的大小是否满足处理任务的需求,若该节点不具有所需的数据集或者具有的数据集数量大小不足,下载所述所需数据集。
第二方面,本申请实施例提供了一种基于资源管理平台的任务分配系统,其特征在于,包括:
获取单元,用于接受人工智能模型训练和/或测试任务以及处理任务所需的数据集的名称;获取多个节点的数据集分布信息;其中,所述数据集分布信息包括该节点中具有的数据集的名称以及各个数据集的大小;
判断单元,用于根据所述节点中具有的数据集的名称判断所述节点是否具有所需数据集;
分配单元,用于若节点中具有所需的数据集,根据节点中具有的所需数据集的大小,选择所需数据集的大小满足预设要求的节点进行任务分配。
可选的,所述分配单元包括:
用于根据节点中具有的所需数据集的大小,通过节点的数据集评分策略,得到该节点的数据集分值,选择分值较高的节点进行任务分配。
可选的,所述分配单元用于通过节点的数据集评分策略,得到该节点的数据集分值,具体包括:
所述分配单元按照公式
Figure PCTCN2019129975-appb-000003
计算该节点中具有的数据集大小相对值size i;其中i为该节点的编号,nodeNum为集群中具有该数据集的节点的数量,allNum为集群中节点的总数量,datasize i为该目标节点所具有的所需数据集的大小;
所述分配单元判断所述节点数据集大小的相对值size i与所需数据集的最小值minsize和所需数据集的最大值maxsize之间的大小关系;若该节点的数 据集大小相对值小于所需数据集最小值,则令该节点的数据集大小相对值等于所需数据集最小值;若该节点的数据集大小相对值大于所需数据集最大值,则令该节点的数据集大小相对值等于所需数据集最大值;
所述分配单元按照公式
Figure PCTCN2019129975-appb-000004
计算该节点的数据集分值datascore i
可选的,所述分配单元,包括:用于根据节点的自身性能以及节点中具有的所需数据集的大小,选择自身性能以及所需数据集的大小都满足预设要求的节点进行任务分配。
可选的,所述系统,包括:代理单元,用于在节点的数据集大小发生变化时,向获取单元发送目标节点的数据集分布信息。
可选的,所述系统,还包括:复检单元,用于检查节点是否具有所需数据集以及具有的所需数据集的大小是否满足处理任务的需求,若该节点不具有所需的数据集或者具有的数据集大小不满足预设要求,下载所述所需数据集。
相较于现有技术,本申请具有以下有益效果:
在本申请实施例中,资源管理平台在分配任务之前先获取节点所具有的数据集信息,通过与处理任务所需的数据集相比较,确定具有所需数据集的节点,根据节点中具有的所需数据集的大小,选择所需数据集的大小满足预设要求的节点进行任务分配。由此可见,在本申请实施例提供的方法中,任务分配时考虑到节点具有的数据集的情况,并且根据节点中具有的所需数据集的大小,将任务分配到所需数据集的大小满足预设要求的节点上,可以使得节点无需下载所需的数据集或者降低节点下载数据集的频率,避免了由于不考虑节点所具有的数据集情况导致的任务分配后节点下载所需数据集造成的时间和资源的浪费,减少了集群的网络压力并且提高了处理任务的效率。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例提供的一种基于资源管理平台的任务分配方法的流 程图;
图2为本申请实施例提供的又一种基于资源管理平台的任务分配方法的流程图;
图3为本申请实施例提供的一种基于资源管理平台的任务分配系统的结构示意图。
具体实施方式
正如前文所述,目前的资源管理平台的任务分配方法主要考虑的是各个节点的自身性能,缺乏对节点上的数据集信息的统计和分析,在任务分配时根据节点当前的自身性能对节点进行打分,进而分配任务。由于人工智能模型的训练和测试都需要数据集,所以当在资源管理平台上处理人工智能模型的训练和/或测试任务时,资源管理平台先根据当前各个节点的自身性能的情况将任务分配到各个节点上,之后获得任务的节点下载处理任务所需的数据集。
但是由于处理任务所需的数据集往往包含了大量的数据,所以这些数据集较大,每个节点下载时需要的时间较长,所需的网络资源较多,并且在下载数据集完成之后才可以启动任务的处理,所以在节点上下载所需的数据集会导致时间和资源的浪费,降低了处理任务的效率。
发明人经过研究发现,由于现有技术中的任务分配方法缺乏对节点上具有的数据集情况的分析,导致节点在处理任务时出现上述问题,所以,在现有的资源管理平台的任务分配方法中需要考虑到节点所具有的数据集的情况。需要获取各个节点上的数据集的信息,其中,这些信息必须包括节点所具有的数据集的名称,以便确定所述节点是否具有所需的数据集。由于每次处理任务所需的数据集的大小不同,有些任务只需要部分的数据集,有些任务所需的数据集较大,所以需要得到各个节点的所需数据集的大小,在分配任务时选择所需数据集的大小可以满足预设要求的节点,减少节点对数据集的下载。由此,通过对节点的数据集信息的获取和分析,将任务分配到具有所需数据集的节点上,从而避免节点对于所需数据集的下载或者减少对于所需数据集的下载,降低对网络资源的压力,提高处理任务的效率。
为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所 描述的实施例仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
第一实施例
参见图1,该图为本申请实施例提供的一种基于资源管理平台的任务分配方法的流程图。
需要说明的是,本申请的实施例提供的方法可以应用于分布式的资源管理平台,例如kubernetes等资源管理平台。
在本实施例中,所述方法例如可以通过如下步骤S101-S104实现。
S101:接受人工智能模型训练和/或测试任务以及处理任务所需的数据集的名称。
需要说明的是,本申请实施例中不限定人工智能模型的类型。本申请实施例中的提及的人工智能模型可以是深度学习或者机器学习中的算法模型。
需要说明的是,本申请实施例中的任务可以是模型的训练任务或者是测试任务,此处不限定需要处理任务的类型。
需要说明的是,本申请实施例中提及到的数据集可以是本领域技术人员在对人工智能模型进行训练时常用的经典的数据集,具体的数据集选择可以根据实际的人工智能模型的需要确定。例如,所述数据集可以是MNIST数据集;又如,所述数据集可以是ImageNet数据集。
需要说明的是,本申请实施例中不限定资源管理平台获取任务以及数据集名称的具体方式,在一种可能的实现方式中可以由技术人员向资源管理平台提交。
S102:获取多个节点的数据集分布信息;其中,所述数据集分布信息包括该节点中具有的数据集的名称以及各个数据集的大小。
需要说明的是,本申请实施例中提及的多个节点可以是资源管理平台中的全部节点。
需要说明的是,本申请实施例中不限定数据集分布信息中数据集大小的表现形式,在一种可能的实现方式中,可以是具体的具有数据集大小的数值表示。在另一种可能的实现方式中,可以是具有的数据集大小占数据集总大小的百分 比。
需要说明的是,本申请实施例中不限定获取数据集分布信息的具体方式,在一种可能的实现方式中,可以从相关信息储存的单元中获取缓存的节点的数据集分布信息。
S103:根据所述节点中具有的数据集的名称判断所述节点是否具有所需数据集。
需要说明的是,本申请实施例不限定比较的具体方式,在一种可能的实现方式中,通过直接对比处理任务所需的数据集的名称和节点中具有的数据集名称来判断该节点是否具有所需数据集;在另一种可能的实现方式中,先预设的各个数据集对应的数字,通过对比数字来判断该节点是否具有所需数据集。
S104:若节点中具有所需的数据集,根据节点中具有的所需数据集的大小,选择所需数据集的大小满足预设要求的节点进行任务分配。
需要说明的是,本申请实施例中不限定所需数据集大小预设要求,可以根据处理任务的实际情况进行设置,其中,数据集大小的预设要求可以与处理任务所需的数据集大小不同。
需要说明的是,本申请实施例中提及的对节点进行任务分配可以根据各个节点的具体情况以及集群中节点具有数据集的情况,对每个待分配任务的节点按照实际情况进行不同数量的任务分配。
在本实施例中,首先接受人工智能模型训练和/或测试任务以及处理任务所需的数据集的名称,并且获取节点的数据集分布信息;其次,对比所需的数据集的名称与节点中具有的数据集的名称;最后,根据具有所需数据集的节点中的所需数据集的大小,选择具有所需数据集的大小满足预设要求的节点进行任务分配。可见,通过获取节点中的数据集的信息,确定具有所需数据集的节点,并且将任务分配给所需数据集的大小满足预设要求的节点,使得任务分配给具有数据集的节点,降低了分配任务的节点下载数据集的频率或者减少了节点下载数据集的大小,可以缓解资源管理平台下载大量的数据集造成的网络压力,并且减少了由于节点下载数据集的时间,提高了在资源管理平台上处理任务的效率。
第二实施例
在上述第一实施例中,选择具有所需数据集的大小满足预设要求的节点进行任务分配,对于节点具有的所需数据集的大小难以量化。并且,在实际分配任务的情况中,当集群中具有少数的具有的所需数据集的大小满足预设要求的节点时,根据上述分配方法,容易导致大量的任务分配到少数的节点中,造成各个被分配任务的节点负载过大。
针对上述情况,本申请提供了另一种基于资源管理平台的任务分配方法,图2为本申请实施例提供的又一种基于资源管理平台的任务分配方法的流程图。
下面对该实施例进行详细的说明。
S201:接收人工智能模型训练和/或测试任务以及处理任务所需的数据集的名称。
S202:获取由代理单元发送的节点的数据集分布信息;其中,所述数据集分布信息包括该节点中具有的数据集的名称以及各个数据集的大小。
需要说明的是,本申请实施例所述的代理单元可以部署在集群的各个节点上,与节点一一对应。
需要说明的是,本申请实施例中的数据集分布信息还可以包括各个数据集的更新时间等信息。
需要说明的是,本申请实施例不限定代理单元发送节点的数据集分布信息的触发时间,在一种可能的实现方式中,当代理单元检测到节点上的数据集变化时,例如新增数据集。删除数据集。更新数据集等情况下,发送新的数据集分布信息。
S203:根据所述节点中具有的数据集的名称判断所述节点是否具有所需数据集。
S204:根据节点中具有的所需数据集的大小,通过节点的数据集评分策略,得到该节点的数据集分值,选择分值满足预设分值的节点进行任务分配。
需要说明的是,本申请实施例中不限定具体的节点的数据集评分策略,数据集评分策略可以根据资源管理平台中节点和任务分配的实际情况进行制定。在一种可能的实现方式中,可以通过计算节点中具有的所需数据集大小与处理任务所需数据集的大小的比值作为节点的数据集评分,根据各个节点的数据集 相对大小的比值确定所需数据集的大小满足预设要求的节点。
S205:当所需数据集的大小符合预设要求的节点的数量不能满足任务分配的要求时,选择具有所需数据集的数量不能满足预设要求的或者不具有所需数据集的节点进行任务分配。
需要说明的是,本申请实施例中不限定具体的处理任务所需的节点的数量,可以根据处理任务以及各个节点的性能进行具体数量的设置。
需要说明的是,本申请实施例中对数据集的大小不能满足要求或者不具有数据集的节点的选择策略不做限定,本领域技术人员可以根据资源管理平台上节点的性能情况和处理任务的需要进行预先设置。
本实施例中通过设置节点的数据集评分策略可以准确地量化节点中具有的所需的数据集大小,便于对节点进行选择;并且在所需数据集的大小满足预设要求的节点数量不足的情况下,将任务分配到具有较少的或者不具有数据集的节点上,避免了当具有所需数据集的节点较少的情况下,将大量的任务分配到数量较少的节点上,导致单个节点的负载过大,影响任务处理。
第三实施例
在上述两个示例性的实施例中,对于节点的任务分配是考虑到节点上具有的所需数据集的情况,在分配任务时,选择具有所需数据集较大的节点进行任务分配,如此可以保证处理任务时减少对数据集的下载。但是,在一些情况下,具有所需数据集较大的节点在自身性能等方面也许不能满足处理任务的需要,仅考虑节点中是否具有数据集可能不能选择出现有条件下处理任务最高效的节点。针对所述情况,本申请提供了一种基于资源管理平台的任务分配方法的另一实施例。
本实施例与前两个实施例的主要区别在于,对于选择分配任务的节点不仅仅考虑到节点所具有的所需数据集的情况,还考虑到节点本身的计算能力和储存能力。
在本实施例中,根据节点的自身性能以及节点中具有的所需数据集的大小,选择自身性能以及所需数据集的大小满足预设要求的节点进行任务分配。
需要说明的是,本申请实施例中对于节点的自身性能以及节点中具有的所需数据集的大小不做具体的限定,对于表示节点的自身性能的具体的数据也不 做限定,可以根据处理数据的实际情况进行设定,
需要说明的是,本申请实施例不限定对于节点中各个性能的判断,在一种可能的实现方式中,可以根据设置好的节点性能打分策略实现,通过计算节点不同性能的分数的加权值得到对于该节点的总的评价值。可以理解的是,在另一种实现方式中,可以结合资源管理平台自身的打分策略,结合节点的数据集分值进一步得到对于该节点的整体性能的评价分值。
本申请实施例在原有考虑节点的数据集信息的基础上进一步考虑到节点本身的性能,将上述的节点性能加入到对节点的考量中,确保选择的节点在自身性能和数据集两个方面都可以满足处理任务的需求,提高资源管理平台处理任务的效率。
第四实施例
以上对本申请实施例提供的基于资源管理平台的任务分配方法进行了介绍,以下结合具体场景对本申请实施例提供的方法进行介绍。
在该场景中,所述的资源管理平台为Kubernetes,算法技术人员将人工智能模型的训练任务提交到Kubernetes资源管理平台上,并且指定数据集的名称为dataset。预先在每个节点上设置的代理单元,在节点的数据集信息发生改变时,将各个节点的数据集分布信息提交到资源管理平台Kubernetes。其中,代理单元提交的数据集分布信息中包含节点中的数据集名称dataset i和各个数据集的大小datasize i,各个数据集的大小与数据集的名称是对应的,i代表节点的编号。Kubernetes中的任务分配单元根据节点中的数据集名称和处理任务所需的数据集的名称,判断各个节点是否具有所需的数据集。将具有所需数据集的节点中具有的所需数据集的大小进行比较,选择所需数据集的大小满足预设要求的节点进行任务分配。其中,为了方便节点的选择,根据预设的节点的数据集评分策略对节点进行评分。由于Kubernetes资源管理平台具有节点的性能的打分策略,所以基于Kubernetes平台的原有的节点打分策略,结合节点的数据 集分值对节点进行任务分配。按照公式
Figure PCTCN2019129975-appb-000005
计算该节点中具有的数据集大小相对值sizei;其中nodeNum为集群中具有该数据集的节点的数量,allNum为集群中节点的总数量。为了防止得到的节点的分值为负值,判断所述节点数据集大小的相对值size i与所需数据集的最小值minsize和所需数据集的最大值maxsize之间的大小关系。其中,所需数据集最大值与最小值是算法人员在提交任务时根据处理任务的实际情况设置的。若该节点的数据集大小相对值小于所需数据集最小值,则令该节点的数据集大小相对值等于所需数据集最小值;若该节点的数据集大小相对值大于所需数据集最大值,则令该节点的数据集大小相对值等于所需数据集最大值。由于Kubernetes具有原有的节点调度策略,所以按照公式
Figure PCTCN2019129975-appb-000006
得到该节点的数据集分值datascore i。其中,weight为数据集分值在Kubernetes的调度策略中的权重值,weight可以取10。将得到的节点的数据集分值与Kubernetes原有的节点评分分值相加,对于没有所需数据集的节点,数据集分值为零,选择分值能够满足处理任务要求的节点进行任务分配。当满足要求的节点数量较少的情况下,可以选择分值未满足要求的节点。并且在任务分配完成之后,检查各个节点中具有的所需数据集的大小,对于不具有所需的数据集或者具有的数据集数量大小不足的节点,下载所述所需数据集。
第五实施例
参见图3,该图为本申请实施例提供的一种基于资源管理平台的任务分配系统的结构示意图。
所述系统300例如可以具体包括:获取单元301、判断单元302和分配单元303。
获取单元301,可以用于接受人工智能模型训练和/或测试任务以及处理任 务所需的数据集的名称;获取节点的数据集分布信息;其中,所述数据集分布信息包括该节点中具有的数据集的名称以及各个数据集的大小;
判断单元302,可以用于根据所述节点中具有的数据集的名称判断所述节点是否具有所需数据集;
分配单元303,可以用于若节点中具有所需的数据集,根据节点中具有的所需数据集的大小,选择所需数据集的大小满足预设要求的节点进行任务分配。
在一些可能的实施方式中,所述分配单元可以用于根据节点中具有的所需数据集的大小,通过节点的数据集评分策略,得到该节点的数据集分值,选择分值较高的节点进行任务分配。
在一些可能的实施方式中,所述分配单元用于根据节点的自身性能以及节点中具有的所需数据集的大小,选择自身性能以及所需数据集的大小都满足预设要求的节点进行任务分配。
系统还可以包括,代理单元,可以用于在节点的数据集大小发生变化时,向获取单元发送目标节点的数据集分布信息。
在一些可能的实施方式中,系统还可以包括复检单元,用于检查节点是否具有所需数据集以及具有的所需数据集的大小是否满足预设要求,若该节点不具有所需的数据集或者具有的数据集大小不满足预设要求,下载所述所需数据集。
由于所述系统300是与以上方法实施例提供的方法对应的系统,故,关于所述系统300的各个单元的描述可以参考以上方法实施例的描述部分,此处不再赘述。
本实施例中,通过获取单元接收任务和所需的数据集名称以及各个节点的数据集分布信息。判断单元根据所需数据集的名称和节点的数据集分布信息,确定具有所需数据集的节点,并对具有的所需数据集的大小满足预设要求的节点进行任务分配。在任务分配时考虑到节点的数据集的情况,将任务分配到具有所需数据集的节点上,减少了节点对于处理任务的所需数据集的下载,减轻了资源管理平台的集群的网络压力,节约了节点下载数据集的时间,提高了分布式资源管理平台处理需要数据集的人工智能模型的任务的效率。
应当理解,在本申请中,“至少一个(项)”是指一个或者多个,“多个”是指两个或两个以上。“和/或”,用于描述关联对象的关联关系,表示可以存在三种关系,例如,“A和/或B”可以表示:只存在A,只存在B以及同时存在A和B三种情况,其中A,B可以是单数或者复数。字符“/”一般表示前后关联对象是一种“或”的关系。“以下至少一项(个)”或其类似表达,是指这些项中的任意组合,包括单项(个)或复数项(个)的任意组合。例如,a,b或c中的至少一项(个),可以表示:a,b,c,“a和b”,“a和c”,“b和c”,或“a和b和c”,其中a,b,c可以是单个,也可以是多个。
需要说明的是,本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于设备及系统实施例而言,由于其基本相似于方法实施例,所以描述得比较简单,相关之处参见方法实施例的部分说明即可。以上所描述的设备及系统实施例仅仅是示意性的,其中作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元提示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
以上所述,仅为本申请的一种具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应该以权利要求的保护范围为准。

Claims (15)

  1. 一种基于资源管理平台的任务分配方法,其特征在于,所述方法包括:
    接收人工智能模型训练和/或测试任务以及处理任务所需的数据集的名称;
    获取多个节点的数据集分布信息;其中,所述数据集分布信息包括该节点中具有的数据集的名称以及各个数据集的大小;
    根据所述节点中具有的数据集的名称,判断所述节点是否具有所需数据集;若节点中具有所需的数据集,根据节点中具有的所需数据集的大小,选择所需数据集的大小满足预设要求的节点进行任务分配。
  2. 根据权利要求1所述的方法,其特征在于,所述根据节点中具有的所需数据集的大小,选择所需数据集的大小满足预设要求的节点进行任务分配,包括:
    根据节点中具有的所需数据集的大小,通过节点的数据集评分策略,得到该节点的数据集分值,选择数据集分值满足预设分值的节点进行任务分配。
  3. 根据权利要求2所述的方法,其特征在于,所述节点的数据集评分策略,具体包括:
    按照公式
    Figure PCTCN2019129975-appb-100001
    计算该节点中具有的数据集大小相对值size i;其中i为该节点的编号,nodeNum为集群中具有该数据集的节点的数量,allNum为集群中节点的总数量,datasize i为该目标节点所具有的所需数据集的大小;
    判断所述节点数据集大小的相对值size i与所需数据集的最小值minsize和所需数据集的最大值maxsize之间的大小关系;若该节点的数据集大小相对值小于所需数据集最小值,则令该节点的数据集大小相对值等于所需数据集最小值;若该节点的数据集大小相对值大于所需数据集最大值,则令该节点的数据集大小相对值等于所需数据集最大值;
    按照公式
    Figure PCTCN2019129975-appb-100002
    计算该节点的数据集分值datascore i
  4. 根据权利要求2所述的方法,其特征在于,所述方法还包括:获取节点的数据集更新时间;
    所述得到该节点的数据集分值,包括:
    依据节点的数据集更新时间,判断处理本次任务之前,节点中具有的所需数据集是否更新;如果否,则使用上次任务分配时计算的该节点的数据集分值。
  5. 根据权利要求1所述的方法,其特征在于,所述获取节点的数据集分布信息包括:获得由代理单元发送的节点的数据集分布信息。
  6. 根据权利要求5所述的方法,其特征在于,代理单元发送节点的数据集分布信息,包括:在节点的数据集发生变化时,代理单元发送节点的数据集分布信息。
  7. 根据权利要求1所述的方法,其特征在于,所述根据节点中具有的所需数据集的大小,选择所需数据集的大小符合预设要求的节点进行任务分配,包括:
    根据节点的自身性能以及节点中具有的所需数据集的大小,选择自身性能以及所需数据集的大小都满足预设要求的节点进行任务分配。
  8. 根据权利要求1所述的方法,其特征在于,所述所需数据集的大小符合预设要求的节点的数量不能满足任务分配的要求时,还包括:选择所需数据集的数量不能满足预设要求的或者不具有所需数据集的节点进行任务分配。
  9. 根据权利要求1所述的方法,其特征在于,所述方法还包括:任务分配到各个节点上后,检查节点是否具有所需数据集以及所需数据集的大小是否满足处理任务的需求,若该节点不具有所需的数据集或者具有的数据集数量大小不足,下载所述所需数据集。
  10. 一种基于数据集分布信息的任务分配系统,其特征在于,包括:
    获取单元,用于接受人工智能模型训练和/或测试任务以及处理任务所需的数据集的名称,获取多个节点的数据集分布信息,其中,所述数据集分布信息包括该节点中具有的数据集的名称以及各个数据集的大小;
    判断单元,用于根据所述节点中具有的数据集的名称判断所述节点是否具有所需数据集;
    分配单元,用于若节点中具有所需的数据集,根据节点中具有的所需数据集的大小,选择所需数据集的大小满足预设要求的节点进行任务分配。
  11. 根据权利要求10所述的系统,其特征在于,所述分配单元包括:
    用于根据节点中具有的所需数据集的大小,通过节点的数据集评分策略, 得到该节点的数据集分值,选择分值满足预设分值的节点进行任务分配。
  12. 根据权利要求11所述的系统,其特征在于,所述分配单元用于通过节点的数据集评分策略,得到该节点的数据集分值,具体包括:
    所述分配单元按照公式
    Figure PCTCN2019129975-appb-100003
    计算该节点中具有的数据集大小相对值size i;其中i为该节点的编号,nodeNum为集群中具有该数据集的节点的数量,allNum为集群中节点的总数量,datasize i为该目标节点所具有的数据集大小;
    所述分配单元判断所述节点数据集大小的相对值size i与所需数据集的最小值minsize和所需数据集的最大值maxsize之间的大小关系;若该节点的数据集大小相对值小于所需数据集最小值,则令该节点的数据集大小相对值等于所需数据集最小值;若该节点的数据集大小相对值大于所需数据集最大值,则令该节点的数据集大小相对值等于所需数据集最大值;
    所述分配单元按照公式
    Figure PCTCN2019129975-appb-100004
    计算该节点的数据集分值datascore i
  13. 根据权利要求10所述的系统,其特征在于,所述分配单元,包括:
    用于根据节点的自身性能以及节点中具有的所需数据集的大小,选择自身性能以及所需数据集的大小都满足预设要求的节点进行任务分配。
  14. 根据权利要求10所述的系统,其特征在于,所述系统,包括:
    代理单元,用于在节点的数据集大小发生变化时,向获取单元发送目标节点的数据集分布信息。
  15. 根据权利要求10所述的系统,其特征在于,所述系统,还包括:
    复检单元,用于检查节点是否具有所需数据集以及具有的所需数据集的大小是否满足处理任务的需求,若该节点不具有所需的数据集或者具有的数据集大小不足,下载所述所需数据集。
PCT/CN2019/129975 2019-09-27 2019-12-30 一种基于资源管理平台的任务分配方法及系统 WO2021056909A1 (zh)

Priority Applications (3)

Application Number Priority Date Filing Date Title
US17/763,607 US11822969B2 (en) 2019-09-27 2019-12-30 Resource management platform-based task allocation method and system
EP19946560.0A EP4020200A4 (en) 2019-09-27 2019-12-30 METHOD AND SYSTEM FOR TASK ALLOCATION BASED ON A RESOURCE MANAGEMENT PLATFORM
KR1020227011219A KR20220058606A (ko) 2019-09-27 2019-12-30 자원 관리 플랫폼에 기반하는 태스크 분배 방법 및 시스템

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201910925565.3A CN110795217B (zh) 2019-09-27 2019-09-27 一种基于资源管理平台的任务分配方法及系统
CN201910925565.3 2019-09-27

Publications (1)

Publication Number Publication Date
WO2021056909A1 true WO2021056909A1 (zh) 2021-04-01

Family

ID=69439857

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2019/129975 WO2021056909A1 (zh) 2019-09-27 2019-12-30 一种基于资源管理平台的任务分配方法及系统

Country Status (5)

Country Link
US (1) US11822969B2 (zh)
EP (1) EP4020200A4 (zh)
KR (1) KR20220058606A (zh)
CN (1) CN110795217B (zh)
WO (1) WO2021056909A1 (zh)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112202837B (zh) * 2020-09-04 2022-05-17 苏州浪潮智能科技有限公司 一种基于数据集与节点缓存的调度方法和装置
CN112037052B (zh) * 2020-11-04 2021-01-26 上海冰鉴信息科技有限公司 用户行为检测方法及装置
CN112486961A (zh) * 2020-11-18 2021-03-12 广西电网有限责任公司电力科学研究院 一种大数据实时处理的方法及处理装置
CN117349026B (zh) * 2023-12-04 2024-02-23 环球数科集团有限公司 一种用于aigc模型训练的分布式算力调度系统

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107291545A (zh) * 2017-08-07 2017-10-24 星环信息科技(上海)有限公司 计算集群中多用户的任务调度方法及设备
CN109936606A (zh) * 2017-12-18 2019-06-25 浙江宇视科技有限公司 任务分配方法和装置
CN109936473A (zh) * 2017-12-19 2019-06-25 华耀(中国)科技有限公司 基于深度学习预测的分布计算系统及其运行方法
US20190227853A1 (en) * 2016-09-30 2019-07-25 Huawei Technologies Co., Ltd. Resource Allocation Method, Related Device And System

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103347055B (zh) * 2013-06-19 2016-04-20 北京奇虎科技有限公司 云计算平台中的任务处理系统、设备及方法
US9990367B2 (en) * 2015-07-27 2018-06-05 Sas Institute Inc. Distributed data set encryption and decryption
CN106445676B (zh) * 2015-08-05 2019-10-22 杭州海康威视系统技术有限公司 一种分布式数据计算的任务分配方法和任务分配装置
CN107135257A (zh) * 2017-04-28 2017-09-05 东方网力科技股份有限公司 一种节点集群中任务分配的方法、节点和系统
US10297004B2 (en) 2017-05-25 2019-05-21 American Megatrends, Inc. Multiple frame buffers for windowless embedded environment
CN107590075B (zh) * 2017-09-19 2021-06-29 郑州云海信息技术有限公司 一种软件测试方法及装置
CN107885762B (zh) * 2017-09-19 2021-06-11 北京百度网讯科技有限公司 智能大数据系统、提供智能大数据服务的方法和设备
US10742496B2 (en) 2017-12-05 2020-08-11 American Megatrends International, Llc Platform specific configurations setup interface for service processor
CN109471727B (zh) * 2018-10-29 2021-01-22 北京金山云网络技术有限公司 一种任务处理方法、装置及系统
CN109828774B (zh) 2018-12-29 2022-07-05 苏州中晟宏芯信息科技有限公司 一种服务器系统及其启动方法
CN109684147A (zh) 2019-01-09 2019-04-26 郑州云海信息技术有限公司 一种基于i2c的risc-v控制器调试方法与装置

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20190227853A1 (en) * 2016-09-30 2019-07-25 Huawei Technologies Co., Ltd. Resource Allocation Method, Related Device And System
CN107291545A (zh) * 2017-08-07 2017-10-24 星环信息科技(上海)有限公司 计算集群中多用户的任务调度方法及设备
CN109936606A (zh) * 2017-12-18 2019-06-25 浙江宇视科技有限公司 任务分配方法和装置
CN109936473A (zh) * 2017-12-19 2019-06-25 华耀(中国)科技有限公司 基于深度学习预测的分布计算系统及其运行方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
See also references of EP4020200A4

Also Published As

Publication number Publication date
CN110795217B (zh) 2022-07-15
CN110795217A (zh) 2020-02-14
EP4020200A1 (en) 2022-06-29
EP4020200A4 (en) 2022-10-12
US20220334882A1 (en) 2022-10-20
KR20220058606A (ko) 2022-05-09
US11822969B2 (en) 2023-11-21

Similar Documents

Publication Publication Date Title
WO2021056909A1 (zh) 一种基于资源管理平台的任务分配方法及系统
CN108829494B (zh) 基于负载预测的容器云平台智能资源优化方法
CN103870334B (zh) 一种大规模漏洞扫描的任务分配方法及装置
WO2020024442A1 (zh) 资源分配方法、装置、计算机设备及计算机可读存储介质
CN109561148A (zh) 边缘计算网络中基于有向无环图的分布式任务调度方法
WO2018000991A1 (zh) 一种数据均衡方法和装置
CN109617826B (zh) 一种基于布谷鸟搜索的storm动态负载均衡方法
CN113824489B (zh) 基于深度学习的卫星网络资源动态分配方法、系统及装置
CN113806018B (zh) 基于神经网络和分布式缓存的Kubernetes集群资源混合调度方法
CN111752678A (zh) 面向边缘计算中分布式协同学习的低功耗容器放置方法
CN114756347A (zh) 基于集群的服务器资源调度方法、装置、云平台及介质
CN104461739B (zh) 一种基于cloudsim平台的虚拟机批量部署方法
CN106325976A (zh) 一种渲染任务调度处理方法及服务器
CN108616424A (zh) 一种资源调度方法、计算机设备和系统
CN113032102A (zh) 资源重调度方法、装置、设备和介质
CN112559147A (zh) 基于gpu占用资源特点的动态匹配算法、系统和设备
JP2006344068A5 (zh)
CN111796933A (zh) 资源调度方法、装置、存储介质和电子设备
WO2015019538A1 (ja) 仮想リソース制御システムおよび仮想リソース制御方法
CN115129463A (zh) 算力调度方法及装置、系统及存储介质
WO2021000694A1 (zh) 一种部署业务的方法以及调度装置
CN115361349B (zh) 资源使用方法和装置
CN111367632A (zh) 一种基于周期特征的容器云调度方法
CN116360922A (zh) 集群资源调度方法、装置、计算机设备和存储介质
CN115169881A (zh) 任务分配方法、装置和电子设备

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 19946560

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

ENP Entry into the national phase

Ref document number: 2019946560

Country of ref document: EP

Effective date: 20220323

ENP Entry into the national phase

Ref document number: 20227011219

Country of ref document: KR

Kind code of ref document: A