JP2012504800A - 異種コンピューティング・システムにおいて実行するためのアプリケーションのスケジューリング - Google Patents

異種コンピューティング・システムにおいて実行するためのアプリケーションのスケジューリング Download PDF

Info

Publication number
JP2012504800A
JP2012504800A JP2011529417A JP2011529417A JP2012504800A JP 2012504800 A JP2012504800 A JP 2012504800A JP 2011529417 A JP2011529417 A JP 2011529417A JP 2011529417 A JP2011529417 A JP 2011529417A JP 2012504800 A JP2012504800 A JP 2012504800A
Authority
JP
Japan
Prior art keywords
task
processor
energy consumption
scheduling
completion time
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2011529417A
Other languages
English (en)
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
Priority claimed from AU2008905162A external-priority patent/AU2008905162A0/en
Application filed by ザ ユニバーシティ オブ シドニー filed Critical ザ ユニバーシティ オブ シドニー
Publication of JP2012504800A publication Critical patent/JP2012504800A/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • G06F1/3234Power saving characterised by the action undertaken
    • G06F1/329Power saving characterised by the action undertaken by task scheduling
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • G06F1/3234Power saving characterised by the action undertaken
    • G06F1/3293Power saving characterised by the action undertaken by switching to a less power-consuming processor, e.g. sub-CPU
    • 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/5038Allocation 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
    • 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/5094Allocation of resources, e.g. of the central processing unit [CPU] where the allocation takes into account power or heat criteria
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2209/00Indexing scheme relating to G06F9/00
    • G06F2209/50Indexing scheme relating to G06F9/50
    • G06F2209/506Constraint
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Power Sources (AREA)

Abstract

本発明は、高性能コンピュータ・システムにおいて、順序制約のある並列タスクから成るアプリケーションをスケジュールすることに関する。コンピュータ・システムは、各々が異なる電圧供給レベルで動作可能な複数のプロセッサを有する。まず、タスクの計算コスト及び通信コストに基づき、タスクの優先順位が決定される。次に、タスクの優先順位に基づき、各タスクにプロセッサ及び電圧レベルの両方を割り当てるが、プロセッサ及び電圧レベルは、プロセッサ及び電圧レベルの異なる組合せにおいて、タスクを実行するためのエネルギ消費及び完了時間と比較した場合に、タスクを実行するためのエネルギ消費及び完了時間を実質的に最小化する。本発明の利点は、スケジューリングが完了時間(メイクスパン)だけでなく、エネルギ消費も考慮することである。本発明の態様は、方法、ソフトウェア、コンピュータのスケジューリング・モジュール、及びスケジュールを含む。

Description

本発明は、異種コンピューティング・システム(a heterogeneous computing system)において実行するためにアプリケーションをスケジュールすることに関する。詳細には、ただし限定することなく、本発明は、各々が異なる電圧供給レベルで動作可能な複数のプロセッサから成るマルチプロセッサ・コンピュータ・システムにおいて、順序制約のある並列タスク(precedence constrained parallel tasks)から成るアプリケーションをスケジュールすることに関する。本発明の態様は、方法、ソフトウェア、コンピュータのスケジューリング・モジュール、およびスケジュールを含む。
過去数十年にわたる計算量およびデータ量の激しい増加が、性能の向上に注力するよう、コンピュータ・アーキテクチャの研究者および設計者を促してきた。その結果、マルチコア・マイクロプロセッサ、大容量記憶デバイス、および超高速通信デバイスなど、リソース集約的(resource−intensive technologies)な技術が開発された。これらの強力なリソースの効率的な使用は、数十万もの多数のプロセッサが存在する、たとえばグリッドおよびクラウドなどのマルチプロセッサ・コンピュータ・システム(MCS:multiprocessor computer system)にとっては特に、常に重要な問題であった。
科学分野および工学分野における順序制約のある並列アプリケーションは、最も一般的なアプリケーション・モデルであるので、同種および異種のコンピューティング・システムにおいて、これらのアプリケーションをスケジュールする問題(タスク・スケジューリング)が、過去数十年にわたって広範に研究されてきた。しかし、タスク・スケジューリングにおけるほとんどの努力は、アプリケーション完了時間(メイクスパン/スケジュール長)の最小化および時間計算量の最小化という、2つの問題に集中されてきた。言い換えると、タスク・スケジューリング・アルゴリズムの主な目的は、最小量のスケジューリング時間で、与えられたアプリケーションの最適なスケジュールを生成することである。
特に高性能コンピューティング・システム(HPCS:high−performance computing system)における、スケジューリングの際のエネルギー消費に多くの注意が払われるようになったのは、つい最近のことである。これらHPCSにおけるエネルギー消費問題は、様々な金銭的、環境的、およびシステムの性能的な懸念をもたらす。サーバによる電力消費に関する最近の研究(非特許文献2)は、関連する冷却設備および補助装置を含む、世界中のサーバの電気使用コストが、2005年には、72億米ドルであったことを示している。同研究は、その年の電気消費が、2000年の電気消費と比較して、2倍であったことも指摘している。明らかに、発電が絡んだ環境問題が存在する。
今日のインテル社製Itanium 2プロセッサに集積されるトランジスタの数は、約10億に達している。この比率が継続した場合、将来のインテル社製プロセッサによって生成される(平方センチメートル当たりの)熱は、太陽表面の同じ面積当たりの熱を超過する(非特許文献3)。このことは、システムの信頼性を悪化させ、最終的に貧弱なシステム性能をもたらす可能性を暗示している。
H. Topcuouglu, S. Hariri,およびM. −Y. Wu, Performance−Effective and Low− Complexity Task Scheduling for Heterogeneous Computing, IEEE Trans. Parallel Distrib. Syst,第13巻,第3,260から274頁,2002年 J. G. Koomey, Estimating total power consumption by servers in the U.S. and the world G. Koch, Discovering multi−core: extending the benefits of Moore’s law,Technology@Intel Magazine,2005年7月(http://www.intel.com/technology/magazine/computmg/multi−core−0705.pdf) M.R. GareyおよびD.S. Johnson, Computers and Intractability: A Guide to the Theory of NP−Completeness, W.H. Freeman and Co.,238から239頁,1979年 D. Bozdag, U. CatalyurekおよびF. Ozguner, A task duplication based bottom−up scheduling algorithm for heterogeneous environments, Proc. Int’l Parallel and Distributed Processing Symp.,2005年4月 M.−Y. WuおよびD.D. Gajski, Hypertool: A Programming Aid for Message−Passing Systems, IEEE Trans. Parallel and Distributed Systems,第1巻,第3,330から343頁,1990年7月 R.E. Lord, J. S. Kowalik,およびS. P. Kumar, Solving Linear Algebraic Equations on an MIMD Computer, J. ACM,第30巻,第1,103から117頁,1983年1月 T.H. Gormen, CE. Leiserson, and RX. Rivest, Introduction to Algorithms, MIT Press,1990年
第1の態様では、本発明は、アプリケーションが、2つ以上の順序制約のある並列タスクから成り、異種コンピューティング・システムが、各々が異なる電圧供給レベルで動作可能な複数のプロセッサから成り、タスクの計算コストおよび通信コストに基づいて、タスクの優先順位を決定するステップと、タスクの優先順位の順に、各タスクにプロセッサおよび電圧レベルの両方を割り当てるステップであって、プロセッサおよび電圧レベルの異なる組み合わせにおいて、そのタスクを実行するためのエネルギー消費および完了時間を比較した場合に、プロセッサおよび電圧レベルが、そのタスクを実行するためのエネルギー消費および完了時間を実質的に最小化するステップとを含む、異種コンピューティング・システムにおいて実行するためのアプリケーションをスケジュールするための方法を提供する。
本発明の利点は、スケジューリングが、完了時間(メイクスパン)ばかりでなく、エネルギー消費も考慮することである。本発明は、完了時間とエネルギー消費の両方のバランスをとる方法で、優先順序順に、特定の電圧レベルにあるプロセッサにタスクを割り当てるために、異種ネットワークの一部を形成するプロセッサの異なるキャパシティを考慮することができる。
タスク、プロセッサ、および電圧レベルの異なる組み合わせについて、実質的に最小化することがエネルギー消費および完了時間の両方を示すファクタを決定することを含むことができる。ファクタは、複数のファクタから成ることができる。
これは、エネルギー消費の最小化と完了時間の最小化との間の実質的に最良のトレードオフを示すファクタを有する割り当てのための組み合わせを選択することを含むことができる。
エネルギー消費を示すファクタを決定することが、その組み合わせの電圧レベルにおける、そのタスクの計算コストに基づくことができる。
完了時間を示すファクタを決定することが、その組み合わせのプロセッサおよび電圧レベルにおける、そのタスクの計算コストに基づくことができる。
完了時間を示すファクタを決定することは、その組み合わせのプロセッサおよび電圧レベルにおける、そのタスクの推定開始時刻と計算コストとの和に基づくことができる。
推定開始時刻が、そのタスクに先行する最も影響力の大きいタスクの推定終了時刻と、適切な場合は、最も影響力の大きいタスクに割り当てられたプロセッサおよびその組み合わせのプロセッサの間の通信コストとに基づくことができる。
完了時間を示すファクタを決定することが、より長いタスク完了時間をもたらすプロセッサおよび電圧レベルの組み合わせにおけるタスクにペナルティを課すことを含むことができる。
本方法は、各タスクについて、プロセッサおよび電圧レベルの異なる組み合わせにおいて、タスクのためのエネルギー消費および計算時間を決定するステップと、ある組み合わせについて、決定された計算時間が、アプリケーションのメイクスパンの増加を引き起こさず、かつ、決定されたエネルギー消費が、割り当てられたプロセッサおよび割り当てられた電圧におけるタスクのエネルギー消費よりも小さい場合、タスクをプロセッサおよび電圧レベルのその組み合わせに割り当て直すステップと、をさらに含むことができる。本発明のこの実施形態の利点は、メイクスパンの増加を伴わずに、エネルギー消費のさらなる低減をもたらすかどうかを識別するために、スケジュールに対する何らかの変更がスケジュールを評価できることである。
各タスクの優先順位は、タスクがその一部である順序制約のあるタスクの最長経路に沿った、各タスクの計算コストおよび通信コストにそれぞれ基づくことができる。各タスクの優先順位が、タスクのbレベルまたはtレベルに基づくことができる。
本方法は、スケジューリングに従ってタスクを実行するステップをさらに含むことができる。
異種コンピューティング・システムが、高性能コンピューティング・システムなどのマルチプロセッサ・コンピューティング・システムであり、タスクは、異種的とすることができる。
さらなる態様では、本発明は、上述の方法を実行するようにコンピュータを動作させる、コンピュータ読み取り可能な媒体に記録されたコンピュータ命令を含むソフトウェアを提供する。
さらに別の態様では、本発明は、上述の方法から生成される異種コンピューティング・システムにおいて、アプリケーションを実行するためのスケジュールを提供する。
別の態様では、本発明は、アプリケーションが、2つ以上の順序制約のある並列タスクから成り、異種コンピューティング・システムが、各々が異なる電圧供給レベルで動作可能な複数のプロセッサから成り、スケジューリング・モジュールが、タスクの優先順位を各タスクの計算コストおよび通信コストに基づいて決定することと、各タスクについて、タスクの優先順位に従って、タスクにプロセッサおよび電圧レベルの両方を割り当てることであって、タスクをプロセッサおよび電圧レベルの異なる組み合わせに割り当てることを比較した場合に、そのプロセッサおよび電圧レベルが、タスクを実行するためのエネルギー消費および完了時間を実質的に最小化するように割り当てることを行うように動作可能である、異種コンピューティング・システムにおいて実行するためのアプリケーションをスケジュールするためのスケジューリング・システムを提供する。
本発明の一例を図面を参照して説明する。
本例で使用される電圧−相対速度ペアを示す表である。 本例で使用されるアプリケーションの簡単なタスク・グラフを示す図である。 図1に示されたタスクのtレベルおよびbレベルのタスク優先順位を示す表である。 図1に示されたタスクの計算コストを示す表である。 本例のエネルギー・モードを示す図である。 本例のエネルギー・コンシャス・スケジューリング(ECS:energy conscious scheduling)の方法を示し、メイクスパン保存エネルギー低減(MCER:makespan−conservative energy reduction)を含む図である。 (a)および(b)は、それぞれHEFTアルゴリズムおよびDBUSアルゴリズム(従来技術)によって生成された、図1のタスク・グラフのためのスケジュールを概略的に示す図である。 (a)MCERを用いないECSが使用される本例、および(b)MCERを用いるECSが使用される本例において生成された、図1のタスク・グラフのためのスケジュールを概略的に示す図である。 (a)MCERを用いないECS+idleが使用される本例、および(b)MCERを用いるECS+idleが使用される本例において生成された、図1のタスク・グラフのためのスケジュールを概略的に示す図である。 図7、図8、および図9の6つの異なる方法によって生成されたスケジュールのエネルギー消費を比較した表である。 以下で詳述される実験において使用されるパラメータを要約した表である。 以下で詳述される実験の比較結果を示す表である。
本例では、コンピュータ・クラスタを形成する50個の異種プロセッサを説明する。プロセッサは、異なる電圧供給レベルで動作することができ、棚に積み重ねられたプロセッサのように、高帯域幅の接続を使用して、一様またはランダムな方法で相互に接続される。コンピュータ・クラスタは、例えば、大規模なデータセットにおける複数のパターン・マッチング解析など、複数の順序制約のある並列可能なタスクから成るアプリケーションの実行を受け持っている。本例では、各タスクについての事前情報が知られており、アプリケーションの性能は、リアルタイムの期限(real−time deadlines)に基づいていない。
本明細書においてスケジューリング・システムとして知られる1つのプロセッサが、スケジュールの生成を受け持っている。スケジューリング・システムは、クラスタの一部を形成することができ、またはクラスタに追加することができる。スケジューリング・システムは、プロセッサ、各プロセッサの可能な電圧レベル、およびタスクについての情報を受け取り、保存することができ、この情報を使用して、以下で説明される方法でスケジュールを生成することができる。スケジューリング・システムはまた、各プロセッサにスケジュールのそれぞれの部分を受け取らせる。すなわち、生成されたスケジュールは、タスクを特定のプロセッサおよび電圧に割り当てる。各タスクは、タスク、そのタスクに割り当てられた電圧レベル、および実行のための時間についての情報を、スケジューリング・システムから直接的または間接的に受け取る。
本例では、メイクスパンばかりでなく、エネルギー消費も考慮する、エネルギー・コンシャス・スケジューリング(ECS:energy conscious scheduling)ヒューリスティックが説明される。このヒューリスティックは、事前予約および周波数−電圧ペアの様々な組を使用して、疎結合のHPCSに容易に適用することができる。ECSは、エネルギー消費を低減するために、動的電圧スケーリング(DVS:dynamic voltage scaling)を組み込むように考案されている。これは、スケジュール(メイクスパン)の質とエネルギー消費の間にトレードオフ(a trade−off)が存在することを意味する。
ECSは、これら2つの性能上の留意事項のバランスをとりながら、このトレードオフに効果的に対処する。さらに、MCER技法を使用するエネルギー低減フェーズが、ECSに組み込まれる。MCERフェーズでは、スケジューリング・フェーズで生成された現在のスケジュールが精査され、そのスケジュールに対する何らかの変更が、メイクスパンの増加を伴わずに、エネルギー消費をさらに低減するかどうかが識別される。ECSの低い時間計算量にも注目すべきである。
今から、本例で使用される、システム・モデル、アプリケーション・モデル、エネルギー・モデル、およびスケジューリング・モデルについて説明する。
〔システム・モデル〕
本研究において使用される対象システムは、完全に相互接続されたp個の異種プロセッサ/マシンの集合Pから成る。各プロセッサp∈Pは、DVS対応であり、言い換えると、各プロセッサは、異なるVSL(すなわち異なるクロック周波数)で動作することができる。各プロセッサp∈Pについて、v個のVSLの集合Vは、VSLの4つの異なる組の間にランダムおよび一様に分布させられる(図1を参照)。プロセッサは、アイドリング中もエネルギーを消費し、最低電圧が供給されると仮定されるのは、プロセッサがアイドリングしているときである。クロック周波数遷移オーバヘッド(clock frequency transition overheads)は、無視し得るほどの時間量(例えば10μs〜150μs)しか費やさないので、本例では、これらのオーバヘッドについては考慮しない。プロセッサ間通信は、競合が生じないすべてのリンク上で同じ速度で実行されると仮定される。受信側プロセッサ上でタスクが実行されている最中に、メッセージを1つのプロセッサから別のプロセッサに送信できることも仮定され、これは多くのシステムにおいて可能である。
〔アプリケーション・モデル〕
並列プログラムは、一般に、有向非巡回グラフ(DAG:directed acyclic graph)によって表すことができる。DAG G=(N,E)は、n個のノードの集合Nと、e個のエッジの集合Eとから成る。DAGは、タスク・グラフ(task graph)またはマクロデータフロー・グラフ(macro−dataflow graph)とも呼ばれる。一般に、ノードは、アプリケーションから分割されたタスクを表し、エッジは、順序制約を表す。タスクnとタスクnの間のエッジ(i,j)∈Eは、タスク間通信も表す。言い換えると、タスクnの出力は、タスクnがその実行を開始するために、タスクnに送られなければならない。先行タスクが存在しないタスクは、入口タスクnentryと呼ばれ、一方、出口タスクnexitは、いかなる後続タスクも有さないタスクである。タスクnの先行タスクのうち、最遅時刻に通信を完了する先行タスクは、タスクnの最も影響力の大きいペアレント(MIP:most influential parent)と呼ばれ、MIP(n)によって表される。タスク・グラフの最長経路は、クリティカル・パス(CP:critical path)である。
によって表されるタスクn上の重さは、タスクの計算コストである。加えて、プロセッサp上におけるタスクの計算コストは、wi,jによって表され、その平均計算コストは、
Figure 2012504800
によって表される。
i,jによって表されるエッジ上の重さは、2つのタスクnとnの間の通信コストを表す。しかし、通信コストは、2つのタスクが異なるプロセッサに割り当てられた場合に限って必要とされる。言い換えると、タスクが同じプロセッサに割り当てられた場合の通信コストは、無視することができる。すなわち、0とすることができる。
プロセッサpにおけるタスクnの最早開始時刻および最早終了時刻は、
Figure 2012504800
によって定義され、ここで、pは、タスクnのMIPがスケジュールされたプロセッサであり、
Figure 2012504800
である。
なお、同じプロセッサ上でスケジュールされた別のタスクの実際の終了時刻が、EST(n,p)よりも遅い場合、AST(n,p)およびAFT(n,p)によって表されるプロセッサpにおけるタスクnの実際の開始時刻および終了時刻が、その最早開始時刻EST(n,p)および最早終了時刻EFT(n,p)と異なり得る。
タスク挿入を採用する場合、タスクは、順序制約違反が生じない限り、すでにプロセッサに割り当てられた2つの連続するタスクの間のアイドル・タイムスロット(the idle time slot)内にスケジュールすることができる。この挿入スキーム(This insertion scheme)は、粒度の細かいタスクを用いて、通信集約的なタスク・グラフのプロセッサ利用度を高めることに特に貢献する。
簡単なタスク・グラフが、図2に示されており、その詳細が、図3および図4の表に示されている。図3の表に示された値は、2つの頻繁に使用されるタスク優先順位決定方法である、tレベルおよびbレベルを使用して計算されている。なお、計算コストおよび通信コストはともに、すべてのモードおよびリンクにわたって平均されている。タスクのtレベルは、タスク・グラフの入口タスクからのノードの最長経路に沿った、計算コストと通信コストの和として定義される。タスク自体は、計算から除外される。対照的に、タスクのbレベルは、タスク・グラフの出口タスクからのタスクの最長経路に沿って、(タスクを包含して)計算コストと通信コストを合算することによって計算される。本例では、bレベルが使用される。
通信対計算比(CCR:communication to computation ratio)は、タスク・グラフが、通信集約的であるか、計算集約的であるか、それともその中間であるかを示す尺度である。与えられたタスク・グラフについて、CCRは、対象システムにおける平均通信コストを平均計算コストで除算することによって計算される。
〔エネルギー・モデル〕
我々のエネルギー・モデルは、相補型金属酸化膜半導体(CMOS:complementary metal−oxide semiconductor)論理回路における電力消費モデルから導き出されている。CMOSベースのマイクロプロセッサの電力消費は、容量性電力、短絡電力、および漏れ電力の和として定義される。容量性電力(動的電力損失)は、電力消費のうち最も重要なファクタである。容量性電力(P)は、
Figure 2012504800
として定義され、ここで、Aは、クロック・サイクル当たりのスイッチの数であり、Cは、総キャパシタンス負荷であり、Vは、供給電圧であり、fは、周波数である。式(3)は、供給電圧が主要なファクタであることを明らかに示している。したがって、電力消費を引き下げるのには、供給電圧の低減が、最も大きく影響する。
プロセッサは、アイドリング中もある量のエネルギーを消費するので、本例で使用される順序制約のある並列アプリケーションを実行するための総エネルギー消費は、直接的および間接的なエネルギー消費から成る。直接的なエネルギー消費58は、
Figure 2012504800
として定義され、ここで、Vは、タスクnが実行されるプロセッサの供給電圧であり、w は、スケジュールされたプロセッサにおけるタスクnの計算コスト(nの実行に要する時間量)である。
一方、間接的なエネルギー消費60は、
Figure 2012504800
として定義され、ここで、IDLEは、プロセッサpにおけるアイドリング・スロットの集合であり、Vj,lowは、pにおける最低供給電圧であり、tj,kは、idlej,kについてのアイドリング時間量である。その後、総エネルギー消費は、
Figure 2012504800
として定義される。
我々のエネルギー・モデルの説明図が、図5に示されている。なお、アイドリング・スロット60は、タスクが実行されていない(与えられたタスク・グラフの実行中の)任意の期間として定義されている。未使用プロセッサ62のエネルギー消費は無視できると仮定しているため、エネルギー消費を計算するとき、それらは計算に入っていない。
〔スケジューリング・モデル〕
本例におけるタスク・スケジューリングの問題は、エネルギー消費をできるだけ低く抑えながらメイクスパンを最小化することを目指して、順序制約に違反することなく、n個のタスクの集合Nをp個のプロセッサの集合Pに割り当てるプロセスである。タスク・グラフG内のn個のタスクのスケジューリングが完了した後では、メイクスパンは、M=max{AFT(nexit)}として定義される。メイクスパンの最小化は不可欠であるが、我々の例におけるDAGのタスクは、リアルタイム・システムのようには、期限に関連しない。我々のスケジューリング・モデルの2つの目的(メイクスパンの最小化およびエネルギー消費の最小化)は、互いに対立するので、スケジューリング決定は、スケジュールの質に対する、各目的の影響を考慮して行われるべきである。
今から、特にMCSのためのタスク・スケジューリングにおける2つの特筆すべき研究について説明し、その後、電力/エネルギーを意識したスケジューリング・アルゴリズムについて説明する。
〔MCSにおけるスケジューリング〕
一般的なケース(非特許文献4)におけるタスク・スケジューリングの問題のNP困難性のため、ヒューリスティックは、最も広く採用されているスケジューリング・モデルであり、多項式時間よりも短い時間で良好な解をもたらす。ヒューリスティックは、本質的に決定論的なそのオペレーションによって特徴付けられ、スケジューリングの問題の解の選択は、確率論的ではない。異なるヒューリスティック技法の中で、リスト・スケジューリング(list scheduling)、クラスタリングベース・スケジューリング(clustering−based scheduling)、および誘導ランダム探索(guided random search)が、3つの最も普及している手法である。リスト・スケジューリング・ヒューリスティックが、主要なヒューリスティック・モデルである。これは、経験的に、リスト・スケジューリング・アルゴリズムが、他のカテゴリのアルゴリズムと比較して、より低い時間計算量で優位性のある解を生成する傾向にあるためである。
HEFTアルゴリズム(非特許文献1)は、低い時間計算量で、他のスケジューリング・アルゴリズムに匹敵するスケジュール長を生成する点で、高い優位性を有する。HEFTアルゴリズムは、タスク挿入を伴った、リスト・スケジューリングの2つの典型的なフェーズ(すなわち、タスク優先順位決定およびプロセッサ選択)から成る、リスト・スケジューリング・ヒューリスティックである。
スケジューリングを開始する前に、タスク・グラフ内のすべてのタスクのbレベル値が、計算され、bレベル値の降順で、スケジューリング・リスト内に並べられる。その後、スケジューリング・リスト内の第1のタスクから開始して、各タスクがスケジュールされる。プロセッサ選択フェーズでは、タスクnの終了時刻EFT(n,p)が最小化されるプロセッサpが、挿入ベースの方針を使用して選択される。言い換えると、プロセッサ上ですでにスケジュールされた2つのタスクの間の最早タイムスロットに、タスクを挿入することができるが、その条件として、そのタスクの順序制約に対する違反がなく、スロットがタスクを収容するのに十分な大きさを有する必要がある。HEFTの時間計算量は、O(n log n+(e+n)p)の順にある。
DBUSアルゴリズム(非特許文献5)は、最初にタスクに対してCPベースのリスティングを実行し、タスク重複およびタスク挿入をともに用いてタスクをスケジュールする、重複ベースのスケジューリング・ヒューリスティックである。非特許文献5の実験結果は、特に通信集約的なタスク・グラフについて、DBUSの魅力的な性能を示している。
その名前が暗示するように、DBUSは、タスク・グラフをボトムアップ方式で辿って、タスク・グラフ内のタスクをスケジュールする。リスティング・フェーズでは、DBUSは、最初にタスクのbレベル値、tレベル値、およびstレベル値を計算し、CPタスクを識別する。CPタスクは、CPタスクのチャイルド・タスク(child tasks)がCPタスクに先行するように、これらCPタスクの各々のチャイルド・タスクとともにtレベルの降順でリスト内に保存される。これらのチャイルド・タスクは、stレベルの降順で保存される。tレベルとstレベルの間の唯一の相違は、stレベルでは、通信コストが考慮されないことである。リスト内のタスクの順序が、スケジューリング順序を決定する。
スケジューリング・フェーズでは、リスト内の各タスクが、スケジュールされ、すでにスケジュールされたそのチャイルド・タスクの数またはプロセッサの数のうち、どちらか小さい方の数だけ重複される。チャイルド・タスクが割り当てられたプロセッサは、カバーされるべきプロセッサと見なされる。カバーされる各プロセッサについて、スケジュールされるタスクのコピーが、その完了時間を最小化する特定のプロセッサに割り当てられ、その後、最初にスケジュールされたように、先のプロセッサ上のチャイルド・タスクを開始することができる。このプロセスは、カバーされるすべてのプロセッサが実際にカバーされるまで繰り返される。単一のタスク割り当てが2つ以上のプロセッサをカバーすることが可能である。この重複スキームの1つの難点は、プロセッサの数がタスクの数に比べて非常に少ない場合に、スケジュール長の著しい増加が起こることがあることである。これは、タスクの冗長な重複は、タスク自体にとっては有効であり得ても、そのレプリカが、非常に多くの後続の重複をレプリカが誘発させる「カスケード効果(cascade effect)」を引き起こし得るためである。DBUSの時間計算量は、O(n)の順にある。
〔エネルギーを意識したスケジューリング〕
動的電圧スケーリング(DVS)、リソース・ハイバネーション(resource hibernation)、およびメモリ最適化を含む様々な技法が、エネルギーを節約するために、研究および開発された。CPUは、HPCSにおける電力消費の主要な源であるので(非特許文献9)、インテル社、AMD社、モトローラ社、およびトランスメタ社を始めとする多くのマイクロプロセッサ製造業者は、DVSに照準を絞った低電力プロセッサの設計に多くの労力を注いできた。DVSは、プロセッサが、電力消費の低減を目指して、電圧供給レベル(VSL:voltage supply level)を動的に調整することを可能にするが、この低減は、クロック周波数を犠牲にすることと引き換えに達成される。緩やかな管理(slack management)/再利用(reclamation)は、DVSとともにしばしば採用されるスケジューリング技法である。
ほとんどの多目的最適化問題におけるように、問題の性能目的は、互いに対立関係にある可能性が非常に高いので、このスケジューリング例における目標は、パレート最適解(Pareto−optimal solutions)を見出すことである。言い換えると、与えられたタスク・グラフに対して、本例で提示されるヒューリスティックは、メイクスパンおよびエネルギー消費をともに最小化するスケジュールを生成するが、エネルギー消費の低減は、しばしば供給電圧を引き下げることで行われ、これは、メイクスパンの増加をもたらす。より形式的には、多目的最適化問題は、
Figure 2012504800
として定義することができ、ここで、Sは、実行可能な探索空間であり、n≧2である。
以下では、2つのエネルギー・コンシャス・スケジューリング・ヒューリスティックであるECSおよびECS+idleが説明される。これらは、メイン・スケジューリング・パスおよびメイクスパン保存エネルギー低減パスから成る、マルチパス(2パス)アルゴリズムとして説明することができる。
ECSの動作が、図6に示されている。
エネルギー消費をタスク・スケジューリングに組み込むことは、すでに複雑な問題に別の複雑な層を追加する。リアルタイム・システムとは異なり、本例のアプリケーションは、期限制約を受けない。これは、スケジュールの質の評価が、単純ではなく、むしろ、スケジュールの質は、メイクスパンおよびエネルギー消費の両方を明示的に考慮して、測られるべきであることを示している。この理由で、ECSは、新規の目的関数として、これら2つの性能上の留意事項を考慮する相対的な優位性(RS:relative superiority)を用いるように考案されている。VSLがvj,kであるプロセッサpにおけるタスクnのRS値(またはファクタ)は、
Figure 2012504800
として定義され、ここで、E(n,p,vj,k)、およびE(n,p’,v’)は、それぞれ、vj,kを有するpにおけるnのエネルギー消費、およびv’を有するp’ におけるnのエネルギー消費であり、同様に、2つのタスク−プロセッサ割り当ての最早開始時刻/最早終了時刻は、EST(n,p,vj,k)およびEST(n,p’,v’)、ならびにEFT(n,p,vj,k)およびEFT(n,p’,v’)によって表される。以上のように、RS値は、エネルギー消費と完了時間の間でトレードオフを行う。
与えられた準備ができたタスクについて、各プロセッサにおけるそのRS値は、そのタスクのためのプロセッサとVSLの現在の最良の組み合わせ(p’およびv’)を使用して計算され、その後、最大RS値が獲得されたプロセッサが、選択される(図6のステップ3〜15を参照)。
ECSが行う各スケジューリング決定は、局所最適に限定される傾向があるので、別のエネルギー低減技法(MCER)が、時間計算量を犠牲にすることなく、ECSのエネルギー低減フェーズと一体化される(図6のステップ17〜31)。この技法は、エネルギー消費を引き下げるには有効な技法であるが、スケジュールが局所最適を脱するのには役立たないことがある。
MCERは、(スケジューリング・フェーズにおいて生成されたスケジュールに対して)行う変更が、スケジュールのメイクスパンを増加させないかどうかを確認されるにすぎない点で、メイクスパン保存則である。DAG内の各タスクについて、MCERは、タスク、ホスト、およびVSLの他の組み合わせのいずれかが、現在のメイクスパンを増加させることなく、タスクのエネルギー消費を低減するかどうかをチェックするため、これらの組み合わせのすべてを検討する。
ECS+idleの動作について、今から説明する。
与えられたスケジュールについて、通常の場合、より短いメイクスパンは、主としてスケジュール内のプロセッサのアイドリング・スロットに関連するエネルギー消費のために、より少ないエネルギー消費をもたらす。この観察は、我々を、間接的なエネルギー消費を組み込むために、先のRS目的関数およびMCER技法に変更を施すことに導く。
先のRS目的関数は、間接的なエネルギー消費の低減に関して、第2項をより効果的にするように改変される。この変更は、最終的なRS値により大きな影響を与えるように、(タスク−プロセッサの2つの組み合わせを比較して)より短いタスク完了時間をもたらすプロセッサ−VSLマッチを強制する(すなわち、より長いタスク完了をもたらすマッチにペナルティを課す)。
Figure 2012504800
ECSにおける先のMCER技法に施される変更は、そのエネルギー関数に対するものである。すなわち、再割り当て決定は、直接的なエネルギー消費メトリック(E)の代わりに、実際のエネルギー消費メトリック(E)に基づいて行われる。供給電圧がvj,kであるプロセッサpにおけるタスクnの実際のエネルギー消費は、
Figure 2012504800
として定義される。
いくつかの例における修正MCER技法は、先のMCER技法と同様の方法で、エネルギー消費を低減するが、修正MCER技法が使用された場合に限って低減がなされる、いくつかの場合が存在する。例えば、供給電圧が1.50であるプロセッサに割り当てられたタスクが、その計算コストとして10を有し、1.10vを有する別のプロセッサでは、そのタスクの計算コストが20になる場合、後者の割り当ての(直接的な)エネルギー消費の方が高いので、オリジナルのMCER技法は、この代替的な割り当てを採用しないと考えられる。しかし、実際のエネルギー消費を考慮する修正MCER技法は、後者の割り当て(E=11.4)の方がよりエネルギー効率的であると識別する。このシナリオは、メイクスパンの増加がないことを仮定している。
ECS+idleの動作について、図6は、本セクションにおいて先に説明された、RS目的関数およびMCER技法における、2つの相違を有するように示すことができる。ECS+idleスケジューリングの一例が、図7に示されている。
〔性能解析〕
ここで、ECSおよびECS+idleが生成するスケジュールの質的な意味合いについて説明する。
我々のアルゴリズムのエネルギー低減能力を示すために、図2のタスク・グラフについて、HEFTおよびDBUSによって生成された2つのスケジュールを最初に示す。これらのスケジュールは、HEFT(メイクスパン=89)およびDBUS(メイクスパン=73)のそれぞれについて図7に概略的に示されている。それらは、DVSまたは他の何らかのエネルギー節約技法をスケジューリングに組み込んでいないので、出力されるスケジュールは、メイクスパンを短縮するのと引き換えに、過剰なエネルギーを消費する傾向にある。しかし、エネルギー・コンシャス・スケジューリングについての我々の研究は、この過剰なエネルギー消費は、貧弱なメイクスパンをもたらすことなく低減できることを確認した。
本発明の本例によって生成されたスケジューリングの例が、図8および図9に示されている。メイクスパンは、垂直軸として示され、各プロセッサp、p、およびpは、独自のカラム(column)を有する。プロセッサに割り当てられたタスクは、そのプロセッサのカラム上に時間順に記され、タスクの幅は、そのプロセッサにおいてそのタスクに割り当てられた電圧レベルを示す。
ここで、本例のECSおよびECS+idleと、先に提案された2つのヒューリスティックHEFTおよびDBUSとの間で行った広範な比較評価研究から獲得された結果を提示する。エネルギーに配慮したECSおよびECS+idleとエネルギーに無配慮なHEFTおよびDBUSの間のこの比較は、本例のエネルギー節約能力を明らかに示している。
〔実験設定〕
ECSおよびECS+idleの性能は、ランダムに生成されたアプリケーションと現実世界のアプリケーションという、2つの広範なタスク・グラフの集合を用いて、徹底的に評価された。我々の実験で使用された3つの現実世界の並列アプリケーションは、ラプラス方程式求解機(the Laplace equation solver)(非特許文献6)、LU分解(非特許文献7)、および高速フーリエ変換(非特許文献8)であった。より総合的な実験とするために、これらのタスク・グラフに対して、多くの変形が施された。タスク・グラフに加えて、様々な異なる特徴のプロセッサが、シミュレーションに適用された。図11の表は、我々の実験で使用されたパラメータを要約したものである。
4つの異なるアルゴリズム(HEFT、DBUS、ECS、ECS+idle)を用いて実行された実験の総数は、28万回(すなわち、アルゴリズム毎に7万2千回)である。具体的には、ランダムなタスク・グラフの集合は、10種類のグラフ・サイズ、5種類のCCR、および3種類のプロセッサ異種性設定の組み合わせを用いて生成された、150個の基本タスク・グラフから成る。組み合わせ毎に、20個の変形タスク・グラフが、基本タスク・グラフの特性を保持しながら、ランダムに生成された。これら3000個のグラフが、6つの異なる数のプロセッサを用いて研究された。3つの現実世界のアプリケーションの各々は、同数の(すなわち1万8千個の)タスク・グラフを使用して研究された。したがって、総数は7万2千である。
各タスク・グラフ内のタスクの計算コストおよび通信コストは、選択された平均計算コストおよび平均通信コストと等しい平均を有するように、一様分布からランダムに選択された。プロセッサ異種性の100という値は、与えられたシステム内の最高速度のプロセッサと最低速度のプロセッサの間の速度差のパーセンテージとして定義された。現実世界のアプリケーションのタスク・グラフの場合、タスクの数が約10から600の範囲にわたり得るように、行列サイズおよび入力点の数を変化させた。
〔比較測定基準〕
一般に、スケジューリング・アルゴリズムによって生成されたタスク・グラフのメイクスパンが、主な性能尺度として使用されるが、この研究においては、我々は、エネルギー消費を別の同じくらい重要な性能尺度と考える。与えられたタスク・グラフについて、そのメイクスパンおよびエネルギー消費の両方を下限に正規化する。下限とは、通信コストを考慮しない、CP沿いのタスク(すなわちCPタスク)のメイクスパンおよびエネルギー消費である具体的には、「スケジュール長比」(SLR:schedule length ratio)および「エネルギー消費比」(ECR:energy consumption ratio)が、我々の比較の主要な性能測定基準として使用された。形式的に、スケジューリング・アルゴリズムによってタスク・グラフGのために生成されたスケジュールのメイクスパンMのSLR値およびエネルギー消費EのECR値は、
Figure 2012504800
Figure 2012504800
として定義され、ここで、CPは、GのCPタスクの集合である。
〔結果〕
我々が行ったシミュレーションの全結果が、図12の表に要約されている。図12は、異なるDAGタイプに関わりなく、アルゴリズムECSおよびECS+idleの性能が、DBUSおよびHEFTよりも優れていることを明らかに示している。さらに、ECSおよびECS+idleは、様々な異なるCCRを用いた場合も、それら2つの先行アルゴリズムよりも性能が優れている。
明らかに、タスク重複の主な目的は、いくつかのタスクを冗長にスケジュールすることによる、通信オーバヘッドの最小化であり、そのことが、最終的にはメイクスパンを低減する。タスク重複は、通信集約的なアプリケーションに対する有効な技法となることができるが、スケジューリング・アルゴリズムへのそのような技法の組み込みは、エネルギー消費が関与する場合は、回避されるべきであるか、または少なくとも慎重に検討されるべきである。DBUSは、重複ベースのスケジューリング・アルゴリズムであるので、そのエネルギー消費は、ECSのエネルギー消費よりもはるかに大きい。
ECSおよびECS+idleとHEFTの間の比較は、特にエネルギー消費に関して、ECSおよびECS+idleの有利な性能を再確認させた。なお、これまでに、HEFTは、低い時間計算量で、非常に優位的に動作することが明らかにされ、頻繁に採用され、拡張されてきたことに留意されたい。このことは、図10に示されたECSおよびECS+idleの平均SLRが、1パーセントの余裕を取ったとしても、有力であることを示唆している。
ECSおよびECS+idleの主な性能の源は、RS目的関数の使用であり、RS目的関数は、メイクスパンおよびエネルギー消費の両方を低減することに貢献する。これらの実験では、ECSおよびECS+idleのメイン・スケジューリング・フェーズがMCER技法によって行われた後のスケジュールについて、さらに(平均で)3.4パーセントの改善および3.9パーセントの改善が、エネルギー消費で見られた。これらの低減は、直接的および間接的なエネルギー消費の両方において達成される。
具体的な実施形態において示された本発明に対して、広範に説明された本発明の範囲から逸脱することなく、多くの変形および/または変更を施すことができることが当業者には理解されよう。したがって、本発明の実施形態は、すべての点において、例示的なものと見なされるべきであり、限定的なものと見なされるべきではない。

Claims (17)

  1. アプリケーションが、2つ以上の順序制約のある並列タスクから成り、
    異種コンピューティング・システムが、各々が異なる電圧供給レベルで動作可能な複数のプロセッサから成り、
    前記タスクの計算コストおよび通信コストに基づいて、前記タスクの優先順位を決定するステップと、
    前記タスクの優先順位の順に、各タスクにプロセッサおよび電圧レベルの両方を割り当てるステップであって、プロセッサおよび電圧レベルの異なる組み合わせにおいて、前記タスクを実行するためのエネルギー消費および完了時間を比較した場合に、前記プロセッサおよび前記電圧レベルが、前記タスクを実行するための前記エネルギー消費および前記完了時間を実質的に最小化するステップと、
    を含む、前記異種コンピューティング・システムにおいて実行するための前記アプリケーションをスケジュールするための方法。
  2. タスク、プロセッサ、および電圧レベルの異なる組み合わせについて、実質的に最小化することが前記エネルギー消費および前記完了時間の両方を示すファクタを決定することを含む、請求項1に記載の方法。
  3. 実質的に最小化することが、エネルギー消費の最小化と完了時間の最小化との間の実質的に最良のトレードオフを示すファクタを有する割り当てのための前記組み合わせを選択することを含む、請求項2に記載の方法。
  4. エネルギー消費を示す前記ファクタを決定することが、その組み合わせの前記電圧レベルにおける、そのタスクの計算コストに基づく、請求項2または請求項3に記載の方法。
  5. 完了時間を示す前記ファクタを決定することが、その組み合わせの前記プロセッサおよび前記電圧レベルにおける、そのタスクの計算コストに基づく、請求項2、請求項3または請求項4に記載の方法。
  6. 完了時間を示す前記ファクタを決定することが、その組み合わせの前記プロセッサおよび前記電圧レベルにおける、そのタスクの推定開始時刻と前記計算コストとの和に基づく、請求項5に記載の方法。
  7. 前記推定開始時刻が、そのタスクに先行する最も影響力の大きいタスクの推定終了時刻と、適切な場合は、前記最も影響力の大きいタスクに割り当てられたプロセッサおよびその組み合わせの前記プロセッサの間の通信コストとに基づく、請求項6に記載の方法。
  8. 完了時間を示す前記ファクタを決定することが、より長い完了時間をもたらすプロセッサおよび電圧レベルの組み合わせにおけるタスクにペナルティを課すことを含む、請求項5、請求項6または請求項7に記載の方法。
  9. 各タスクについて、
    プロセッサおよび電圧レベルの異なる組み合わせにおいて、前記タスクのための前記エネルギー消費および前記計算時間を決定するステップと、
    ある組み合わせについて、前記決定された計算時間が、前記アプリケーションのメイクスパンの増加を引き起こさず、かつ、前記決定されたエネルギー消費が、前記割り当てられたプロセッサおよび割り当てられた電圧における前記タスクの前記エネルギー消費よりも小さい場合、前記タスクをプロセッサおよび電圧レベルのその組み合わせに割り当て直すステップと
    をさらに含む、請求項1から請求項8のいずれか一項に記載の方法。
  10. 各タスクの前記優先順位は、前記タスクが一部である順序制約のあるタスクの最長経路に沿った、各タスクの計算コストおよび通信コストにそれぞれ基づく、請求項1から請求項9のいずれか一項に記載の方法。
  11. 各タスクの前記優先順位が、前記タスクのbレベルまたはtレベルに基づく、請求項10に記載の方法。
  12. 前記スケジューリングに従って前記タスクを実行するステップをさらに含む、請求項1から請求項11のいずれか一項に記載の方法。
  13. 前記異種コンピューティング・システムが、マルチプロセッサ・コンピューティング・システムである、請求項1から請求項12のいずれか一項に記載の方法。
  14. 前記タスクが異種的である、請求項1から請求項13のいずれか一項に記載の方法。
  15. 請求項1から請求項14のいずれか一項に記載の方法を実行するようにコンピュータを動作させる、コンピュータ読み取り可能な媒体に記録されたコンピュータ命令を含むソフトウェア。
  16. 請求項1から請求項11のいずれか一項に記載の方法から生成される異種コンピューティング・システムにおいて、アプリケーションを実行するためのスケジュール。
  17. アプリケーションが、2つ以上の順序制約のある並列タスクから成り、
    異種コンピューティング・システムが、各々が異なる電圧供給レベルで動作可能な複数のプロセッサから成り、
    スケジューリング・モジュールが、
    前記タスクの優先順位を、前記タスクの計算コストおよび通信コストに基づいて決定することと、
    前記タスクの優先順位の順に、そのタスクにプロセッサおよび電圧レベルの両方を割り当てることであって、プロセッサおよび電圧レベルの異なる組み合わせにおいて、そのタスクを実行するためのエネルギー消費および完了時間に前記タスクを割り当てることを比較した場合に、前記プロセッサおよび前記電圧レベルが、そのタスクを実行するためのエネルギー消費および完了時間を実質的に最小化するように割り当てることと
    を行うように動作可能である、
    前記異種コンピューティング・システムにおいて実行するための前記アプリケーションをスケジュールするためのスケジューリング・システム。
JP2011529417A 2008-10-03 2009-10-01 異種コンピューティング・システムにおいて実行するためのアプリケーションのスケジューリング Pending JP2012504800A (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
AU2008905162A AU2008905162A0 (en) 2008-10-03 Scheduling an Application for Performance on Heterogeneous Computing System
AU2008905162 2008-10-03
PCT/AU2009/001311 WO2010037177A1 (en) 2008-10-03 2009-10-01 Scheduling an application for performance on a heterogeneous computing system

Publications (1)

Publication Number Publication Date
JP2012504800A true JP2012504800A (ja) 2012-02-23

Family

ID=42072960

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2011529417A Pending JP2012504800A (ja) 2008-10-03 2009-10-01 異種コンピューティング・システムにおいて実行するためのアプリケーションのスケジューリング

Country Status (7)

Country Link
US (1) US8959370B2 (ja)
EP (1) EP2350769A1 (ja)
JP (1) JP2012504800A (ja)
CN (1) CN102171627A (ja)
AU (1) AU2009299116B2 (ja)
CA (1) CA2738990A1 (ja)
WO (1) WO2010037177A1 (ja)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6143981B1 (ja) * 2016-03-22 2017-06-07 三菱電機株式会社 情報処理システム、情報処理装置及び情報処理方法
WO2017163447A1 (ja) * 2016-03-22 2017-09-28 三菱電機株式会社 情報処理システム、情報処理装置及び情報処理方法
KR101898144B1 (ko) * 2017-03-20 2018-09-12 한양대학교 산학협력단 에너지 하베스팅으로 구동되는 시스템에서 태스크 스케줄링 방법 및 장치
US11256547B2 (en) 2019-05-31 2022-02-22 Altair Engineering, Inc. Efficient allocation of cloud computing resources to job requests

Families Citing this family (42)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2930355B1 (fr) * 2008-04-18 2013-01-18 Commissariat Energie Atomique Procede de gestion de la consommation d'energie pour les systemes multiprocesseurs.
US8776066B2 (en) * 2009-11-30 2014-07-08 International Business Machines Corporation Managing task execution on accelerators
EP3136313A1 (de) * 2009-12-05 2017-03-01 Jens Mehnert Verfahren und vorrichtung zur analyse des energieeinsatzes beim betrieb eines produktionssystems
US8789065B2 (en) 2012-06-08 2014-07-22 Throughputer, Inc. System and method for input data load adaptive parallel processing
RU2011117765A (ru) * 2011-05-05 2012-11-10 ЭлЭсАй Корпорейшн (US) Устройство (варианты) и способ реализации двухпроходного планировщика задач линейной сложности
US9448847B2 (en) 2011-07-15 2016-09-20 Throughputer, Inc. Concurrent program execution optimization
CN102299964B (zh) * 2011-08-30 2013-08-07 南京邮电大学 一种应用于节能型集群系统的数据重新部署方法
CN103034534A (zh) * 2011-09-29 2013-04-10 阿尔斯通电网公司 基于网格计算的电力系统分析并行计算方法和系统
US8689220B2 (en) 2011-11-30 2014-04-01 International Business Machines Corporation Job scheduling to balance energy consumption and schedule performance
CN102902511A (zh) * 2011-12-23 2013-01-30 同济大学 并行信息处理系统
CN104205087B (zh) * 2012-02-04 2018-01-16 英派尔科技开发有限公司 芯片多处理器中的核心级动态电压和频率调节
US9619309B2 (en) * 2012-12-28 2017-04-11 Intel Corporation Enforcing different operational configurations for different tasks for failure rate based control of processors
US9336058B2 (en) * 2013-03-14 2016-05-10 International Business Machines Corporation Automated scheduling management of MapReduce flow-graph applications
US9329899B2 (en) 2013-06-24 2016-05-03 Sap Se Parallel execution of parsed query based on a concurrency level corresponding to an average number of available worker threads
CN103399626B (zh) * 2013-07-18 2016-01-20 国家电网公司 面向混合计算环境的功耗感知的并行应用调度系统及方法
US9858115B2 (en) * 2013-10-30 2018-01-02 Mediatek Inc. Task scheduling method for dispatching tasks based on computing power of different processor cores in heterogeneous multi-core processor system and related non-transitory computer readable medium
JP2015088112A (ja) * 2013-11-01 2015-05-07 ソニー株式会社 制御装置、処理装置及び情報処理方法
JP5692341B2 (ja) * 2013-12-05 2015-04-01 富士通株式会社 マルチプロセッサシステム、制御方法、および制御プログラム
US9323574B2 (en) * 2014-02-21 2016-04-26 Lenovo Enterprise Solutions (Singapore) Pte. Ltd. Processor power optimization with response time assurance
CN103942102A (zh) * 2014-04-14 2014-07-23 桂林电子科技大学 基于双优先级的实时任务调度方法
US9912707B2 (en) 2014-07-31 2018-03-06 Istreamplanet Co. Method and system for ensuring reliability of unicast video streaming at a video streaming platform
US9826011B2 (en) 2014-07-31 2017-11-21 Istreamplanet Co. Method and system for coordinating stream processing at a video streaming platform
US9417921B2 (en) * 2014-07-31 2016-08-16 Istreamplanet Co. Method and system for a graph based video streaming platform
US9686576B2 (en) 2015-05-08 2017-06-20 Istreamplanet Co. Coordination of video stream timing in cloud-based video streaming system
US9407944B1 (en) 2015-05-08 2016-08-02 Istreamplanet Co. Resource allocation optimization for cloud-based video processing
US10164853B2 (en) 2015-05-29 2018-12-25 Istreamplanet Co., Llc Real-time anomaly mitigation in a cloud-based video streaming system
WO2017065629A1 (en) * 2015-10-12 2017-04-20 Huawei Technologies Co., Ltd. Task scheduler and method for scheduling a plurality of tasks
CN105843364B (zh) * 2016-03-24 2018-11-02 华中科技大学 异构并行系统下时间能耗权衡优化的任务调度算法
EP3273349A1 (en) * 2016-07-22 2018-01-24 Tata Consultancy Services Limited Approximate computing for application performance in heterogeneous systems
US10108459B2 (en) * 2016-09-12 2018-10-23 Bmc Software, Inc. System and method to dynamically allocate varying processing capacity entitlements based on workload importance
WO2018076238A1 (zh) * 2016-10-27 2018-05-03 华为技术有限公司 异构系统、计算任务分配方法及装置
CN108737462A (zh) * 2017-04-17 2018-11-02 华东师范大学 一种基于图论的云计算数据中心任务调度方法
CN108255593B (zh) * 2017-12-20 2020-11-03 东软集团股份有限公司 基于共享资源的任务协调方法、装置、介质及电子设备
CN112346828B (zh) * 2019-08-06 2024-04-05 北京沃东天骏信息技术有限公司 基于分布式异构系统的任务配置方法、装置及存储介质
CN110489235A (zh) * 2019-08-20 2019-11-22 西北工业大学 一种基于heft的移动众包任务分配方法
CN111090613B (zh) * 2019-11-25 2022-03-15 中国人民解放军国防科技大学 一种基于图分割的低复杂度软硬件划分与调度方法
US11327877B2 (en) 2020-05-08 2022-05-10 Microsoft Technology Licensing, Llc Pipeline performance improvement using stochastic dags
CN112631749B (zh) * 2020-12-19 2024-03-26 北京化工大学 一种对异构分布式系统中并行应用程序的调度方法
CN112764903A (zh) * 2021-01-22 2021-05-07 西安电子科技大学 异构环境下带有特殊任务的任务调度方法、系统及应用
CN112905317B (zh) * 2021-02-04 2023-12-15 西安电子科技大学 快速可重构信号处理异构平台下任务调度方法和系统
DE102022200160A1 (de) * 2022-01-10 2023-07-13 Robert Bosch Gesellschaft mit beschränkter Haftung Verfahren zum Optimieren eines Prozesses
CN117573321A (zh) * 2023-11-24 2024-02-20 数翊科技(北京)有限公司 一种基于数据库的周期性调度任务动态编排方法及系统

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0675786A (ja) * 1992-08-26 1994-03-18 Hitachi Ltd タスクスケジュリング方法
JP2004509386A (ja) * 2000-06-30 2004-03-25 タレス ネデルラント ベー.フェー. 複数のプロセッサにソフトウェア機能を自動的に割り当てる方法
JP2007328415A (ja) * 2006-06-06 2007-12-20 Univ Waseda ヘテロジニアス・マルチプロセッサシステムの制御方法及びマルチグレイン並列化コンパイラ
JP2008176804A (ja) * 2008-02-18 2008-07-31 Nec Corp タスクスケジューリングシステム、方法、およびプログラム

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6230303B1 (en) * 1997-02-24 2001-05-08 Lucent Technologies Inc. Proximity-based cluster allocation for hardware-software co-synthesis of heterogeneous distributed embedded systems
US7134031B2 (en) * 2003-08-04 2006-11-07 Arm Limited Performance control within a multi-processor system
US7386739B2 (en) 2005-05-03 2008-06-10 International Business Machines Corporation Scheduling processor voltages and frequencies based on performance prediction and power constraints
JP2007328461A (ja) 2006-06-06 2007-12-20 Matsushita Electric Ind Co Ltd 非対称マルチプロセッサ
US20080178029A1 (en) 2007-01-19 2008-07-24 Microsoft Corporation Using priorities to select power usage for multiple devices

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0675786A (ja) * 1992-08-26 1994-03-18 Hitachi Ltd タスクスケジュリング方法
JP2004509386A (ja) * 2000-06-30 2004-03-25 タレス ネデルラント ベー.フェー. 複数のプロセッサにソフトウェア機能を自動的に割り当てる方法
JP2007328415A (ja) * 2006-06-06 2007-12-20 Univ Waseda ヘテロジニアス・マルチプロセッサシステムの制御方法及びマルチグレイン並列化コンパイラ
JP2008176804A (ja) * 2008-02-18 2008-07-31 Nec Corp タスクスケジューリングシステム、方法、およびプログラム

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6143981B1 (ja) * 2016-03-22 2017-06-07 三菱電機株式会社 情報処理システム、情報処理装置及び情報処理方法
WO2017163447A1 (ja) * 2016-03-22 2017-09-28 三菱電機株式会社 情報処理システム、情報処理装置及び情報処理方法
US11226841B2 (en) 2016-03-22 2022-01-18 Mitsubishi Electric Corporation Information processing system, information processing device, and information processing method
KR101898144B1 (ko) * 2017-03-20 2018-09-12 한양대학교 산학협력단 에너지 하베스팅으로 구동되는 시스템에서 태스크 스케줄링 방법 및 장치
US11256547B2 (en) 2019-05-31 2022-02-22 Altair Engineering, Inc. Efficient allocation of cloud computing resources to job requests

Also Published As

Publication number Publication date
CN102171627A (zh) 2011-08-31
EP2350769A1 (en) 2011-08-03
WO2010037177A1 (en) 2010-04-08
AU2009299116B2 (en) 2015-05-21
AU2009299116A1 (en) 2010-04-08
WO2010037177A8 (en) 2011-05-05
US20110239017A1 (en) 2011-09-29
US8959370B2 (en) 2015-02-17
CA2738990A1 (en) 2010-04-08

Similar Documents

Publication Publication Date Title
JP2012504800A (ja) 異種コンピューティング・システムにおいて実行するためのアプリケーションのスケジューリング
Xie et al. Energy-efficient fault-tolerant scheduling of reliable parallel applications on heterogeneous distributed embedded systems
Lee et al. Minimizing energy consumption for precedence-constrained applications using dynamic voltage scaling
Safari et al. Energy-aware scheduling algorithm for time-constrained workflow tasks in DVFS-enabled cloud environment
Zhang et al. Maximizing reliability with energy conservation for parallel task scheduling in a heterogeneous cluster
Lee et al. Energy conscious scheduling for distributed computing systems under different operating conditions
Jiang et al. Time and energy optimization algorithms for the static scheduling of multiple workflows in heterogeneous computing system
Lee Energy-efficient scheduling of periodic real-time tasks on lightly loaded multicore processors
Pietri et al. Energy-constrained provisioning for scientific workflow ensembles
US8230249B2 (en) Dynamic selection of server states for servers in a cluster of servers
Garg et al. Energy-aware workflow scheduling in grid under QoS constraints
Sharifi et al. PASTA: a power-aware solution to scheduling of precedence-constrained tasks on heterogeneous computing resources
Kessaci et al. Parallel evolutionary algorithms for energy aware scheduling
Kassab et al. Scheduling independent tasks in parallel under power constraints
Peng et al. Energy-aware scheduling of workflow using a heuristic method on green cloud
Terzopoulos et al. Bag-of-task scheduling on power-aware clusters using a dvfs-based mechanism
Kumar et al. A green SLA constrained scheduling algorithm for parallel/scientific applications in heterogeneous cluster systems
Singh et al. Value and energy optimizing dynamic resource allocation in many-core HPC systems
Mezmaz et al. A bi-objective hybrid genetic algorithm to minimize energy consumption and makespan for precedence-constrained applications using dynamic voltage scaling
Liu et al. Intelligent energy-efficient scheduling with ant colony techniques for heterogeneous edge computing
Sahoo et al. An energy-efficient scheduling framework for cloud using learning automata
Kuo et al. Task assignment with energy efficiency considerations for non-DVS heterogeneous multiprocessor systems
Lee et al. On effective slack reclamation in task scheduling for energy reduction
Aziz et al. Power efficient scheduling heuristics for energy conservation in computational grids
Sharma et al. RT-SEAT: A hybrid approach based real-time scheduler for energy and temperature efficient heterogeneous multicore platforms

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20120919

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20131126

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20131127

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20140226

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20140305

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20140527