JP6825103B2 - 計算リソース割り振り - Google Patents
計算リソース割り振り Download PDFInfo
- Publication number
- JP6825103B2 JP6825103B2 JP2019528471A JP2019528471A JP6825103B2 JP 6825103 B2 JP6825103 B2 JP 6825103B2 JP 2019528471 A JP2019528471 A JP 2019528471A JP 2019528471 A JP2019528471 A JP 2019528471A JP 6825103 B2 JP6825103 B2 JP 6825103B2
- Authority
- JP
- Japan
- Prior art keywords
- program
- resource
- computational
- component
- resources
- 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.)
- Active
Links
- 238000013468 resource allocation Methods 0.000 title description 21
- 238000012545 processing Methods 0.000 claims description 187
- 238000000034 method Methods 0.000 claims description 69
- 238000004590 computer program Methods 0.000 claims description 53
- 238000004364 calculation method Methods 0.000 claims description 28
- 238000013500 data storage Methods 0.000 claims description 13
- 230000004044 response Effects 0.000 claims description 6
- 238000004422 calculation algorithm Methods 0.000 description 56
- 238000010586 diagram Methods 0.000 description 14
- 230000003068 static effect Effects 0.000 description 12
- 238000013459 approach Methods 0.000 description 6
- 230000000875 corresponding effect Effects 0.000 description 6
- 238000013475 authorization Methods 0.000 description 4
- 238000004891 communication Methods 0.000 description 4
- 238000011156 evaluation Methods 0.000 description 4
- 238000011161 development Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 238000002360 preparation method Methods 0.000 description 2
- YGYGASJNJTYNOL-CQSZACIVSA-N 3-[(4r)-2,2-dimethyl-1,1-dioxothian-4-yl]-5-(4-fluorophenyl)-1h-indole-7-carboxamide Chemical compound C1CS(=O)(=O)C(C)(C)C[C@@H]1C1=CNC2=C(C(N)=O)C=C(C=3C=CC(F)=CC=3)C=C12 YGYGASJNJTYNOL-CQSZACIVSA-N 0.000 description 1
- 206010000210 abortion Diseases 0.000 description 1
- 230000002596 correlated effect Effects 0.000 description 1
- 238000013499 data model Methods 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 230000000779 depleting effect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000007726 management method Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 238000012856 packing Methods 0.000 description 1
- 238000007781 pre-processing Methods 0.000 description 1
- 230000001902 propagating effect Effects 0.000 description 1
- 230000001052 transient effect Effects 0.000 description 1
- 239000002699 waste material Substances 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/46—Multiprogramming arrangements
- G06F9/48—Program initiating; Program switching, e.g. by interrupt
- G06F9/4806—Task transfer initiation or dispatching
- G06F9/4843—Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
- G06F9/4881—Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5061—Partitioning or combining of resources
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/46—Multiprogramming arrangements
- G06F9/48—Program initiating; Program switching, e.g. by interrupt
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/46—Multiprogramming arrangements
- G06F9/48—Program initiating; Program switching, e.g. by interrupt
- G06F9/4806—Task transfer initiation or dispatching
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/46—Multiprogramming arrangements
- G06F9/48—Program initiating; Program switching, e.g. by interrupt
- G06F9/4806—Task transfer initiation or dispatching
- G06F9/4843—Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/46—Multiprogramming arrangements
- G06F9/48—Program initiating; Program switching, e.g. by interrupt
- G06F9/4806—Task transfer initiation or dispatching
- G06F9/4843—Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
- G06F9/485—Task life-cycle, e.g. stopping, restarting, resuming execution
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
- G06F9/5027—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
- G06F9/5027—Allocation 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/5038—Allocation 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 the execution order of a plurality of tasks, e.g. taking priority or time dependency constraints into consideration
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
- G06F9/5027—Allocation 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/505—Allocation 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 the load
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5061—Partitioning or combining of resources
- G06F9/5077—Logical partitioning of resources; Management or configuration of virtualized resources
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5083—Techniques for rebalancing the load in a distributed system
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2209/00—Indexing scheme relating to G06F9/00
- G06F2209/50—Indexing scheme relating to G06F9/50
- G06F2209/5013—Request control
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Stored Programmes (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Multi Processors (AREA)
Description
本出願は、2016年12月8日に出願された米国特許出願第62/431,505号に対する優先権を主張する。
データ処理グラフ224内のコンポーネントに関連付けられたレイアウト制約を考慮すると、第1のデータ処理コンポーネント226の2つのコンポーネントインスタンスが実行モジュール112の第1のホスト236上で実行され、第2のデータ処理コンポーネント228の3つのコンポーネントインスタンスが実行モジュール112上で実行され、第3のデータ処理コンポーネント230、第4のデータ処理コンポーネント232、および第5のデータ処理コンポーネント234の各々の少なくとも1つのコンポーネントインスタンスが実行モジュール112上で実行された場合にのみ、例示的なデータ処理グラフ224はうまく動作するか、または少しでも動作することができる。データ処理グラフの動作の成功は、全てのコンポーネントインスタンスが、データソース102からのデータに対して実行の失敗なく実行され、出力データを生成することで特徴付けることができる。
例えば、計算リソースをデータ処理グラフ224のために割り振ることへの1つのアプローチでは、リソース要求モジュール122はまず、第1の静的レイアウト型コンポーネント226および第2のFDL型コンポーネント228のために必要とされるコンピューティングリソースを要求する。本例では、リソースマネージャ120は、第1のコンポーネント226および第2のコンポーネント228のために必要とされる計算リソースを割り振ることができる。
図3を参照すると、リソース要求アルゴリズムが、リソース要求モジュール122によるなど、計算システム100によって実装されており、以下において、コンピュータプログラムの一例としてデータ処理グラフのために、およびプログラム部分の例としてデータ処理コンポーネントのために説明される。アルゴリズムはデータ処理コンポーネントの上述の枯渇を回避し、計算リソースを釣り合いのとれた様態でVDL型コンポーネントに公平且つ適切に割り振る。アルゴリズムは、データ処理グラフ224のデータ処理コンポーネント362およびデータソース102からのデータセット364を入力として受け入れ、入力を処理し、計算リソースをVDL型コンポーネント230、232、234に公平且つ適切に割り振り、VDL型コンポーネント230、232、234の計算リソースを枯渇させることを回避することを含む、データセット364からのデータの処理のために、計算リソースをデータ処理コンポーネント362に割り振る。第1ステップ370に先立つ1つ以上の前処理ステップがアルゴリズム内に任意選択的に含まれてもよく、(例えば、データ処理コンポーネントの各々に関連付けられたメタデータに基づき)データ処理グラフ224の受け入れられたデータ処理コンポーネント362内の任意の静的、FDLおよびVDLデータ処理コンポーネントを特定することを含み得る。
図4〜図14を参照すると、図3のアルゴリズムがデータ処理グラフ224の実行に備えて図1または図2のシステム100に適用される。図4を参照すると、アルゴリズムの第1ステップ370において、リソース要求モジュール122はデータ処理グラフ224のデータ処理コンポーネントを分析し、データ処理コンポーネントの各々のための計算リソース要件を決定する。第1ステップ370の結果、リソース要求モジュール122は、第1のデータ処理コンポーネント226の各コンポーネントインスタンスは計算リソースの5つのユニット237を必要とし、第2のデータ処理コンポーネント228の各コンポーネントインスタンスは計算リソースの3つのユニット237を必要とし、第3のデータ処理コンポーネント230の各コンポーネントインスタンスは計算リソースの4つのユニットを必要とし、第4のデータ処理コンポーネント232の各コンポーネントインスタンスは計算リソースの5つのユニット237を必要とし、第5のデータ処理コンポーネント234の各コンポーネントインスタンスは計算リソースの2つのユニット237を必要とすると決定する。
複数のプログラム部分のプログラム部分ごとに、コンピュータプログラムが動作するべく計算システムによって実行されるために必要とされるプログラム部分の1つ以上のインスタンスの目標数を決定すること(1001)と、
複数のプログラム部分のプログラム部分ごとに、プログラム部分を分析し、プログラム部分の必要とされる1つ以上のインスタンスを実行するために必要とされる計算リソースの目標量を決定すること(1002)であって、複数のプログラム部分のうちの少なくとも1つのプログラム部分は第1の型のものであり、複数のプログラム部分のうちの異なる少なくとも1つのプログラム部分は、第1の型とは異なる第2の型のものである、決定すること(1002)と、
複数のプログラム部分のプログラム部分ごとに、プログラム部分を、現在の、もしくは更新された充足率に関連付けること(1003)、および/または維持することであって、充足率は、計算リソースマネージャモジュールによってそれぞれのプログラム部分に割り振られたか、または割り振られたとこれまで見なされる、それぞれのプログラム部分の、計算リソースの決定された目標量の度合いであり、
複数のプログラム部分のうちのプログラム部分は、その関連充足率が複数のプログラム部分の全てのプログラム部分にわたって関連充足率の最小値に等しい場合には、最小充足セットのメンバである、関連付けること(1003)、および/または維持することと、
計算リソースの複数の要求を計算リソースマネージャモジュールへ提出すること(1004)であって、複数の要求は、
第1の型のプログラム部分ごとに、第1の型のプログラム部分のために決定された完全な目標量の計算リソースを求める、関連付けられた第1次優先順位を有する、第1の要求、ならびに
第2の型のプログラム部分ごとに、第2の型のプログラム部分のために決定された完全な決定された目標量未満の計算リソースを求める、ただし、少なくとも、第2の型のプログラム部分の必要とされるインスタンスのうちの単一のものに関連付けられた量の計算リソースを求める、関連付けられた第2次優先順位を有する、第2の要求、ならびに
1つ以上の第3の要求であって、第3の要求の各々は、関連付けられた第3次優先順位を有し、最小充足セットのメンバである第2の型の1つのプログラム部分のために提出され、各第3の要求は以下の量の計算リソースを求めるものであり、その量とは、この量の計算リソースが第2の型の1つのプログラム部分に割り振られたか、または割り振られたと見なされた後には、最小充足セット内のメンバである複数のプログラム部分の各プログラム部分が、第3の要求において要求されたこの量の計算リソースが割り振られたか、または割り振られたと見なされる前における、最小充足セット内のメンバである1つ以上のプログラム部分についての充足率よりも大きく、且つ依然として1よりも小さい充足率を有することになるというものである、1つ以上の第3の要求、
を含む、提出すること(1004)と、
利用可能な計算リソースに基づいて計算リソースマネージャモジュールによって許可された、複数の要求のうちのそれらの1つ以上の要求において要求されたとおりの複数のプログラム部分のうちのプログラム部分への計算リソースの割り振り、または見なされた割り振りの指示を受信すること(1005)であって、第1次優先順位、第2次優先順位、および第3次優先順位は評価制約を規定し、この評価制約に従って、(i)1つ以上の第1の要求、1つ以上の第2の要求、および1つ以上の第3の要求が、第2の要求の前に第1の要求、および第3の要求の前に第2の要求の順序で計算リソースマネージャモジュールによる許可のために評価され、(ii)第1、第2、および第3の要求は、複数の要求のうちの、より高い優先順位を有し、および/または以前に提出された1つ以上の要求が全て順番に計算リソースマネージャによって許可された場合にのみ、計算リソースマネージャモジュールによる許可のために評価されるようになる、受信すること(1005)と、
を含む方法である。
上述された計算リソース割り振りアプローチは、例えば、好適なソフトウェア命令を実行するプログラム可能計算システムを用いて実施することができるか、あるいはそれは、フィールドプログラマブルゲートアレイ(FPGA)などの好適なハードウェアにおいて、または何らかのハイブリッド形態で実施することができる。例えば、プログラムされたアプローチでは、ソフトウェアは、少なくとも1つのプロセッサ、(揮発性および/または不揮発性メモリおよび/または記憶要素を含む)少なくとも1つのデータ記憶システム、(少なくとも1つの入力デバイスもしくはポートを用いて入力を受信するため、および少なくとも1つの出力デバイスもしくはポートを用いて出力を提供するための)少なくとも1つのユーザインターフェースを各々含む、(分散型、クライアント/サーバ型、またはグリッド型などの様々なアーキテクチャのものであり得る)1つ以上のプログラムされた、またはプログラム可能な計算システム上で実行する1つ以上のコンピュータプログラム内の手続きを含み得る。ソフトウェアは、例えば、データ処理グラフの設計、構成、および実行に関連するサービスを提供する、より大きなプログラムの1つ以上のモジュールを含み得る。プログラムのモジュール(例えば、データ処理グラフの要素)は、データリポジトリ内に記憶されたデータモデルに適合するデータ構造またはその他の編成データとして実装されることが可能である。
Claims (20)
- 計算リソースマネージャから、複数のプログラム部分を有するコンピュータプログラムを計算システム内で実行するための計算リソースを要求するための方法であって、前記方法は、
前記プログラム部分のうちのそれぞれのものに関連付けられた計算リソースの目標量についての情報を記憶することであって、各プログラム部分は、そのプログラム部分が前記計算システム内で実行されることを可能にする、前記計算リソースマネージャによって許可された、許可された計算リソースを用いる、記憶することと、
要求を計算することであって、前記要求は、要求の複数のセットとして前記計算リソースマネージャへ提出するための、前記コンピュータプログラムを前記計算システム内で実行するための計算リソースを求めるものであり、要求の各セットは、要求の初期セットを除いて、要求の前記複数のセットのうちの以前に提出された1つ以上のセットが、前記計算リソースマネージャによって前記複数のプログラム部分による使用のために許可された場合にのみ、前記計算リソースマネージャによって処理されることになる、計算することと、
を含み、前記計算することは、
要求の前記初期セットを形成すること、および
要求の前記初期セットの後に前記計算リソースマネージャによる処理のための要求の1つ以上の追加のセットを形成すること、
を含み、
要求の前記追加のセットのうちの要求の少なくとも1つのセットが、1つ以上のプログラム部分の最小充足セット内にある前記複数のプログラム部分のうちの少なくとも1つのプログラム部分のための部分要求を含み、
前記複数のプログラム部分の各プログラム部分が、各プログラム部分の、以前に要求された計算リソースの量を、各プログラム部分の、計算リソースの関連目標量で除した、それぞれの充足率に関連付けられ、
プログラム部分は、その関連充足率が前記複数のプログラム部分の全てにわたって前記関連充足率の最小値である場合には、前記最小充足セットのメンバであり、
前記部分要求は、前記部分要求が許可された後には、前記最小充足セット内の各プログラム部分が、前記部分要求が許可される前の前記最小充足セット内の前記1つ以上のプログラム部分の各々についての前記充足率より大きく、且つ依然として1より小さい充足率
を有することになるような量の計算リソースを要求する、
前記方法。 - 前記部分要求が、前記部分要求が許可された後には、前記最小充足セット内の各プログラム部分が、前記最小充足セットのメンバでない少なくとも1つのプログラム部分の充足率より依然として小さい充足率を有することになるような量以下である量の計算リソースを要求する、請求項1に記載の方法。
- 前記部分要求が、前記部分要求が許可された後には、前記最小充足セット内の各プログラム部分が、前記最小充足セットのメンバでない少なくとも1つのプログラム部分の充足率と少なくとも同じ大きさである充足率を有することになるような量以上である量の計算リソースを要求する、請求項1に記載の方法。
- 前記部分要求が、前記部分要求が許可された後には、前記最小充足セット内の各プログラム部分が、前記最小充足セットのメンバでない少なくとも1つのプログラム部分の充足率と少なくとも同じ大きさである充足率を有することになるような量以上である量の計算リソースを要求する、請求項1に記載の方法。
- 要求の前記初期セットがプログラム部分ごとの最小要求を含み、各最小要求は、前記プログラムの対応する部分を実行するために必要とされる最小量の計算リソースを要求する、請求項1〜4のいずれか一項に記載の方法。
- 前記プログラム部分のうちの少なくとも1つが計算リソースの固定目標量に関連付けられ、前記プログラム部分のうちの少なくとも1つが計算リソースの可変目標量に関連付けられ、計算リソースの前記固定目標量に関連付けられたプログラム部分ごとの前記最小要求が、計算リソースの完全な目標量に対応する全要求であり、計算リソースの前記可変目標量に関連付けられたプログラム部分ごとの前記最小要求が、計算リソースの前記完全な目標量未満に対応する部分要求である、請求項5に記載の方法。
- 計算リソースの可変目標量に関連付けられたプログラム部分ごとの前記最小要求が、計算リソースの単一のユニットに対応する部分要求であり、計算リソースの各可変目標量は、計算リソースの前記完全な目標量を等しいサイズの複数のユニットに分割する計算リソースの細分性を単位として規定される、請求項6に記載の方法。
- 要求の少なくとも1つのセット内の少なくともいくつかの要求が、互いに異なるサイズの計算リソースの量に対応する、請求項1〜7のいずれか一項に記載の方法。
- 前記複数のプログラム部分のうちのそれぞれのものに関連付けられた計算リソースの目標量を指定する前記情報を記憶することが、少なくとも1つのプログラム部分について、ユーザ入力に少なくとも部分的に基づいて、前記少なくとも1つのプログラム部分の、計算リソースの関連目標量を決定することを含む、請求項1〜8のいずれか一項に記載の方法。
- 前記計算リソースが複数の計算ノードにわたって分散している、請求項1〜9のいずれか一項に記載の方法。
- 前記プログラム部分のうちの少なくともいくつかが、それらの許可された計算リソースが前記複数の計算ノードのうちの特定の1つ以上の計算ノードから得られることを必要とする、請求項10に記載の方法。
- 要求の前記複数のセットの要求の各セットの各要求に関連付けられた計算リソースが、前記複数の計算ノードのうちの単一の計算ノードから得られなければならない、請求項10に記載の方法。
- 前記プログラム部分のうちの少なくともいくつかが、1つ以上のデータソースからのデータ項目を処理するように構成されており、前記方法が、前記1つ以上のデータソースからの前記データ項目に少なくとも部分的に基づいて前記プログラム部分の各々のための計算リソースの前記目標量を決定することをさらに含む、請求項1〜12のいずれか一項に記載の方法。
- 前記1つ以上のデータソースからの前記データ項目に少なくとも部分的に基づいて前記プログラム部分の各々のための計算リソースの前記目標量を決定することが、プログラム部分ごとに、前記プログラム部分の単一のインスタンスに関連付けられた計算リソースを、前記プログラム部分によって処理されるべきデータ項目ごとの前記プログラム部分に関連付けられた計算リソースの前記目標量に加算することを含む、請求項13に記載の方法。
- 要求の前記複数のセットの要求の各セットの各要求が、前記複数のプログラム部分のうちの特定のプログラム部分の単一のインスタンスによって必要とされる計算リソースを要求する、請求項1〜14のいずれか一項に記載の方法。
- 前記複数のプログラム部分のうちの第1のプログラム部分が、要求の前記複数のセットからの複数の要求に関連付けられる、請求項1〜15のいずれか一項に記載の方法。
- 要求の前記初期セットに応答して、要求の前記初期セットのうちの1つ以上の要求が充足されなかったとの指示を受信し、前記応答に基づいて前記プログラムの実行を中止することをさらに含む、請求項1〜16のいずれか一項に記載の方法。
- 計算リソースマネージャから、計算システム内で、複数のプログラム部分を有するコンピュータプログラムを実行するための計算リソースを要求するためのソフトウェアを記憶するコンピュータ可読媒体であって、前記ソフトウェアは、前記計算システムに請求項1〜17のいずれか一項に記載の方法を遂行させるための命令を含む、コンピュータ可読媒体。
- 計算リソースマネージャから、複数のプログラム部分を有するプログラムを計算システム内で実行するための計算リソースを要求するための前記計算システムであって、前記計算システムは、
前記プログラム部分のうちのそれぞれのものに関連付けられた計算リソースの目標量を指定する情報を記憶するデータ記憶システムと、
請求項1〜17のいずれか一項に記載の方法を遂行するように構成された少なくとも1つのプロセッサと、
を含む、計算システム。 - 計算リソースマネージャから、前記計算システム内で、複数のプログラム部分を有するコンピュータプログラムを実行するための計算リソースを要求するためのプログラムであって、前記プログラムは、前記計算システムに請求項1〜17のいずれか一項に記載の方法を遂行させるための命令を含む、前記プログラム。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201662431505P | 2016-12-08 | 2016-12-08 | |
US62/431,505 | 2016-12-08 | ||
PCT/US2017/064849 WO2018106772A1 (en) | 2016-12-08 | 2017-12-06 | Computational resource allocation |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2020502641A JP2020502641A (ja) | 2020-01-23 |
JP6825103B2 true JP6825103B2 (ja) | 2021-02-03 |
Family
ID=61656329
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2019528471A Active JP6825103B2 (ja) | 2016-12-08 | 2017-12-06 | 計算リソース割り振り |
Country Status (7)
Country | Link |
---|---|
US (2) | US10445137B2 (ja) |
EP (1) | EP3552104B1 (ja) |
JP (1) | JP6825103B2 (ja) |
CN (1) | CN110050261B (ja) |
AU (1) | AU2017373882B2 (ja) |
CA (1) | CA3043974C (ja) |
WO (1) | WO2018106772A1 (ja) |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109697121B (zh) * | 2017-10-20 | 2023-05-05 | 伊姆西Ip控股有限责任公司 | 用于向应用分配处理资源的方法、设备和计算机可读介质 |
CN109697115B (zh) * | 2017-10-20 | 2023-06-06 | 伊姆西Ip控股有限责任公司 | 用于调度应用的方法、装置以及计算机可读介质 |
CN112567470B (zh) * | 2018-08-28 | 2024-09-20 | 诺和诺德股份有限公司 | 用于提供基于药物剂量指导的容器以治疗糖尿病的系统和方法 |
US11836505B2 (en) | 2019-05-07 | 2023-12-05 | Ab Initio Technology Llc | Dynamic distribution of container images |
CN112073498B (zh) * | 2020-09-01 | 2022-09-09 | 北京字节跳动网络技术有限公司 | 一种资源分配方法及装置 |
WO2022118369A1 (ja) * | 2020-12-01 | 2022-06-09 | 日本電信電話株式会社 | 計算資源クラスタ管理装置、計算資源クラスタ管理方法、および、計算資源クラスタ管理プログラム |
WO2022256638A1 (en) * | 2021-06-04 | 2022-12-08 | Ab Initio Technology Llc | Dynamic computational resource allocation |
CN113535333A (zh) * | 2021-08-12 | 2021-10-22 | 北京字节跳动网络技术有限公司 | Yarn集群资源调度方法、系统、介质和计算机设备 |
Family Cites Families (20)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5966072A (en) | 1996-07-02 | 1999-10-12 | Ab Initio Software Corporation | Executing computations expressed as graphs |
US7051188B1 (en) | 1999-09-28 | 2006-05-23 | International Business Machines Corporation | Dynamically redistributing shareable resources of a computing environment to manage the workload of that environment |
US7234144B2 (en) * | 2002-01-04 | 2007-06-19 | Microsoft Corporation | Methods and system for managing computational resources of a coprocessor in a computing system |
US8095620B2 (en) * | 2002-06-13 | 2012-01-10 | Elbit Systems Land and C41-Tadiran Ltd. | System and method for dynamic allocation of a resource |
US7970902B2 (en) | 2004-03-19 | 2011-06-28 | Hewlett-Packard Development Company, L.P. | Computing utility policing system and method using entitlement profiles |
US7584281B2 (en) | 2005-06-07 | 2009-09-01 | Datasynapse, Inc. | Method for allocating shared computing infrastructure for application server-based deployments |
US7716630B2 (en) | 2005-06-27 | 2010-05-11 | Ab Initio Technology Llc | Managing parameters for graph-based computations |
US20120246695A1 (en) * | 2009-05-08 | 2012-09-27 | Alexander Cameron | Access control of distributed computing resources system and method |
US9210040B2 (en) * | 2009-09-03 | 2015-12-08 | C3Dna | Apparatus and methods for cognitive containters to optimize managed computations and computing resources |
US8935702B2 (en) * | 2009-09-04 | 2015-01-13 | International Business Machines Corporation | Resource optimization for parallel data integration |
US8565407B1 (en) * | 2009-11-23 | 2013-10-22 | Amazon Technologies, Inc. | Systems and methods for allocation of telephony resources on-demand |
US8661120B2 (en) * | 2010-09-21 | 2014-02-25 | Amazon Technologies, Inc. | Methods and systems for dynamically managing requests for computing capacity |
US8533724B1 (en) * | 2010-12-20 | 2013-09-10 | Amazon Technologies, Inc. | Virtual resource provisioning by assigning colors to virtual resources in multi-tenant resource pool |
US9515899B2 (en) * | 2012-12-19 | 2016-12-06 | Veritas Technologies Llc | Providing optimized quality of service to prioritized virtual machines and applications based on quality of shared resources |
US9183016B2 (en) | 2013-02-27 | 2015-11-10 | Vmware, Inc. | Adaptive task scheduling of Hadoop in a virtualized environment |
US10193963B2 (en) | 2013-10-24 | 2019-01-29 | Vmware, Inc. | Container virtual machines for hadoop |
US9727379B1 (en) * | 2014-04-14 | 2017-08-08 | Google Inc. | Specifying behavior among a group of computing tasks |
US9413626B2 (en) * | 2014-12-05 | 2016-08-09 | Amazon Technologies, Inc. | Automatic management of resource sizing |
WO2017026929A1 (en) * | 2015-08-07 | 2017-02-16 | Telefonaktiebolaget Lm Ericsson (Publ) | Method and arrangement for requesting of resources |
US10642652B2 (en) | 2016-01-29 | 2020-05-05 | Peter P. Nghiem | Best trade-off point on an elbow curve for optimal resource provisioning and performance efficiency |
-
2017
- 2017-12-06 WO PCT/US2017/064849 patent/WO2018106772A1/en unknown
- 2017-12-06 AU AU2017373882A patent/AU2017373882B2/en active Active
- 2017-12-06 EP EP17851914.6A patent/EP3552104B1/en active Active
- 2017-12-06 JP JP2019528471A patent/JP6825103B2/ja active Active
- 2017-12-06 CN CN201780075655.7A patent/CN110050261B/zh active Active
- 2017-12-06 US US15/833,213 patent/US10445137B2/en active Active
- 2017-12-06 CA CA3043974A patent/CA3043974C/en active Active
-
2019
- 2019-09-17 US US16/572,756 patent/US20200257556A1/en not_active Abandoned
Also Published As
Publication number | Publication date |
---|---|
EP3552104B1 (en) | 2021-06-23 |
CA3043974C (en) | 2021-11-09 |
US20180165129A1 (en) | 2018-06-14 |
CN110050261A (zh) | 2019-07-23 |
CN110050261B (zh) | 2022-11-25 |
EP3552104A1 (en) | 2019-10-16 |
US20200257556A1 (en) | 2020-08-13 |
AU2017373882B2 (en) | 2020-04-02 |
US10445137B2 (en) | 2019-10-15 |
AU2017373882A1 (en) | 2019-05-30 |
WO2018106772A1 (en) | 2018-06-14 |
JP2020502641A (ja) | 2020-01-23 |
CA3043974A1 (en) | 2018-06-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6825103B2 (ja) | 計算リソース割り振り | |
Panda et al. | Normalization-based task scheduling algorithms for heterogeneous multi-cloud environment | |
Cai et al. | Elasticsim: A toolkit for simulating workflows with cloud resource runtime auto-scaling and stochastic task execution times | |
US10083060B2 (en) | System for error checking of process definitions for batch processes | |
US9495200B2 (en) | System for partitioning batch processes | |
Ruiz-Alvarez et al. | Toward optimal resource provisioning for cloud mapreduce and hybrid cloud applications | |
JP2020520519A (ja) | 計算プロセスの動的並列化 | |
Lim et al. | Engineering resource management middleware for optimizing the performance of clouds processing MapReduce jobs with deadlines | |
Baresi et al. | Fine-grained dynamic resource allocation for big-data applications | |
Tchernykh et al. | Mitigating uncertainty in developing and applying scientific applications in an integrated computing environment | |
Copil et al. | rSYBL: a framework for specifying and controlling cloud services elasticity | |
Thomadakis et al. | Toward runtime support for unstructured and dynamic exascale-era applications | |
Choudhary et al. | A novel strategy for deterministic workflow scheduling with load balancing using modified min-min heuristic in cloud computing environment | |
Fan et al. | VM instance selection for deadline constraint job on agent-based interconnected cloud | |
Geetha et al. | Hadoop scheduler with deadline constraint | |
Ghose et al. | FGFS: Feature Guided Frontier Scheduling for SIMT DAGs | |
KR20240011840A (ko) | 동적 계산 리소스 할당 | |
Nirmalan et al. | Survey on Map Reduce Scheduling Algorithms in Hadoop Heterogeneous Environments | |
Youn et al. | Cost adaptive workflow resource broker in cloud | |
Li et al. | Resource availability-aware advance reservation for parallel jobs with deadlines | |
Yu | Right-sizing resource allocations for scientific applications in clusters, grids, and clouds | |
Verma | A Novel survey on Scheduling Algorithms on CloudSim in Cloud Environment | |
Zheng et al. | Business process oriented platform-as-a-service framework for process instances intensive applications | |
Pulamolu et al. | DESIGN OF COMPREHENSIVE FRAMEWORK ON OPTIMIZATION METHODS IN DISTRIBUTED CLUSTERS | |
Domanal | Bio-Inspired QOS Aware Resources Allocation and Management at the Cloud Data Center |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20190628 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20190628 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20200907 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20201204 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20210106 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20210113 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6825103 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |