Methods and systems for determining computational resource requirement

US9678796B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-9678796-B2
Application numberUS-201514807918-A
CountryUS
Kind codeB2
Filing dateJul 24, 2015
Priority dateJul 24, 2015
Publication dateJun 13, 2017
Grant dateJun 13, 2017

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 and system to determine a computational resource requirement is described. The method and system rank one or more computational resources for each of the plurality of tasks in an ascending order, based on a cost associated with the plurality of tasks for each of the computational resource. Based on the ranked one or more computational resources and a fairness metric, the method and system allocates the one or more capacity units associated with the computational resource to perform the plurality of tasks. The method and system determines the computational resource requirement to perform the plurality of tasks based on the allocated one or more capacity units. The fairness metric ensures that allocation of the one or more capacity units to the plurality of tasks is performed in a manner to maximize the fairness.

First claim

Opening claim text (preview).

What is claimed is: 1. A method for allocating computational resources to a plurality of tasks, the method comprising: ranking one or more computational resource types for each of the plurality of tasks, based on at least a cost of a capacity unit of each of the one or more computational resources associated with each of the one or more computational resource types, wherein the capacity unit of each of the one or more computational resources is determined based on a greatest common factor of computational speed and storage capacities of the one or more computational resources; allocating, to each of the plurality of tasks, the capacity unit of the one or more computational resources associated with a computational resource type, from the respective one or more ranked computational resource types based on a fairness metric for each of the plurality of tasks and a rank of the computational resource type, until a pre-defined performance demand of each of the plurality of tasks is met, wherein the fairness metric is based on a number of capacity units associated with corresponding indices of the one or more ranked computational resource types; and executing each of the plurality of tasks on one or more computational resources having the allocated capacity units. 2. The method of claim 1 , further comprising receiving information pertaining to the one or more computational resources from the one or more computational resource types. 3. The method of claim 2 , wherein the information comprises an IP address of the computational resource type, and computational speed and storage capacity of each of the one or more computational resources. 4. The method of dam 1 , further comprising determining a number of capacity units required for performing plurality of tasks based on said allocation. 5. The method of dam 1 , further comprising determining a performance value of each of the plurality of tasks by utilizing one or more benchmarking techniques. 6. The method of claim 1 , further comprising determining the cost for each of the one or more computational resources associated with each of the one or more computational resource types by utilizing one or more benchmarking techniques. 7. The method of claim 6 , wherein the cost comprises at least a network/bandwidth cost associated with the respective computational resource. 8. The method of claim 1 , further comprising determining an upper limit of a number of capacity units, allocable to a task from the one or more tasks, for each of the one or more computational resource types, based on at least a number of the one or more tasks. 9. The method of claim 1 , further comprising determining a computational resource requirement of each of the plurality of tasks based on a count of capacity units allocated to each of the plurality of tasks. 10. A computer program product for allocating computational resources to a plurality of tasks, the computer program product comprising: a non-transitory computer readable medium having stored thereon instructions causing a computer to perform steps comprising; ranking one or more computational resource types for each of the plurality of tasks, based on at least a cost of each of the one or more computational resources associated with each of the one or more computational resource types, wherein the capacity unit of each of the one or more computational resources is determined based on a greatest common factor of computational speed and storage capacities of the one or more computational resources; allocating, iteratively to a task from the plurality of tasks, a capacity unit of one of the one or more computational resources associated with a computational resource type, from the respective one or more ranked computational resource types based on a fairness metric for each of the plurality of tasks and a rank of the computational resource type, until a performance demand of the task is met, wherein the fairness metric is based on a number of capacity units associated with corresponding indices of the one or more ranked computational resource types; and executing each of the plurality of tasks on one or more computational resources having the allocated capacity units. 11. The method of claim 10 , further comprising determining a number of capacity units required for performing plurality of tasks based on said allocation. 12. The method of claim 10 , further comprising determining an upper limit of a number of capacity units, allocable to a task from the one or more tasks, for each of the one or more computational resources types, based on at least a number of the one or more tasks. 13. The method of claim 10 , further comprising determining a computational resource requirement of each of the plurality of tasks based on a count of capacity units allocated to each of the plurality of tasks. 14. A method to determine a computational resource requirement, the method comprising: registering a plurality of computational resources with one or more computational resource types in a repository, wherein each of the plurality of computational resources are associated with computational speed and storage capacity; determining a capacity unit for each of the one or more computational resource types based on the computational speed and storage capacity; receiving a request for determining a computational resource requirement for performing plurality of tasks based on a pre-defined performance demand associated with each of the plurality of tasks; ranking one or more computational resource types for each of the plurality of tasks in an ascending order, based on a cost associated with the plurality of tasks for each of the computational resources associated with each of the one or more computational resource types, wherein the capacity unit of each of the one or more computational resources is determined based on a greatest common factor of computational speed and storage capacities of the one or more computational resources; allocating the one or more capacity units required to perform the plurality of tasks based on the ranked one or more computational resources types and a fairness metric for each of the plurality of tasks, wherein the fairness metric ensures that allocation of the one or more capacity units to the plurality of tasks is performed in a manner to maximize a fairness, wherein the fairness metric is based on a number of capacity units associated with corresponding indices of the one or more ranked computational resource types; determining the computational resource requirement to perform the plurality of tasks based on the allocated one or more capacity units; and executing each of the plurality of tasks on one or more computational resources having the allocated capacity units. 15. A system to allocate computational resources to plurality of tasks, the system comprising: one or more processors operable to: rank one or more computational resource types for each of the plurality of tasks, based on at least a cost of a capacity unit associated with each of the one or more computational resources associated with each of the one or more computational resource types, wherein the capacity unit of each of the one or more computational resources is determined based on a greatest common factor of computational speed and storage capacities of the one or more computational resources; and allocate to each of the plurality of tasks, the capacity unit of one of the one or more computational resources associated with a computational resource type, from the respective one or more ranked computational resource types based on a fairness metric for each of the plu

Assignees

Inventors

Classifications

  • G06F9/5027Primary

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

  • G06F9/5005Primary

    to service a request · CPC title

  • Energy efficient computing, e.g. low power processors, power management or thermal management · CPC title

  • Performance criteria · CPC title

  • Resource capping · 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 US9678796B2 cover?
A method and system to determine a computational resource requirement is described. The method and system rank one or more computational resources for each of the plurality of tasks in an ascending order, based on a cost associated with the plurality of tasks for each of the computational resource. Based on the ranked one or more computational resources and a fairness metric, the method and sys…
Who is the assignee on this patent?
Xerox Corp
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 Jun 13 2017 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).