JP2004252937A - アプリケーション実行のエネルギーを重視したスケジューリング - Google Patents

アプリケーション実行のエネルギーを重視したスケジューリング Download PDF

Info

Publication number
JP2004252937A
JP2004252937A JP2003178770A JP2003178770A JP2004252937A JP 2004252937 A JP2004252937 A JP 2004252937A JP 2003178770 A JP2003178770 A JP 2003178770A JP 2003178770 A JP2003178770 A JP 2003178770A JP 2004252937 A JP2004252937 A JP 2004252937A
Authority
JP
Japan
Prior art keywords
tasks
task
scheduling
procedure
subset
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
JP2003178770A
Other languages
English (en)
Inventor
Gerard Chauvel
ショーヴェル ジェラール
Inverno Dominique D
ディンヴェルノ ドミニク
Serge Lasserre
ラセール セルジュ
Maija Kuusela
クーセラ マイヤ
Gilbert Cabillic
キャビリック ジルベール
Jean-Philippe Lesot
ー フィリップ レソ ジャン
Michel Banatre
バナトル ミシェル
Frederic Parain
パレン フレデリック
Jean-Paul Routeau
− ポール ルトウ ジャン
Salam Majoul
マジョウル サラム
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Texas Instruments Inc
Original Assignee
Texas Instruments Inc
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 Texas Instruments Inc filed Critical Texas Instruments Inc
Publication of JP2004252937A publication Critical patent/JP2004252937A/ja
Pending legal-status Critical Current

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/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
    • 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/3206Monitoring of events, devices or parameters that trigger a change in power modality
    • G06F1/3228Monitoring task completion, e.g. by use of idle timers, stop commands or wait commands
    • 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
    • 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

【課題】多数のプロセッサ上で適切なタスク・スケジューリングを用いることにより節電を図る。
【解決手段】移動機(10)はスケジューラ(20)を用いたタスク(18)を管理し、多数のプロセッサ(12)上でタスクをスケジューリングする。エネルギー節約のため、スケジューリング対象のタスク集合を2つ以上の部分集合に分割し、異なるプロシージャによってスケジューリングする。特定の実施形態では、第1部分集合はタスクを実行するプロセッサに基づきエネルギー消費偏差が最も高いタスクを含み、電力重視のプロシージャによって、またタスクは主にエネルギー消費基準に基づいてスケジューリングされる。エラーがない場合第2部分集合は、リアルタイム拘束プロシージャによりスケジューリングされる。エラーがあった場合、エネルギー消費偏差が最も低い1つ以上のタスクを第1部分集合から第2部分集合に移動し、スケジューリングを繰り返す。
【選択図】 図1

Description

【0001】
【発明の属する技術分野】
本発明は、一般的に処理装置に関し、更に特定すれば、エネルギーを重視したアプリケーション・スケジューリングに関する。
【0002】
【関連技術の説明】
コンピュータ処理および通信の技術の世界において、進化の速度が最も早い技術には、通信機能とコンピューティング機能とを結合したモバイル機器がある。新たな機器は極めて速い速度で進化を遂げ、独占的環境からオープン・プラットフォーム適合に移行しつつあり、更に、第3世代(3G)のワイヤレス・ネットワークが出現して、マルティメディア・プレーヤといった新たなアプリケーションに対応している。しかしながらこの新たな柔軟性および新たなアプリケーションに対応する処理要件は、現行機器が備えることができる性能よりはるかに高い。したがって、一層強力なプロセッサを備えた新たなハードウエア・プラットフォームが導入されている。しかしながら、これらの機器は主に電力消費量という組み込まれたシステム拘束に対処しなければならない。何故なら、強力なプロセッサは、一般に、電力消費型の装置であるからである。
【0003】
エネルギー消費量は、消費者にとって非常に重要である。何故なら、コンピュータ内臓電話、携帯電話、PDA(個人用携帯型情報端末)、および手持ち式コンピュータといったモバイル機器は、有線電話接続に加えて機能すれば割り増し価格で販売される。更に、大きさは消費者がモバイル機器を選択する際の重要な要因となるため、バッテリの大きさは制約される。したがって、製造業者にとってバッテリの大きさを大きくしないで長寿命バッテリの機器を生産することは優先事項である。
【0004】
低消費電力と高性能演算との間でのトレードオフを実現する方法は、OMAPのような異種のマイクロプロセッサ・プラットフォームを使用することである。いくつかの並列プロセッサは、単一のプロセッサに比して、低い方のクロック周波数を用いながら同一の性能を備えるため、電力供給を低下し、結局は電力消費量を低減することができる。
【0005】
しかしながら、ハードウエア・プラットフォームが電力消費量問題を解決するためには、強力なソフトウエアの支援が必要である。殆どのアプリケーションは、マルチプロセッサ・プラットフォーム用にはなされていないため、プラットフォームの並行性を活用することができない。アプリケーションの内部が並列であったとしても、ソフトウエア機構はプロセッサ上で演算分散を行う必要がある。更に、ワイヤレス・アプリケーションのオープン環境方向への進化は、知られていないアプリケーションを動的にダウンロードすることを可能としているが、これにより事前に計算した配置の使用はできなくする。
【0006】
したがって、モバイル通信機器においてアプリケーションの実行を制御しエネルギー消費量を低減する方法および装置が求められている。
【0007】
【課題を解決するための手段】
本発明において、モバイル機器は多数のプロセッサと、プロセッサ上でタスクをスケジューリングするスケジューラとを備えている。スケジューラはタスクを2つの部分集合に分割することによってタスクをスケジューリングする。第1の部分集合は、主として第1集合の重視すべき事項に基づいてタスクをスケジューリングする第1のプロシージャによってスケジューリングされる。第2部分集合は、主として第2集合の重視すべき事項に基づいてタスクをスケジューリングする第2プロシージャによってスケジューリングされる。
【0008】
本発明によって従来技術に優る重要な利点が得られる。多数のプロセッサ上で適切なタスク・スケジューリングを用いることによって節電が図られる。その結果、モバイル通信機器のバッテリ寿命を大幅にのばすことができ、またはバッテリ容量を削減し機器の小型化を図ることができる。タスクのスケジューリングを素早く行ってリアルタイムのオンライン・タスクに対応することができる。
【0009】
【実施例】
本発明は図面の図1−図6に関連させると最もよく理解できよう。種々の図面の同様の要素に対しては同様の番号が用いられている。
【0010】
図1はマルチプロセシング・モバイル機器10の全体ブロック図を示す。PからPn−1までとして表示された多数のプロセッサ12は、トラフィック・コントローラとメモリ・インターフェース16とを介して共有メモリ14に結合されている。プロセッサ12は、例えば、1つ以上の汎用性プロセッサ、ディジタル信号プロセッサ、またはコプロセッサを含むことができる。プロセッサ12は、TからTm−1までとして表示されるタスク18を実行する。スケジューラ20は、どのプロセッサがどのタスクを実行するかを判定する。スケジューラ20は、全体的動作システムの一部であるプロセッサ12の1つの上で実行される場合もある。その他のプロセッサ12の一部または全ては自己の処理システムの元で動作する場合もある。
【0011】
図1の機器10を以下に論ずるについて、タスク集合(T,0≦i≦m−1)は公知であり、以下の情報は、タスク毎に知らされ又は近似することができるものとする。即ち、タスク(D)のデッドライン、各プロセッサ(C,0≦j≦n−1)上でのタスク実行時間、および各プロセッサ(E)上でのタスク毎のエネルギー消費量といった情報である。更に、タスクはいずれもいつでも実行でき、タスクの実行は相互依存しない(即ち、Tの実行はTの完了に依存しない)が、タスク間の依存性は必要に応じスケジューリングに組み込むことが可能であるものとする。
【0012】
表1はスケジューリングされ、2つのプロセッサ12を有する機器上で実行される6個のタスク(TからTまで)の一例を示す。各タスクはいずれのプロセッサ上でも実行可能であるが、タスク実行時に消費されるエネルギー、およびタスク実行に要する時間はプロセッサ間で同じではない。
表1−例1のタスク特性
Figure 2004252937
【0013】
各タスクはデッドライン(D)を有し、この係数はどのプロセッサがタスクを実行するかによって変動することはない。タスクごとの実行時間は、プロセッサによって左右され、Cは、プロセッサP上でのタスク処理時間、Cは、プロセッサP上でのタスクの処理時間である。同様に、各タスクに伴うエネルギー消費量はプロセッサによって左右され、EはプロセッサP上でのタスクのエネルギー消費量、EはプロセッサP上でのタスクのエネルギー消費量である。
【0014】
図2は、第1にリアルタイム拘束に基づいて、第2にパワー消費量に基づいてタスクをスケジューリングするリアルタイム拘束プロシージャのフロー・チャートを示す。リアルタイム拘束プロシージャは、全てのタスクに関連する情報を(表1に示すように)デッドラインが大きくなる順序でソートして、単一リストに格納する。ステップ30では、タスク・インデックスi(最初に“0”に設定する)を用いてタスク集合の所与のタスクを識別する。ステップ30では、プロセッサ・インデックス(最初に“0”に設定する)を用いて所与のプロセッサを識別する。ステップ34で、プロセッサPは、現在のタスクTを実行のための消費量の増加の順序でソートされる。ブロック36、38および40では、タスクを実行するプロセッサが選択される。このループは、タスク用のエネルギー消費の最も少ないプロセッサであって、タスクがデッドライン(D)前に終了されるようにタスク・スケジューリングするために現在使用可能なプロセッサを選択する。従って、電力状況は考慮される。何故なら、プロシージャはこのタスク用の電力効率の高い方のプロセッサから電力効率の低い方のプロセッサにいたるまで各プロセッサを検討し、デッドライン前にタスクを終了することを可能にする第1プロセッサを選択するからである。プロセッサが使用不能の場合(j=n)、プロシージャはブロック42でエラーとなる。
決定ブロック36に戻って、プロセッサが得られた場合、ブロック44において、タスクはスケジューリングされ当該プロセッサ上で実行される。その次のタスクはブロック46において識別され、プロシージャは32に戻り、最終的にブロック48において全てのタスクが実行(i=m)される。
【0015】
このプロシ−ジャの擬似コードを以下に示す。
1.デッドラインの大きくなる順序で選択されたタスクT毎に行う、
2.Tを実行するための消費量の増加順序で選択されたプロセッサP毎に行う、
3.P上で実行されたTがそのデッドライン前に終了すれば、
4.TをそのデッドラインによりP上に置き、次のタスクに進む、
5.であれば終了
6.終了
7.アボート(現タスク用に容認可能な配置が得られなかった)
8.終了
このリアルタイム拘束プロシージャは、電力を重視しないプロシージャに比して電力削減を行うことができるが、いくつかの重要な最適化は行わない。図3は、表1からのデータを用いた時間拘束プロシージャの効果を示し、エネルギーはカッコ内の各タスクによって消費される。リアルタイム拘束プロシージャによって演算されたスケジュールは、全部で137単位の消費量を発生する。
【0016】
図3bは、電力消費量が僅か128である同じタスク集合用の異なるスケジュールを示す。これら2つのスケジュールの主たる差異は、タスクTの配置が原因である。P上でTを実行することによって、P上でTおよびTを更に効率よく実行するための充分な時間が生ずる。この結果、全体的な消費量への寄与はTをP上で実行することによるエネルギー節約よりも強力である。
【0017】
全体的最適化を高めるために、全体的な消費量に最も大きな影響を及ぼす可能性のあるタスクを識別するための基準が導入されている。パワー最適化に大きな影響を与えるそれらのタスクは、必ずしも電力消費量が大きいタスクではなく、むしろプラットフォームの異なるプロセッサ上で消費量間の差が大きくなるタスクである。したがって、δ(T)基準は、2つの(又はそれよりも多い)異なるプロセッサ上で実行されるタスクTの2つの消費量間の差と定義する。数値的に、nがプラットフォーム上のプロセッサの数であるとすれば、δ(T)の定義は以下のとおり。
max(|Ex−Ey|,0≦x≦n−1,0≦y≦n−1)
【0018】
タスクTのδ(T)基準が高まるほど、このタスクは、他のタスクを最適にスケジューリングするためにより重要になると考える必要がある。
【0019】
図4に示すように、電力を重視することを主体としたプロシージャはδ(T)の活用に基づいている。このプロシージャの主たる関心事はδ(T)が高いタスクをうまく配置することである。ブロック50では、プロシージャはタスク・カウンターiを初期化する。ブロック52では、タスクは消費量δ(T)の減少変化の順でソートされる。即ち、プロセッサがそのエネルギー消費量に最も影響を及ぼすタスクを最も早くスケジューリングする。ブロック54では、プロセッサ・カウンタjを初期化する。ブロック56では、プロセッサは、現在のタスクTを実行するための消費量の増加順にソートされる。ブロック58、60および62ではループが形成される。このループにおいては、既にスケジューリングされたタスクが終了するのを妨げずに、(現在のタスク用のエネルギー消費量の増加順に選択された)プロセッサが、タスクにそのデッドライン(D)によって対応できるか否かをプロシージャが判定する。形成できなかった場合、プロシージャは、ブロック64においてエラーとなる。
【0020】
ブロック58においてプロセッサが得られた場合、タスクは最も早いものから最も遅いもの迄のそのデッドラインに基づいてスケジューリングされる。次のタスクがブロック68において識別され、ブロック54において次のタスク用のプロシージャが始まり、最終的にタスクは全てブロック70においてスケジューリングされる。
【0021】
従って、電力を重視することをベースにしたプロシージャは、タスクをδ(T)基準が一番高いタスクからδ(T)基準が一番低いタスクまでタスクを分散させる。電力を重視することをベースにしたプロシージャは、タスクごとに、エネルギー消費量の増加順に各配置を考慮し、このプロセッサに既に割り当てられた他のタスクを考慮して、デッドラインの前にタスク完了を可能とする第1配置を選択する。一時的拘束に対処するため、プロセッサに割り当てられたタスクは全て、最も早いものから最も遅いものまでのそのデッドラインに基づいて実行される。従って、スケジューラは、タスクをプロセッサに割り当てる前に、タスクが、デッドラインの遅い他のタスクがそのデッドラインの前に完了するのを妨げないことを確認する。妨げる場合、プロシージャはこの配置を拒絶しなければならない。
【0022】
このプロシージャの擬似コードを以下に示す。
1.δ(T)減少順にタスク毎に行う
2.T実行のための消費量増加順のプロセッサPごとに行う
3.TをP上に配置することによってT又は既に配置されたタスクにデッドライン・エラーが生じなかった場合、
4.そのデッドラインに基づいてTをP上に置き、次のタスクに進む、
5.であれば終了、
6.終了
7.アボート(現在のタスクに対して容認可能な配置が得られなかった)
8.終了
【0023】
電力を重視したプロシージャは電力削減の性能は良好であるが、多くの場合スケジュールを得ることはできない。表2は、表1に表示のタスクをδ(T)でソートしたものである。説明のため、タスク・インデックスは表1に表示のものと同一である。図5aに表示されているように、電力を重視したプロシージャはタスクTを配置しようとするとアボートする。この問題はプロシージャがTをスケジューリングしようとすると発生する。即ち、TがプロセッサP上に配置されると(既にスケジューリングされた)Tはデッドライン前に終了することができないのに対して、TがプロセッサP上に配置された時は、タスクTはそのスケジュール前に完了することはできない。
表2−例2のタスク特性
Figure 2004252937
【0024】
しかしながら、図5bに表示されるように、このタスク集合の実行可能なスケジュールが存在する。明らかなように、場合によっては消費電力を重視したプロシージャは電力消費量を重視し過ぎ、増加デッドラインによるタスク・リストの順序付けはシステムの行動を一時的に良好とするには不充分である。
【0025】
この点において、主要関心事が反する2つのプロシージャについては、リアルタイム拘束プロシージャのリアルタイム性能は容認可能であるが、実行可能な電力最適化は行わない恐れがあり、電力重視プロシージャは電力最適化の実行は充分であるが、実行可能なスケジュールが存在する場合にはアボートする恐れがある。
【0026】
図6は、2つのプロシージャを結合しそれらの長所を生かし弱点を補償する全体を重視するプロシージャを示す。本発明は所望の基準に基づきタスクをスケジューリングする2つ(又はそれよりも多くの)プロシージャいずれも使用可能であるが、ここでは上述の電力を重視するプロシージャと時間拘束プロシージャとを用いた発明を示す。これら2つのプロシージャの結合はタスク集合を二つの部分集合に分割することによって実現される。その際、第1部分集合はδ(T)基準の最も高いタスクを含み、第2部分集合はデッドラインに基づいてソートされた残りのタスクを含む。第1部分集合は電力を重視するプロシージャによってスケジューリングされるが、第2部分集合はリアルタイム拘束プロシージャによってスケジューリングされる。
【0027】
図6において、状態80でタスク集合を2つの部分集合に分割する。タスク分割の基準については以下で論ずる。状態82では、タスクの第1部分集合が電力を重視したプロシージャによってスケジューリングされ、かかるスケジューリングから最も利益を得るタスク、即ちδ(T)基準が高いタスク用エネルギー消費量に対し最良のスケジューリングを行う。第1部分集合をスケジューリングする際デッドラインに遅れなければ、タスクの第2部分集合は状態84においてリアルタイム拘束プロシージャによってスケジューリングされる。いずれかの部分集合スケジューリングがデッドラインに遅れる結果になると、状態86において分割が変更され、1つ以上のタスクが第1部分集合から第2部分集合に切替えられる。デッドラインに遅れることなく双方の部分集合のスケジューリングが一旦完了すると、スケジューリングは状態88において完了する。
【0028】
電力重視のプロシージャは、スケジューラが負荷の軽いプロセッサ上で作用する時にはかなりの電力削減が可能となる。そのため、全体を重視するプロシージャは電力を重視するプロシージャを利用し始める。この方策によれば、全体を重視するプロシージャは、タスクをδ(T)の最も高いタスクを考慮し始める。しかし、リアルタイム拘束プロシージャの方策と共に起こるリアルタイム性能の問題を防止するため、タスクの部分集合だけを電力を重視したプロシージャと一緒に配置する。この部分集合が一旦スケジューリングされると、全体を重視するプロシージャはリアルタイム拘束プロシージャの方策に切り替わり、残りのタスクをそのデッドラインに基づいて考慮し、増加デッドラインの順序でそれらを配置する。全体を重視するプロシージャの擬似コードを以下に示す。
1:終了<‐‐誤り
2.最初のタスク分割を選択して2つの部分集合へ
3.繰り返す
4.電力基準プロシージャを第1部分集合に用いる
5.デッドラインに遅れない場合
6.リアルタイム拘束プロシージャを第2部分集合に用いる
7.デッドラインに遅れない場合、
8.終了<‐‐正しい
9:その他:
10.新たなタスク分割を計算する
11:であれば終了
12:その他
13:新たなタスク分割を計算する
14:であれば終了
15:終了するまで=正しい
【0029】
電力を大幅に削減し、リアルタイムを良好とするためには、2つの部分集合を生成する必要がある。何故なら、所与のmタスク集合に対し、2の異なった組み合わせが可能であり、プロシージャはリアルタイム・イベントをスケジューリングするために使用されることを目指すために、そのタスクのスケジューリングを素早く行わなければならない。実行可能な分割を全て考慮し、電力削減と性能との間の最善のトレードオフを判定することは不可能であるため、好適な実施形態では、サーチとテストの方策が用いられている。計算のスケジューリングによって生じるオーバーヘッドは、システム性能にとって常に重要な問題であり、特にそれがオンラインのリアルタイムのスケジューリング時は重要であることから、プロシージャが考慮しなければならない分割の数は限定される。
【0030】
初期のタスク分割の選択、およびタスクを第1部分集合から第2部分集合への移動の仕方はプロシージャの複雑さに影響する。プロシージャの一実施態様では、最初の分割で全てのタスクを第1部分集合に入れ、第2部分集合は空とする。タスクを第1部分集合から第2部分集合へ1つずつ移動する場合、プロシージャのこの実施態様は0(m)の複雑さを有し、ここでmはタスクの数である。スケジューラのエラー時に第1部分集合のタスクの半分を第2部分集合に移動させることに方策を変更した場合、複雑さは0(m.log(m))に減少する。
【0031】
本発明は、ここではタスクをエネルギー節約およびリアルタイム拘束という目標に基づいたタスク分割として論じてきたが、タスクの分割は、またオペレーティング・システム設計者によるその他の拘束とバランスを取るためにも用いられる。
【0032】
リアル・システムにおいて全体を重視したプロシージャを実現するためには一定の適応が求められる。主たる修正は定期的なタスクの対応である。定期的なタスクは、新たなタスクの定期的な出現と看做される。1つのタスクが完了すると、それはタスク集合から除去される。従って、スケジューラが処理するタスク集合は時間と共に変化する。新たなタスクがタスク集合に加えられる毎に、新たなスケジュールが以下の方法で算出される。
1.実行が既に開始されたタスクは全てその実行を開始したプロセッサの上に配置される。
2.その他のタスクは全て、既に配置されたタスクを考慮しながら、全体を重視するスケジュール・プロシージャを用いて配置される。
【0033】
本発明によって従来技術に優る重要な利点が得られる。多数のプロセッサ上で適切なタスク・スケジューリングを用いることによって節電が図られる。その結果、モバイル通信機器のバッテリ寿命を大幅にのばすことができ、またはバッテリ容量を削減し機器の小型化を図ることができる。タスクのスケジューリングを素早く行ってリアルタイムのオンライン・タスクに対応することができる。
【0034】
本発明の詳細な説明は実施形態のいくつかの例を対象としたが、これらの実施形態の種々の修正物および代替実施形態が当業者に提示されよう。本発明は特許請求の範囲に収まるあらゆる修正物又は代替実施形態を含む。
【図面の簡単な説明】
本発明およびその利点を一層完璧に理解するため、添付図面と一緒に行った以下の説明を参照する。
【図1】スケジューラを用いて多数のプロセッサ上でタスクをスケジューリングしエネルギー消費量を削減するモバイル通信機器のブロック図。
【図2】主として一時的基準に基づいてタスクをスケジューリングするリアルタイム拘束プロシージャの操作を説明するフロー・チャート。
【図3】aはデータの一例の上でリアルタイム拘束プロシージャを使用したスケジューリング結果。
bはリアルタイム拘束プロシージャによるのではないエネルギー節約最適化を有するスケジュール。
【図4】主としてエネルギー消費量基準に基づいてタスクをスケジューリングする電力を重視したプロシージャの操作を説明するフロー・チャート。
【図5】aはエラー結果となった図3aのデータ例の上で電力を重視したプロシージャを用いたスケジューリング結果。bは電力を重視したプロシージャによるのではないエラーなしスケジューリング。
【図6】図4の電力を重視したプロシージャと図2のリアルタイム拘束のプロシージャとを組み込みエネルギー節約を最適化し、且つスケジューリング・エラーを低減させる全体重視のプロシージャの状態図。

Claims (8)

  1. モバイル機器であって、
    多数のプロセッサと、
    前記プロセッサ上でタスクをスケジューリングするスケジューラと、
    を備え、前記スケジューラは、
    前記タスクの2つの部分集合への分割と、
    主として第1集合の重視すべき事項の上でタスクをスケジューリングする第1プロシージャによる前記第1部分集合のスケジューリングと、
    主として第2集合の重視すべき事項の上でタスクをスケジューリングする第2プロシージャによる前記第2部分集合のスケジューリングと、
    によってスケジューリングを行うモバイル機器。
  2. 多数のプロセッサを備えたモバイル機器上で多数のタスクをスケジューリングする方法であって、
    前記タスクを2つの部分集合に分割するステップと、
    主として第1集合の重視すべき事項の上でタスクをスケジューリングする第1プロシージャによって前記第1部分集合をスケジューリングするステップと、
    主として第2集合の重視すべき事項の上でタスクをスケジューリングする第2プロシージャによって前記第2部分集合をスケジューリングするステップと、
    から成る方法。
  3. 請求項1記載のモバイル機器又は請求項2記載の方法において、前記第1集合の重視すべき事項がエネルギー節約に基づいている、モバイル機器又は方法。
  4. 請求項3記載のモバイル機器又は方法において、前記第1プロシージャが前記プロセッサの異なるもの上での各タスクのスケジューリングに基づいてエネルギー消費量の変化を規定するタスクのそれぞれに関係付けられたエネルギー偏差基準の順序でタスクをスケジューリングする、モバイル機器又は方法。
  5. 請求項1ないし3のいずれか1項に記載のモバイル機器又は方法において、前記第2集合の重視すべき事項が前記タスクに関係付けられたデッドラインに基づいた、モバイル機器又は方法。
  6. 請求項5記載のモバイル機器又は方法において、前記第2プロシージャが前記タスクに関係付けられたデッドラインの順序でタスクをスケジューリングする、モバイル機器又は方法。
  7. 前記1ないし5のいずれか1項に記載のモバイル機器又は方法において、タスクがスケジューリング・エラーに応答して前記第2部分集合から前記第2部分集合に移動する、モバイル機器又は方法。
  8. 請求項6記載のモバイル機器又は方法において、前記第1部分集合が最も高いエネルギー偏差のタスクを含む、モバイル機器又は方法。
JP2003178770A 2002-05-20 2003-05-20 アプリケーション実行のエネルギーを重視したスケジューリング Pending JP2004252937A (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US10/151,282 US8032891B2 (en) 2002-05-20 2002-05-20 Energy-aware scheduling of application execution

Publications (1)

Publication Number Publication Date
JP2004252937A true JP2004252937A (ja) 2004-09-09

Family

ID=29400503

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2003178770A Pending JP2004252937A (ja) 2002-05-20 2003-05-20 アプリケーション実行のエネルギーを重視したスケジューリング

Country Status (3)

Country Link
US (1) US8032891B2 (ja)
EP (1) EP1365312A1 (ja)
JP (1) JP2004252937A (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008541302A (ja) * 2005-05-18 2008-11-20 株式会社エヌ・ティ・ティ・ドコモ 複数のプロセッサを備える機器上でのxslt処理における文書内並列処理をサポートする方法
JP2009527828A (ja) * 2006-02-17 2009-07-30 クゥアルコム・インコーポレイテッド マルチプロセッサのアプリケーションサポートのためのシステムおよび方法
JP2018200603A (ja) * 2017-05-29 2018-12-20 富士通株式会社 タスク配備プログラム、タスク配備方法、およびタスク配備装置

Families Citing this family (31)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050132239A1 (en) * 2003-12-16 2005-06-16 Athas William C. Almost-symmetric multiprocessor that supports high-performance and energy-efficient execution
US7805591B2 (en) 2004-03-03 2010-09-28 Telefonaktiebolaget Lm Ericsson (Publ) Method and system for dual-core processing
JP4410661B2 (ja) * 2004-11-09 2010-02-03 株式会社日立製作所 分散制御システム
WO2006062270A1 (en) * 2004-12-08 2006-06-15 Electronics And Telecommunications Research Institute Power management method for platform and that platform
US8607235B2 (en) 2004-12-30 2013-12-10 Intel Corporation Mechanism to schedule threads on OS-sequestered sequencers without operating system intervention
JP4727370B2 (ja) * 2005-09-29 2011-07-20 京セラ株式会社 無線通信端末およびその制御方法
US8108863B2 (en) 2005-12-30 2012-01-31 Intel Corporation Load balancing for multi-threaded applications via asymmetric power throttling
US7853949B2 (en) * 2006-03-13 2010-12-14 International Business Machines Corporation Method and apparatus for assigning fractional processing nodes to work in a stream-oriented computer system
GB2439104A (en) * 2006-06-15 2007-12-19 Symbian Software Ltd Managing power on a computing device by minimising the number of separately activated timer events such that the device is powering up less often.
KR100834408B1 (ko) * 2006-09-14 2008-06-04 한국전자통신연구원 분산처리시스템에서의 태스크 할당방법 및 시스템
US7844839B2 (en) * 2006-12-07 2010-11-30 Juniper Networks, Inc. Distribution of network communications based on server power consumption
US8265712B2 (en) 2007-04-13 2012-09-11 Nokia Corporation Multiradio power aware traffic management
US20110099404A1 (en) * 2008-06-25 2011-04-28 Nxp B.V. Electronic device, method of controlling an electronic device, and system-on-chip
US20100058086A1 (en) * 2008-08-28 2010-03-04 Industry Academic Cooperation Foundation, Hallym University Energy-efficient multi-core processor
US8214843B2 (en) * 2008-09-03 2012-07-03 International Business Machines Corporation Framework for distribution of computer workloads based on real-time energy costs
JP5245722B2 (ja) * 2008-10-29 2013-07-24 富士通株式会社 スケジューラ、プロセッサシステム、プログラム生成装置およびプログラム生成用プログラム
KR101622168B1 (ko) * 2008-12-18 2016-05-18 삼성전자주식회사 실시간 스케쥴링 방법 및 이를 이용한 중앙처리장치
US8316368B2 (en) * 2009-02-05 2012-11-20 Honeywell International Inc. Safe partition scheduling on multi-core processors
US20110071780A1 (en) * 2009-09-21 2011-03-24 Nokia Corporation Method and apparatus for displaying at least one indicator related to a projected battery lifespan
US8423799B2 (en) * 2009-11-30 2013-04-16 International Business Machines Corporation Managing accelerators of a computing environment
US8776066B2 (en) * 2009-11-30 2014-07-08 International Business Machines Corporation Managing task execution on accelerators
US8381004B2 (en) 2010-05-26 2013-02-19 International Business Machines Corporation Optimizing energy consumption and application performance in a multi-core multi-threaded processor system
US20120210150A1 (en) * 2011-02-10 2012-08-16 Alcatel-Lucent Usa Inc. Method And Apparatus Of Smart Power Management For Mobile Communication Terminals
DE102012222215A1 (de) * 2012-12-04 2014-06-05 Robert Bosch Gmbh Verfahren zum Betreiben einer echtzeitkritischen Anwendung auf einem Steuergerät
JP6175980B2 (ja) * 2013-08-23 2017-08-09 富士通株式会社 Cpuの制御方法、制御プログラム、情報処理装置
CN105453044B (zh) * 2013-09-19 2020-06-12 英特尔公司 用于分布式处理任务部分指配的技术
GB2519080B (en) * 2013-10-08 2021-04-14 Arm Ip Ltd Scheduling function calls
US9323574B2 (en) 2014-02-21 2016-04-26 Lenovo Enterprise Solutions (Singapore) Pte. Ltd. Processor power optimization with response time assurance
WO2015151548A1 (ja) * 2014-04-03 2015-10-08 ソニー株式会社 電子機器および記録媒体
US20150355942A1 (en) * 2014-06-04 2015-12-10 Texas Instruments Incorporated Energy-efficient real-time task scheduler
US20220283856A1 (en) * 2021-03-04 2022-09-08 Dell Products L.P. Sustainability and efficiency as a service

Family Cites Families (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS59231966A (ja) * 1983-06-14 1984-12-26 Tamura Electric Works Ltd 公衆電話機の処理制御方式
US5179702A (en) * 1989-12-29 1993-01-12 Supercomputer Systems Limited Partnership System and method for controlling a highly parallel multiprocessor using an anarchy based scheduler for parallel execution thread scheduling
US5887143A (en) * 1995-10-26 1999-03-23 Hitachi, Ltd. Apparatus and method for synchronizing execution of programs in a distributed real-time computing system
US5790817A (en) 1996-09-25 1998-08-04 Advanced Micro Devices, Inc. Configurable digital wireless and wired communications system architecture for implementing baseband functionality
US6353844B1 (en) * 1996-12-23 2002-03-05 Silicon Graphics, Inc. Guaranteeing completion times for batch jobs without static partitioning
JP3037182B2 (ja) * 1997-02-17 2000-04-24 日本電気株式会社 タスク管理方式
US6112023A (en) * 1997-02-24 2000-08-29 Lucent Technologies Inc. Scheduling-based hardware-software co-synthesis of heterogeneous distributed embedded systems
FI108478B (fi) * 1998-01-21 2002-01-31 Nokia Corp Sulautettu jõrjestelmõ
US6112225A (en) * 1998-03-30 2000-08-29 International Business Machines Corporation Task distribution processing system and the method for subscribing computers to perform computing tasks during idle time
US6243788B1 (en) * 1998-06-17 2001-06-05 International Business Machines Corporation Cache architecture to enable accurate cache sensitivity
US6112221A (en) * 1998-07-09 2000-08-29 Lucent Technologies, Inc. System and method for scheduling web servers with a quality-of-service guarantee for each user
US6591287B1 (en) * 1999-09-08 2003-07-08 Lucent Technologies Inc. Method to increase the efficiency of job sequencing from sequential storage
US20020019843A1 (en) 2000-04-26 2002-02-14 Killian Robert T. Multiprocessor object control
US7140022B2 (en) * 2000-06-02 2006-11-21 Honeywell International Inc. Method and apparatus for slack stealing with dynamic threads
EP1182538B1 (en) 2000-08-21 2010-04-07 Texas Instruments France Temperature field controlled scheduling for processing systems
EP1182552A3 (en) * 2000-08-21 2003-10-01 Texas Instruments France Dynamic hardware configuration for energy management systems using task attributes
US7234126B2 (en) * 2000-08-23 2007-06-19 Interuniversitair Microelektronica Centrum Task concurrency management design method
JP2002099432A (ja) * 2000-09-22 2002-04-05 Sony Corp 演算処理システム及び演算処理制御方法、タスク管理システム及びタスク管理方法、並びに記憶媒体
US6910139B2 (en) * 2000-10-02 2005-06-21 Fujitsu Limited Software processing apparatus with a switching processing unit for displaying animation images in an environment operating base on type of power supply
DE60143707D1 (de) 2000-10-31 2011-02-03 Millennial Net Inc Vernetztes verarbeitungssystem mit optimiertem leistungswirkungsgrad
US20020073129A1 (en) * 2000-12-04 2002-06-13 Yu-Chung Wang Integrated multi-component scheduler for operating systems
US6986066B2 (en) * 2001-01-05 2006-01-10 International Business Machines Corporation Computer system having low energy consumption
US7043557B2 (en) * 2001-06-29 2006-05-09 Hewlett-Packard Development Company, L.P. Low power scheduling for multimedia systems
US20030061260A1 (en) * 2001-09-25 2003-03-27 Timesys Corporation Resource reservation and priority management
US8645954B2 (en) * 2001-12-13 2014-02-04 Intel Corporation Computing system capable of reducing power consumption by distributing execution of instruction across multiple processors and method therefore

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008541302A (ja) * 2005-05-18 2008-11-20 株式会社エヌ・ティ・ティ・ドコモ 複数のプロセッサを備える機器上でのxslt処理における文書内並列処理をサポートする方法
JP2009527828A (ja) * 2006-02-17 2009-07-30 クゥアルコム・インコーポレイテッド マルチプロセッサのアプリケーションサポートのためのシステムおよび方法
JP2018200603A (ja) * 2017-05-29 2018-12-20 富士通株式会社 タスク配備プログラム、タスク配備方法、およびタスク配備装置

Also Published As

Publication number Publication date
US8032891B2 (en) 2011-10-04
US20030217090A1 (en) 2003-11-20
EP1365312A1 (en) 2003-11-26

Similar Documents

Publication Publication Date Title
JP2004252937A (ja) アプリケーション実行のエネルギーを重視したスケジューリング
Geng et al. Energy-efficient computation offloading for multicore-based mobile devices
Wang et al. A DVFS based energy-efficient tasks scheduling in a data center
EP3155521B1 (en) Systems and methods of managing processor device power consumption
JP3790743B2 (ja) コンピュータ・システム
US7529958B2 (en) Programmable power transition counter
Bhatti et al. An inter-task real time DVFS scheme for multiprocessor embedded systems
US20130007492A1 (en) Timer interrupt latency
US9323306B2 (en) Energy based time scheduler for parallel computing system
US8812761B2 (en) System and method for adjusting power usage to reduce interrupt latency
KR20170062493A (ko) 이종 스레드 스케줄링
CN1620645A (zh) 用于无线系统中定时及事件处理的方法和装置
JP2012504800A (ja) 異種コンピューティング・システムにおいて実行するためのアプリケーションのスケジューリング
Niu et al. Energy minimization for real-time systems with (m, k)-guarantee
KR20130004502A (ko) 프로세서에서 스레드들을 실행하는 시스템 및 방법
Li et al. Energy-aware scheduling for frame-based tasks on heterogeneous multiprocessor platforms
JP2005285093A (ja) プロセッサ電力制御装置及びプロセッサ電力制御方法
JP2008077563A (ja) 電子機器およびcpu動作環境制御プログラム
Raghunathan et al. Adaptive power-fidelity in energy-aware wireless embedded systems
Benoit et al. Performance and energy optimization of concurrent pipelined applications
EP3278220A1 (en) Power aware scheduling and power manager
US20030177163A1 (en) Microprocessor comprising load monitoring function
El Ghor et al. Energy efficient scheduler of aperiodic jobs for real-time embedded systems
Niu et al. Peripheral–Conscious energy–Efficient scheduling for weakly hard real–time systems
WO2010137233A1 (ja) マルチプロセッサシステムにおける省電力制御装置およびモバイル端末

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20060522

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20081205

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20081212

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20090602