Method, apparatus, and computer program product for selecting computing resources for processing computing task based on processing performance

US11314557B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-11314557-B2
Application numberUS-201916399625-A
CountryUS
Kind codeB2
Filing dateApr 30, 2019
Priority dateJun 15, 2018
Publication dateApr 26, 2022
Grant dateApr 26, 2022

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

A method for processing a computing task comprises: dividing multiple computing resources into multiple groups on the basis of topology information describing a connection relationship between the multiple computing resources; selecting at least one computing resource from at least one group of the multiple groups; determining processing performance of processing the computing task with the selected at least one computing resource; and allocating the at least one computing resource on the basis of the processing performance to process the computing task. Accordingly, the multiple computing resources can be utilized sufficiently, so that the computing task can be processed with better processing performance.

First claim

Opening claim text (preview).

What is claimed is: 1. A method for processing a computing task, comprising: obtaining topology information describing a connection relationship between multiple computing resources, the connection relationship being based in part on a type of connection and a transmission bandwidth, the transmission bandwidth being an indicator of a distance between at least two computing resources of the multiple computing resources, the type of connection including one of a direct connection and an indirect connection between the at least two computing resources, and the type of connection being associated with the transmission bandwidth; determining the transmission bandwidths between the multiple computing resources based on the type of connection; determining the distances between the multiple computing resources on the basis of the transmission bandwidths; dividing the multiple computing resources into a first set of groups on the basis of the distances, the first set of groups comprising a first group comprises a plurality of computing resources and a second group comprising a plurality of computing resources; selecting a first set of computing resources from the first group of the first set of groups, and selecting a second set of computing resources from the second group of the first set of groups to generate a second set of groups; wherein each group in the second set of groups comprises one of the computer resources from the first set of computing resources and one of the computer resources from the second set of computing resources, wherein a total number of groups in the second set of groups are the number of combinations of each of the one of the computer resources from the first set of computing resources with each of the one of the computer resources from the second set of computing resources; determining a processing performance associated with processing the computing task with each group in the second set of groups; allocating one group of the total number of groups of the second set of groups to process the computing task in response to the processing performance of processing the computing task with one group of the total number of groups of the second set of groups being above the processing performance of processing the computing task with other groups of the total number of groups of the second set of groups; and processing the computing task in the one group of the total number of groups of the second set of groups. 2. The method of claim 1 , wherein the topology information describes a type of a combination between the multiple computing resources, and dividing the multiple computing resources into the first set of groups on the basis of the distances comprises: determining the distances between the multiple computing resources on the basis of the type of connection; and dividing the multiple computing resources into the first set of groups on the basis of the distances, a distance from a first computing resource comprised in the first group among the first set of groups to a further computer resource in the first group being below a distance from the first computing resource to a further computer resource in the second group among the first set of groups. 3. The method of claim 2 , wherein determining the distances between the multiple computing resources on the basis of the type of connection comprises: determining a bandwidth of the connection between the multiple computing resources on the basis of the type of connection; and determining the distance on the basis of the bandwidth, the distance being inversely proportional to the bandwidth; wherein responsive to a direct connection between two respective computing resources of the multiple computing resources, determining the distance based on the bandwidth of the direct connection; and responsive to an indirect connection between two respective computing resources of the multiple computing resources, determining the distance based on the respective bandwidths of multiple direct connections comprising the indirect connection. 4. The method of claim 1 , wherein selecting a first set of computing resources from the first group of the first set of groups comprises: selecting a first computing resource from the first group of the first set of groups. 5. The method of claim 4 , wherein selecting a second set of computing resources from the second group of the first set of groups further comprises: selecting a second computing resource from the second group of the first set of groups. 6. The method of claim 5 , wherein selecting at least one computing resource from at least one other group among the first set of groups further comprises: selecting a third computing resource from a third group among the first set of groups in response to processing performance of processing the computing task with the first computing resource and the second computing resource not being below processing performance of processing the computing task with the first computing resource. 7. The method of claim 1 , wherein determining processing performance associated with processing the computing task with each group in the second set of groups comprises: selecting at least one part of operations from multiple operations associated with the computing task; and executing the selected at least one part of operations with each group in the second set of groups so as to obtain the processing performance. 8. The method of claim 7 , wherein determining the processing performance comprises: determining a measured value of a time for executing the at least one part of operations with each group in the second set of groups or a number of operations executed per unit time; and determining the processing performance on the basis of the measured value. 9. The method of claim 1 , wherein the multiple computing resources are multiple graphics processing units, and the computing task is a neural network model-based computing task. 10. An apparatus for processing a computing task, comprising: at least one processor; a volatile memory; and a memory coupled to the at least one processor and having instructions stored thereon, the instructions, when executed by the at least one processor, causing the apparatus to perform acts comprising: obtaining topology information describing a connection relationship between multiple computing resources, the connection relationship being based in part on a type of connection and a transmission bandwidth, the transmission bandwidth being an indicator of a distance between at least two computing resources of the multiple computing resources, the type of connection including one of a direct connection and an indirect connection between the at least two computing resources, and the type of connection being associated with the transmission bandwidth; determining the transmission bandwidths between the multiple computing resources based on the type of connection; determining the distances between the multiple computing resources on the basis of the transmission bandwidths; dividing the multiple computing resources into a first set of groups on the basis of the distances, the first set of groups comprising a first group comprising a plurality of computing resources and a second group comprising a plurality of computing resources; selecting a first set of computing resources from the first group of the first set of groups, and selecting a second set of computing resources from the second group of the first set of groups to generate a second set of groups; wherein each group in the second set of groups comprises one of the computer resources from the first set of computing resources and one of the computer resources from the second set of c

Assignees

Inventors

Classifications

  • G06F9/5027Primary

    the resource being a machine, e.g. CPUs, Servers, Terminals · CPC title

  • Performance criteria · CPC title

  • G06F9/5077Primary

    Logical partitioning of resources; Management or configuration of virtualized resources (specific details on emulation or internal functioning of virtual machines G06F9/455) · CPC title

  • involving deadlines, e.g. rate based, periodic · CPC title

  • using a secondary processor, e.g. coprocessor (peripheral processor G06F13/12) · CPC title

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US11314557B2 cover?
A method for processing a computing task comprises: dividing multiple computing resources into multiple groups on the basis of topology information describing a connection relationship between the multiple computing resources; selecting at least one computing resource from at least one group of the multiple groups; determining processing performance of processing the computing task with the sel…
Who is the assignee on this patent?
Emc Ip Holding Co Llc
What technology area does this patent fall under?
Primary CPC classification G06F9/5027. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue Apr 26 2022 00:00:00 GMT+0000 (Coordinated Universal Time) (B2). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 8 related publications on this page (citations in our corpus or others sharing the same primary CPC).