(57)【要約】【課題】電力消費を管理できるシステム及び方法が得られる。【解決手段】実行される複数のソフトウェアプログラムＡ０−Ａ２を識別し、１以上のソフトウェアプログラムは多数の実行モードを有し、各ソフトウェアプログラムの各実行モードは関連される電力プロフィール230−232を有し、多数の実行モードを有する各ソフトウェアプログラムに対して、前記関連される電力プロフィールに基づいて前記実行モードの１つを選択し、前記選択された実行モードにしたがって、前記ソフトウェアプログラムを実行する各ステップを含んでいる方法を提供する。【選択図】      図２
2007280380.tif 000002
【特許請求の範囲】
【請求項１】
実行される複数のソフトウェアプログラムを識別し、１以上のソフトウェアプログラムは多数の実行モードを有し、各ソフトウェアプログラムの各実行モードは関連される電力プロフィールを有し、
多数の実行モードを有する各ソフトウェアプログラムに対して、前記関連される電力プロフィールに基づいて前記実行モードの１つを選択し、
前記選択された実行モードにしたがって、前記ソフトウェアプログラムを実行する各ステップを含んでいる方法。
【請求項２】
１以上の前記ソフトウェアプログラムに対して、前記実行モードは、遅延実行モードを含んでいる請求項１記載の方法。
【請求項３】
１以上の前記ソフトウェアプログラムに対して、前記実行モードは、前記対応するソフトウェアプログラムの命令が減少された速度で実行される延長実行モードを含んでいる請求項１記載の方法。
【請求項４】
１以上の前記ソフトウェアプログラムに対して、前記実行モードは、前記対応するソフトウェアプログラムが減少された数のプロセッサ動作を含むように変更されている減少動作モードを含んでいる請求項１記載の方法。
【請求項５】
前記ソフトウェアプログラムの第１のプログラムの実行モードの選択は、複数のプログラムモジュールの１つの選択を含み、各プログラムモジュールは前記関連される実行モードのうちの対応するモードで実行する前記ソフトウェアプログラムの第１のプログラムのバージョンを含んでいる請求項１記載の方法。
【請求項６】
前記方法は、複数のプロセッサコアを有するマルチプロセッサシステムで行われ、前記ソフトウェアプログラムの実行モードの選択は、前記マルチプロセッサシステムの電力割当て量内に適合する関連された電力プロフィールを有する実行モードの選択を含んでいる請求項１記載の方法。
【請求項７】
さらに、前記マルチプロセッサシステムから受信された電力情報に基づいて、前記電力割当て量を識別するステップを含んでいる請求項６記載の方法。
【請求項８】
さらに、前記プロセッサコアにより実行するための１以上のダミープログラムの選択を含み、前記ダミープログラムの前記実行モードは前記プロセッサコアにより引出される総電流の変化の大きさを減少させるように選択される請求項６記載の方法。
【請求項９】
さらに、前記プロセッサコアにより実行するための１以上のダミープログラムの選択を含み、前記ダミープログラムの前記実行モードは、前記マルチプロセッサシステムが構成されている集積回路チップに印加される電圧の変化を最小にするように選択される請求項６記載の方法。
【請求項１０】
複数のソフトウェアプログラムを同時に実行するように構成されているデータプロセッサと、
前記データプロセッサに接続されている電力管理装置とを具備し、
１以上の前記ソフトウェアプログラムは多数の実行モードを有し、各ソフトウェアプログラムの各実行モードは関連される電力プロフィールを有し、
前記電力管理装置は、前記関連される電力プロフィールに基づいて前記１以上のソフトウェアプログラムのそれぞれに対して前記実行モードの１つを選択するように構成され、
前記データプロセッサは前記電力管理装置により選択された前記実行モードを使用して、前記複数のソフトウェアプログラムを実行するように構成されているシステム。
【請求項１１】
１以上の前記ソフトウェアプログラムに対して、前記実行モードは、遅延実行モードを含んでいる請求項１０記載のシステム。
【請求項１２】
１以上の前記ソフトウェアプログラムに対して、前記実行モードは、前記対応するソフトウェアプログラムの命令が、減少された速度で実行される延長実行モードを含んでいる請求項１０記載のシステム。
【請求項１３】
１以上の前記ソフトウェアプログラムに対して、前記実行モードは、前記対応するソフトウェアプログラムが、減少された数のプロセッサ動作を含むように変更されている減少動作モードを含んでいる請求項１０記載のシステム。
【請求項１４】
前記電力管理装置は、複数のプログラムモジュールの１つを選択することによって、前記ソフトウェアプログラムの第１のプログラムに対する前記実行モードを選択するように構成され、各前記プログラムモジュールは前記関連される実行モードのうちの対応するモードで実行する前記ソフトウェアプログラムの第１のプログラムのバージョンを含んでいる請求項１０記載のシステム。
【請求項１５】
前記システムデータプロセッサのマルチプロセッサシステムは複数のプロセッサコアを有し、前記マルチプロセッサシステムの電力割当て量内に適合する関連された電力プロフィールを有する実行モードを選択することにより、前記ソフトウェアプログラムに対する前記実行モードを選択するように構成されている請求項１０記載のシステム。
【請求項１６】
前記電力管理装置は、前記マルチプロセッサシステムから受信された電力情報に基づいて、前記電力割当て量を識別するように構成されている請求項１５記載のシステム。
【請求項１７】
前記電力管理装置は、前記プロセッサコアにより実行するための１以上のダミープログラムを選択して、それによって前記プロセッサコアにより引出される総電流における変化の大きさを減少させるように構成される請求項１５記載のシステム。
【請求項１８】
前記電力管理装置は、前記プロセッサコアにより実行するための１以上のダミープログラムを選択して、それによって前記マルチプロセッサシステムが構成されている集積回路チップに印加される電圧の変化を最小にするように構成されている請求項１５記載のシステム。
【請求項１９】
前記電力管理装置は、前記マルチプロセッサシステムのハードウェアコンポーネントを具備している請求項１０記載のシステム。
【請求項２０】
前記電力管理装置は、前記マルチプロセッサシステムにより実行されるソフトウェアを有している請求項１０記載のシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、一般的に電子装置に関し、特にソフトウェアプログラムを適切にスケジュールすることによって、データプロセッサ中の電力消費を管理するシステム及び方法に関する。
【背景技術】
【０００２】
マイクロプロセッサのような集積回路は益々複雑になっている。これらの装置を形成する回路コンポーネント（例えばトランジスタ、ダイオード、抵抗等）は同時に益々小型になり、それによりさらに多くの機能が特定の集積回路により実行されることができる。回路コンポーネント及び機能の数の増加につれて、これらの集積回路により典型的に消費される電力量も典型的に増加する。回路の電力消費の増加によって、回路内で発生される熱量もまた増加する。この熱は装置の性能に影響する可能性があり、装置の故障を生じる可能性さえもある。
【０００３】
限定された電力の割当て量と、電子装置中の増加した熱量の発生により生じる危険性の結果として、これらの装置内の電力消費および温度の管理は益々重要になっている。装置はしばしば、電力と温度の管理を考慮して設計されており、これらの条件の制御を助けるための種々のハードウェア特徴を含むことができる。例えば、装置は過剰な電力消費または高い温度を検出するための回路と、装置により行われる動作速度または動作回数を減少させるための制御システムを含むことができ、それによって装置の消費電力と温度を減少させている。
【発明の開示】
【発明が解決しようとする課題】
【０００４】
これらの装置の電力消費および温度を減少する装置の設計に対して、非常に多くの労力が費やされているが、装置によって実行されるソフトウェアに焦点を当てた努力は比較的少ない。例えば、装置は使用する電力が減少されたトランジスタで構成されることができ、或いはこれらは使用しないコンポーネントを遮断することもできる。しかしながらソフトウェアプログラムが実行されるとき、行われている電力及び温度状態にかかわりなく（例えばプログラムの実行に使用される電力が装置の電力割当て量を超えているか否かにかかわりなく）プログラムの実行は典型的に同じ方法で進行する。
【０００５】
それ故、ソフトウェアプログラムの電力特性（例えば、時間の関数としての電力要求）を識別し、この情報に基づいて、電力が消費される方法（および熱が実行している装置で発生する方法）を改良するようにプログラムが実行される方法を制御するシステム及び方法を提供することが望まれている。
【課題を解決するための手段】
【０００６】
前述した１以上の問題は、本発明の種々の実施形態によって解決することができる。概説すると、本発明はソフトウェアプログラムの電力使用特性を識別し、その情報をソフトウェアプログラムが実行される方法を決定するために使用し、それによってプログラムを実行する装置内の電力の管理を改良するためのシステム及び方法を含んでいる。
【０００７】
１実施形態は、プログラムの実行に関連される電力消費を改良するためにソフトウェアプログラムの実行モードを選択するための方法を含んでいる。この方法は実行される複数のプログラムの識別を含んでおり、ここでそのプログラムは多数の実行モードを有することができる。各プログラムの各実行モードは関連された電力プロフィールを有する。各プログラムに対する実行モードは関連された電力プロフィールにしたがって選択され、その後選択された実行モードにしたがって実行される。
【０００８】
１実施形態では、実行モードはプログラムの遅延された実行、（対応するソフトウェアプログラムの命令が減少された速度で実行される）プログラムの延長された実行、減少された数のプロセッサ命令または動作の実行等を含むことができる。１実施形態では、プログラムの実行モードは多数のプログラムモジュールの１つを選ぶことにより選択され、各プログラムモジュールは実行モードのうちの対応するモードで実行するプログラムのバージョンを含んでいる。その方法は例えば多数のプロセッサコアを有するマルチプロセッサシステムで行われることができる。この実施形態における実行モードはマルチプロセッサの電力割当て量内に収まるように選択されることができる。この電力割当て量は、マルチプロセッサから受信される電力情報に基づいて電力管理装置によって決定されることができる。１実施形態では、その方法はプロセッサコアにより引出される総電流についての変化の大きさを減少させるために、或いはマルチプロセッサが構成されている集積回路チップに与えられる電圧の変化を最小にするために、１以上のダミープログラムの選択及び実行を含むことができる。
【０００９】
別の実施形態はデータプロセッサ及び電力管理装置を含むシステムを備えている。データプロセッサは多数のソフトウェアプログラムを同時に実行するように構成されている。電力管理装置は、実行モードに関連される電力プロフィールに基づいて、実行されるプログラムの実行モードを選択するように構成されている。電力管理装置は遅延実行モード、延長実行モード（減少された実行速度）モード、減少された命令モード、変更された命令モード等のような実行モードを選択することができる。電力管理装置は実行パラメータ等の設定により、実行モードにしたがって実行されるように構成されたプログラムモジュールを選択することにより、実行モードを選択することができる。データプロセッサは複数のプロセッサコアを有するマルチプロセッサであってもよく、電力管理装置はマルチプロセッサの電力割当て量内に適合するように実行モードを選択することができる。この電力割当て量は、マルチプロセッサから受信された電力情報に基づいて、電力管理装置により決定されることができる。電力管理装置は、プロセッサコアにより引出される総電流中の変化の大きさを減少させるために、或いはマルチプロセッサが構成されている集積回路チップに与えられる電圧の変化を最小にするために、ダミープログラムを選択することができる。
【００１０】
多数の付加的な実施形態もまた可能である。
【発明の効果】
【００１１】
この発明によれば、電力消費を管理できるシステム及び方法が得られる。
【発明を実施するための最良の形態】
【００１２】
本発明のその他の目的および利点は、以下の詳細な説明を読み、添付図面を参照するときさらに明瞭になるであろう。  
本発明は種々の変形および別の形態が可能であるが、その特定の実施形態を図面に例示し、詳細な説明によって示す。図面および詳細な説明は、記載された特定の実施形態に本発明を限定する意図はないことを理解すべきである。この開示は、特許請求の範囲に規定されている本発明の技術的範囲内に含まれる全ての変形、等価物、置換をカバーすることを意図している。
【００１３】
本発明の１以上の好ましい実施形態を以下説明する。以下説明するこれらおよび任意のその他の実施形態は例示であり、本発明を限定するものではなく、本発明を説明することを意図していることに注意すべきである。
【００１４】
概説すると、本発明は、ソフトウェアプログラムの電力使用特性を識別し、ソフトウェアプログラムが実行される方法を決定するためにその情報を使用し、それによってプログラムを実行する装置内の電力の管理を改良するためのシステム及び方法を含んでいる。
【００１５】
１実施形態では、マイクロプロセッサは多数のプロセッサコアおよび電力管理システムを具備している。マイクロプロセッサは限定された電力割当て量を有し、したがって電力管理システムは最適の電力使用を実現するために、ソフトウェアプログラムのセットが如何にしてプロセッサコアにより実行されることのできるかを決定するように設計される。
【００１６】
１実施形態では、ソフトウェアプログラムは幾つかの異なる方法で実行されることができる。例えば、プログラムは標準モードで、減少された電力モードで、または延長された時間モードで実行されることができる。標準モードでは、プログラムは通常のプロセッサで実行される方法と同じ方法で実行され、即ち命令を受信したときに実行を開始し、プログラム中の各命令は順次実行され、実行はプログラム中の最後の命令が実行された後に終了する。減少された電力モードでは、プログラムは標準モードよりも行われる動作数を少なくする方法で実行され、それによってプログラムにより使用される電力を減少させる。例えば、プログラムが画像を処理するように設計されているならば、減少された電力モードのプログラムは標準モードよりも低い解像度で画像を処理する。代わりに、延長された時間モードでは、プログラムはそのプログラムの電力消費を減少するため、減少された速度で実行されることができる（即ち単位時間当り少ない数の命令が実行されることができる）。
【００１７】
この実施形態では、マイクロプロセッサの電力管理システムは、プログラムの実行におけるプロセッサコアの電力使用が電力割当て量内であるようにするために、マイクロプロセッサの電力割当て量（最大の許容可能な電力使用量）を決定し、その後、各ソフトウェアプログラムの実行のモードを選択するように構成される。例えば、同時に４つのプログラムの実行を開始するためにしきい値電力を超えたならば、電力管理システムはプログラムの１つが遅延後に実行を開始するようにスケジュールすることができる（遅延実行モード）。その代わりに、電力管理システムは、４つのプログラムの総電力消費がしきい値電力よりも低い状態であるように１以上のプログラムに対して減少された電力モードを選択することができる。
【００１８】
図１を参照すると、１実施形態によるシステム構造を示す機能ブロック図が示されている。図１のシステムは、メモリ110、電力管理装置120、データプロセッサ130を含んでいる。メモリ110中に記憶されているソフトウェアプログラムは、電力管理装置120の制御によって、データプロセッサ130に与えられ、そこで実行される。
【００１９】
メモリ110は種々の異なるソフトウェアプログラム（例えば111）を記憶している。これらの各プログラムはそれに関連される電力プロフィール（例えば112）を有する。電力プロフィールは対応するソフトウェアプログラムの電力使用特性を識別する。電力プロフィールは多くの異なる形態と多くの異なる詳細のレベルを有することができる。幾つかの実施形態では、例えば電力プロフィール情報は時間（または命令カウンタ）の関数として電力使用値を含むことができる。他の実施形態では、電力プロフィール情報は、プログラムによってプロセッサコアが予め決定されたしきい値電力レベルを超過する点、またはプログラムによってプロセッサコアが予め決定されたしきい値電力レベルを超過する回数の単なるカウントのような、しきい値超過情報を含むことができる。以下の説明は主として電力対時間のデータを使用する実施形態に注目し、これは対応するグラフにより容易に表される。電力プロフィールに対する参照は、対応するソフトウェアプログラムの特性である任意の適切なタイプの電力情報を含むものと解釈されるべきである。
【００２０】
図１のメモリ110は典型的に多くのソフトウェアプログラムを記憶することに注意すべきである。説明を明瞭にする目的で、これらのプログラムのうちの１つだけが、図１に明確に示されている。メモリ110は少なくとも幾つかのソフトウェアプログラムの多数のバージョンを記憶することにも注意すべきである。所定のソフトウェアプログラムの各バージョンはある意味で他とは異なっている。これらの差によってプログラムの異なるバージョンは異なる特性を有する。特に、プログラムの各バージョンは異なる電力使用特性を有する。これらの差および電力使用は、他の特性の差を伴い、これは例えばプログラムの命令が実行される速度、実行される命令の数、およびプログラム中で使用されるアルゴリズム等を含むことができる。
【００２１】
図２を参照すると、ソフトウェアプログラムの幾つかの異なるバージョン間における差を示す図が示されている。図２の左側にはソフトウェアプログラム“ソフトウェアＡ”（210）が示されている。ソフトウェアＡは同じプログラムの３つの異なるバージョン、即ちソフトウェアＡ０（220）、ソフトウェアＡ１（221）、ソフトウェアＡ２（222）を含んでいる。プログラムの各バージョンをここではモジュールと呼ぶ。ソフトウェアＡの各モジュールは異なる電力使用特性を実現するために異なる動作をするように設計されているので、これらのモジュールの１つを実行することは、ここではそのモジュールに対応するモードでソフトウェアＡを実行することである。例えばモジュール222がピーク電力消費を減少するためにプログラムの実行時間を延長する方法でソフトウェアＡの機能を実行するように設計されるならば、このモジュールの実行は延長実行モードでソフトウェアＡを実行することである。
【００２２】
ソフトウェアＡの各モジュールはそれに関連される対応する電力プロフィールを有する。図２に示されているように、電力プロフィール230はモジュール220に関連され、電力プロフィール231はモジュール221に関連され、電力プロフィール232はモジュール222に関連されている。電力プロフィール情報は図２の右側にグラフで示され、それによって異なるモジュールの電力使用の差が容易に認められる。
【００２３】
図２の例では、モジュール220はソフトウェアＡの実行の“標準”または“通常”モードであると考えられることができる。換言すると、モジュール220は実行されるとき、通常のデータプロセッサのソフトウェアＡの実行に等しい。このモジュールのコードの設計は典型的に任意の特別な動作パラメータ、または特に電力使用特性とは独立している。モジュール220の実行は、受信したときのソフトウェアＡに対する未変更のコードを単に実行し、プログラムの終了まで継続することと同じである。モジュール220がこの方法で実行されるとき、データプロセッサにより使用される電力量は対応する電力曲線240により示されているようになる。
【００２４】
図２のモジュール221はモジュール220からやや変更されている。この例では、モジュール220に含まれているコードの主要ではない部分を幾つか、モジュール221から省略している点が異なっている。例えばソフトウェアＡが画像データを処理するように設計されているならば、モジュール220は画像データをより大きい（微細な）解像度で処理するように設計されることができるが、モジュール221は画像データをより低い（粗い）解像度で処理するように設計されている。それ故、２つのモジュールは同じ一般的な機能を行うが、モジュール221は（低い画像解像度のために）モジュール220のような多くの動作を行う必要がなく、それ故モジュール220のように大量の電力を使用しない。電力使用の差は電力プロフィール曲線241により表されている。したがって、モジュール221の実行はモジュール220の実行と同じ時間フレームで進行するが、必要とする電力が少ない。
【００２５】
図２のモジュール222もモジュール220から変更されている。この場合、モジュール222はモジュール220で使用される命令を何も省略していないが、その代わりにこれらの命令が実行される速度を減少させている。モジュール220と同量のエネルギがモジュール222の実行に必要とされるが、このエネルギはより長い実行時間にわたって分散され、したがって、モジュール222に対する電力レベル（単位時間当たりに使用されるエネルギ量）はモジュール220の電力レベルよりも小さい。
【００２６】
図３を参照すると、１実施形態によるシステムを示すより詳細な機能ブロック図が示されている。この実施形態では、システムはメモリ320に接続されているマルチプロセッサ310を含んでいる。マルチプロセッサ310はプロセッサコア330−333のセットを有する。各プロセッサコアは他のプロセッサコアと独立して、ソフトウェアプログラムを実行できる。各プロセッサコア330−333により実行されるプログラムは電力管理装置340により決定される。プロセッサコア330−333により実行されるプログラムが電力管理装置340により決定されるとき、これらのプログラムはメモリ320から検索され、実行するためにそのプロセッサコアに与えられる。
【００２７】
電力管理装置340は実行される予定のソフトウェアプログラムを示す情報を受信する。例えばユーザがマルチプロセッサ310にソフトウェアプログラムＡ、Ｂ、Ｃ、Ｄを実行するように命令するならば、この情報は電力管理装置340に与えられる。この例では、各プログラムＡ−Ｄは幾つかの異なるモードで実行されることができる。それ故、メモリ320は各プログラムの各実行モードに対応するプログラムモジュールを記憶している。ソフトウェアプログラムＡは３つの実行モードを有し、したがってメモリ320に記憶されているプログラムＡに対応するプログラムモジュールは３つ存在する。同様に、ソフトウェアプログラムＢは３つの実行モードを有し、メモリ320は３つの対応するプログラムモジュールを有する。ソフトウェアプログラムＣとＤはそれぞれ４つと２つの実行プログラムモードを有し、したがってメモリ320はプログラムＣとＤに対するそれぞれ４つと２つのプログラムモジュールを記憶している。マルチプロセッサ310により実行されることのできる全てのソフトウェアプログラムが多数の実行モードを有する必要があるわけではなく、マルチプロセッサは多モードと単一モードのプログラムの組合せを実行することができることに注意すべきである。
【００２８】
電力管理装置340は、ソフトウェアプログラムが実行される予定の電力制約を識別する情報も受信する。図３は例えばプロセッサコアからの電力情報が電力管理装置340に与えられていることを示しているプロセッサコア330−333からの矢印を含んでいる。この電力情報は超過されてはならないしきい値電力レベルと、現在実行中のプログラムの電力使用量等を含むことができる。電力管理装置340は実行中のソフトウェアプログラムに関する電力情報もまた受信する。この実施形態では、（特定のプログラムの特定の実行モードに対応する）各プログラムモジュールはそのモジュールに対応する電力情報と共に記憶される。ここで、プログラムモジュールＡ０は電力情報ＰＡ０と共に記憶され、プログラムモジュールＡ１は電力情報ＰＡ１と共に記憶される等である。図２に関連して説明するように、電力情報は例えば時間の関数として、プログラムモジュールの電力消費を規定する電力プロフィールからなることができる。
【００２９】
電力管理装置340は電力情報に基づいて実行されるプログラムのそれぞれに対する実行モードを選択する。電力管理装置340は、プログラムの実行期間中にプロセッサコアの電力消費をしきい値レベルより下に維持し、プログラムの実行期間中の電力消費の劇的な変化を最小にする等のように、実行モードの選択には種々の目標をもつことができる。図３に示されているように、電力管理装置340はプログラムモジュールの電力プロフィール内に入るプロセッサコアの電力制約に基づいて、プロセッサコア330−333により実行されるべきプログラムモジュールＡ０、Ｃ３、Ｂ２、Ｄ１をそれぞれ選択する。
【００３０】
図３に示されているシステムは例示であり、他の実施形態は異なる方法で実行されてもよいことに注意すべきである。例えば、図３はマルチプロセッサ自体の一部として電力管理装置340を示しているが、他の実施形態ではマルチプロセッサとは別の電力管理装置を使用してもよい。さらに、電力管理装置はハードウェア、ソフトウェア、またはその両者の組合せで構成されることもできる。
【００３１】
図３に示されているシステムの動作は図４のフロー図で要約されている。図４を参照すると、実行されるソフトウェアプログラムが識別される（ブロック410）。この時点では、各プログラムの実行モードは特定されていない。即ち、実行されるソフトウェアプログラムの特定のプログラムモジュールはまだ選択されていない。電力管理装置はその後、各ソフトウェアプログラムに対する実行モードの選択において満たされるよう努力される電力制約を決定する（ブロック420）。この電力制約の決定は、プログラムと独立の情報（例えばマルチプロセッサの最大の電力消費量）とプログラム依存情報（例えば各利用可能なプログラムモジュールに対応する電力プロフィール）との両者の決定を含んでいる。
【００３２】
電力制約が識別されると、電力管理装置は識別された電力制約に基づいて、各ソフトウェアプログラムの実行モードを選択する（例えば実行される各ソフトウェアプログラムのプログラムモジュールを選択する）（ブロック430）。プログラムの実行モードが決定されたとき、プログラム（例えば選択されたプログラムモジュール）はプロセッサコアに与えられる（ブロック440）。そのプロセッサコアはその後、電力管理装置により選択された実行モードにしたがってプログラムを実行する（ブロック450）。図３のシステムでは、これは選択されたモードにしたがって実行されるように構成されている受信されたプログラムモジュールを単に実行することからなる。
【００３３】
各プログラムの実行モードは種々の方法で選択されることができることに注意すべきである。前述の例示的な実施形態では、各プログラムの実行モードは対応するモードにしたがってプログラムを実行するプログラムモジュールを選ぶことにより選択される。その代わりに、実行モードは選択されたモードに適切な実行パラメータを設定または規定することにより選択されることができる。プログラムはその後、規定されたパラメータにより実行されることができる。
【００３４】
前述の方法によるソフトウェアプログラムの実行結果が図５Ａ−図５Ｃに示されている。これらの図面は、前述した一般的な方法と本発明の方法との両者におけるソフトウェアプログラムＡ−Ｄの実行に対応するプロセッサコアの電力消費を示している。図５Ａはプログラムが通常の方法で実行されるときのプロセッサコアの電力消費を示す図である。図５Ｂと図５Ｃは、プログラムが本発明の例示的な実施形態にしたがって実行されるときのプロセッサコアの電力消費を示す図である。
【００３５】
図５Ａを参照すると、プロセッサコアの電力消費が、ソフトウェアプログラムが通常実行されるシナリオにおいて示されている。このシナリオでは、各プログラム（Ａ０、Ｂ０、Ｃ０、Ｄ０）に対しては単一の実行モードしか存在しない。プログラムがマルチプロセッサにより受信されるとき、電力消費に対する結果的な影響にかかわりなく、プログラムは直ちに実行される。プログラムはそれが受信されるときはいつでも、どのような他のプログラムが実行中であっても、同じ方法で実行される。４つのプログラムが同時に実行されるので、それらは同時に実行を開始する。結果として、（各プロセッサコアの組み合わされた電力消費を含む）マルチプロセッサの電力消費量は最初は非常に高く、所望の電力しきい値を超える可能性がある。プログラムＡ０とＤ０の実行が終了するとき、電力消費量は低下する。プログラムＣ０が終了し、プログラムＢ０だけが実行中であるとき、電力消費量は再度低下する。この通常のシナリオにおける電力消費量は理想的ではなく、システムは最初の高い電力消費量を減少し、単一のプログラムだけが依然として作動中である後の実行段にこの電力消費量の一部を移すような電力管理が有効である。
【００３６】
図５Ｂを参照すると、プロセッサコアの電力消費は、ソフトウェアプログラムが電力管理装置により選択されたモードにしたがって実行されるシナリオに対して示されている。この実施形態では、実行のために電力管理装置により選択されるプログラムモジュールは、通常実行されるプログラム（図５Ａ参照）と同じ電力プロフィールを有することに注意すべきである。しかしながら、電力管理装置は、プログラムモジュールＡ０とＤ０の実行の終了後までプログラムモジュールＣ０の実行開始を遅延させる。この説明の目的で、プログラムモジュールＣ０の遅延された開始を遅延実行モードと呼ぶ。プログラムＣでの遅延実行モードの選択は、プログラムＣに関連される電力消費を図の右側（即ち後の時間）へ移すことによって、総電力消費を改良していることが認められる。したがって、非常に高い電力消費を最初に有しており、その後（図５Ａの右側に示されているように）プログラムＢだけが依然として作動中であるときの非常に低い電力消費を有する代わりに、電力消費は時間にわたってさらに均等に分散され、最大電力が減少される。
【００３７】
多くの異なるアルゴリズムが、プログラムに対する所望の実行モードの選択に使用されることができ、これらのアルゴリズムは当業者により容易に設計されることができることに注意すべきである。したがって、使用されることのできる特定のアルゴリズムについてはここでは詳細に説明しない。
【００３８】
１つのプログラムに対して遅延実行モードを選択し、それによって時間中で対応する電力消費時期を移動させることは場合によって有効であるが、このことが可能ではないその他の状態が存在する可能性がある。例えば、実行されるべき全てのプログラムが実時間実行の制約を有するならば、どのプログラムも実行を遅延させることはできない。プログラムの実時間制約を侵害せずに、総電力消費を改良する他の実行モードを選択することが好ましい。例示的なシナリオが図５Ｃに示されている。
【００３９】
図５Ｃを参照すると、プログラムに対して遅延のない実行モードの選択を含むシナリオが示されている。このシナリオでは、電力管理装置はプロセッサコアによる実行のためのプログラムモジュールＡ２、Ｂ０、Ｃ１、Ｄ１を選択している。Ｂ０はプログラムＢについての標準（通常）の実行モードを表している。プログラムモジュールＢ０の実行は図５Ａおよび図５Ｂで示されている方法と同様に進行する。プログラムモジュールＣ１とＤ１はそれぞれプログラムＣとＤについての減少された電力実行モードを表している。前述したように、これらのプログラムモジュールは、異なるアルゴリズムを使用し、少数の動作を行い、またはプログラムモジュールの実行で消費される電力量を減少するための他の手段を使用するため、標準の実行モジュールから変更されている。図面から、これらの各プログラムモジュールの電力消費量が対応する通常の実行モード（図５Ａを参照）の電力消費量よりも少ないことが認められる。プログラムモジュールＡ２は、プログラムの実行で消費される電力量を減少するが、プログラムの実行の完了に必要な時間量を延長するような方法でこれを行うプログラムＡの実行モードを表している。例えばプログラムモジュールの命令は標準の実行モードと比較して、減少された速度で行われることができる。これは例えば、各連続的な命令の実行を効率的に遅延するために命令間にナル動作（ＮＯＰ）を挿入することによって実現される。
【００４０】
先に指摘したように、使用される電力プロフィール情報のタイプは１つの実施形態から別の実施形態によって変化する可能性があることに注意すべきである。図５Ａ乃至図５Ｃの例では、比較的詳細にされた電力プロフィールを示しているが、別の実施形態はプログラムモジュールの実行過程中の平均電力のように、さらに簡単な電力プロフィールを使用することができる。
【００４１】
図６Ａ−図６Ｃは平均電力プロフィールと関連して前述したように電力管理装置の実行結果を示している。図６Ａを参照すると、プログラムＡ−Ｄの通常の実行はプログラムが実行を開始するときの高い電力消費量と、プログラムＡとＤの終了後の普通レベルへの低下と、その後のプログラムＣの終了後の非常に低いレベルへの低下によって特徴付けられる。図６Ｂを参照すると、遅延実行モードがプログラムＣで選択され、一方、プログラムＡ、Ｂ、Ｄは標準モードで実行されている。その結果として、電力消費量はプログラムの実行を通して適切なレベルに低下する。図６Ｃを参照すると、プログラムＡは延長された時間モードで実行され、プログラムＢは標準モードで実行され、プログラムＣおよびＤは減少動作モードで実行される。その結果、プログラムの実行期間を通して電力消費の分散を改良し、最大電力を減少させることができる。
【００４２】
異なる実施形態は多かれ少なかれ、詳細にされた電力プロフィール情報を使用できるが、詳細にされた電力プロフィール情報の使用によって電力管理装置は実行モードをさらに効率的に選択し、プログラムモジュールをスケジュールできることに注意すべきである。これはプログラム内の電力消費の変化に対応する電力割当て量の利用可能な部分が、詳細にされた情報を使用するときに識別されることができるからである（図７Ａを参照）。平均電力のように詳細度の少ない情報の使用は電力割当て量のこれらの部分を識別することを不可能にする（図７Ｂを参照）。
【００４３】
本発明の実施形態により解決されることのできる別の問題は、プロセッサコアの電力消費における突然の変化に関する。マルチプロセッサの電力消費が非常に低く（例えばほとんどのプロセッサコアがアイドル状態であり）、残りのプロセッサコアが同時にプログラムの実行を開始するならば、電力消費量は突然増加する。電力の増加はプロセッサコアに対する電流（Ｉ）の増加（大きいｄＩ／ｄｔ）に対応する。この電流の急激な変化によってマルチプロセッサの電力雑音が生じ、誤動作（例えば雑音によるタイミングエラー）を生じかねない。同じことが電力と電流の急激な減少でも言える。それ故、この状態を防止することが望ましい。
【００４４】
幾つかの例では、電力管理装置は、電力及び電流の急激な増加または減少を回避するように、プログラムモジュールの実行をスケジュールできない可能性がある。例えば、実時間制約は全てのプログラムが同時に実行を開始することを要求する。それ故、１実施形態では電力の消費及び電流がさらにゆっくりと変化することを可能にするために“ダミー”プログラムを使用する。この実施形態では、マルチプロセッサの電力消費が劇的に変化するのではなく傾斜的に立ち上がりまたは下がるように、ダミープログラムが１以上のプロセッサコアでスケジュールされる。
【００４５】
図８を参照すると、電力消費と電流の劇的な変化を最小にするためのダミープログラムを使用する例示的な実施形態が示されている、このシステムは、プログラムＤが何らかの有用なデータを生成することを目的とするアプリケーションではない点を除いて、図３に示されている実施形態と非常に類似している。代わりに、このプログラム（及びその種々のモジュール）は１以上のプロセッサコアを“エクササイズ”することを意図しており、それによって、ある段階的増加量により電力消費および電流を増加させている。電力と電流が増加される量は選択される特定のモジュールによって変化される。モジュールは異なる実行時間と異なる電力プロフィールを有することができる。電力管理装置は、電力消費と電流を傾斜的に立ち上げるか下げることを必要とするとき、プロセッサコアによって実行されるためのモジュールをこれらのモジュールから１つ選択する。ダミープログラムＤのモジュールは有用なプログラム（Ａ−Ｃ）と同じメモリに記憶されてもよく、または電力管理装置に密接に接続される（例えば電力管理装置の内部の）メモリのような、別のメモリに記憶されてもよい。
【００４６】
この実施形態の効果が図９Ａ乃至図９Ｃに示されている。図９Ａを参照すると、有用なプログラムのセットがほぼ同時に実行を開始するシナリオが示されている。電流及び電力消費がプログラムの実行時に劇的に増加することが認められる。プログラムの実行期間中の電力消費が比較的一定であってさえも、電力及び電流は幾つかのプログラムの終了時に劇的に低下する。電力消費と電流におけるこれらの急激な増加及び減少は、前述したように問題である。図９Ｂを参照すると、電力管理装置は有用なプログラムモジュールの実行開始前にダミープログラムモジュールをスケジュール化して、それによって電力消費と電流は傾斜して立ち上がるようにする。ダミーモジュールの実行は有用なプログラムモジュールの実行が開始するときに終了する。その後、有用なプログラムモジュールの実行が終了するとき、ダミープログラムモジュールの実行が開始し、電力消費と電流が傾斜して下げられることを可能にする。図９Ｃは、電力消費及び電流を傾斜して立ち上げるか下げるのではなく、比較的一定のレベルに維持するために、ダミープログラムモジュールが実行されているシナリオを示している。したがって、電力管理装置はマルチプロセッサ中で問題を生じかねない電力消費と電流の劇的な増加及び減少を防止する。
【００４７】
電力管理装置はさらに、マルチプロセッサの動作を改善するように、プロセッサコアにより実行される実行モード（例えばプログラムモジュール）を選択するように構成されることができることに注意すべきである。図１０Ａ乃至図１０Ｃを参照すると、マルチプロセッサチップの領域に印加される電圧の変化を示す図が示されている。図１０Ａは単一のプロセッサコアが動作中であり、プロセッサコア付近で大きな電圧変化を生じているシナリオを示している。長方形はマルチプロセッサチップを表し、黒く塗りつぶされた円はプロセッサコアの領域を示している。長方形の下および右側のグラフはマルチプロセッサチップに印加される電圧の変化を示している。プロセッサコアだけが唯一、動作しているので、電圧は大きく変化する。
【００４８】
本発明の一実施形態では、電力管理装置は、対応する電力消費を増加し、それによってマルチプロセッサチップに印加される電圧の変化を減少させるために他のプロセッサコア上にダミープログラムモジュールをスケジュールする。図１０Ｂを参照すると、ダミープログラムモジュールを実行するプロセッサコアは水平線を有する円で示されている。マルチプロセッサチップを表す長方形の下及び右側のグラフはチップに印加される電圧の変化が減少されていることを示している。図１０Ｃを参照すると、電力管理装置が他のアイドルプロセッサコアで実行されるダミープログラムモジュールを選択するだけでなく、プロセッサコアの特定領域がエクササイズされるようにダミープログラムモジュールを選択するシナリオが示されている。この図面では、水平線を有する小さい円はこれらの領域を含むプログラムモジュールの実行によってエクササイズされるプロセッサコア部分（またはマルチプロセッサ内の他の回路）を示している。マルチプロセッサチップを表す長方形の下及び右側のグラフにより示されているように、チップに印加される電圧の変化はしたがってさらに減少される。
【００４９】
前述したように、本発明の異なる実施形態には多くの変形が存在することができる。これらの変形のうちの幾つかを前述した。例えば、電力管理装置はハードウェアまたはソフトウェアで構成されることができ、それはマイクロプロセッサチップ上に構成されるか、チップから離れて構成されることができ、実行モードは選択されたモードで動作するように構成されるプログラムモジュールを選ぶことにより選択されることができ、或いはモードはプログラムに対して適切な実行パラメータを設定することにより選択されることができ。選択されるのに有効な特定の実行モードは遅延された実行、減少された電力（減少された動作）の実行、減少された速度の実行、またはその他の実行モードを含んでもよく、異なるタイプの電力プロフィール情報は異なる実施形態のプログラムに関連されてもよく、プログラムの実行モードの選択に使用されるアルゴリズムは１つの実施形態から別の実施形態で変化してもよい。多くのその他の変更もこの明細書を読んだ当業者には明白であろう。全てのこのような変更は特許請求の範囲に記載されているような、本発明の技術的範囲内であると考えられる。
【００５０】
当業者は情報および信号が任意の種々の異なる技術を使用して表されることができることを理解するであろう。例えば、先の説明全体を通して参照されることのできるデータ、命令、コマンド、情報、信号等は電圧、電流、電磁波、磁界または任意のそれらの組合せによって表されることができる。情報及び信号はワイヤ、金属トレース、バイア、光ファイバ等を含む任意の適切な転送媒体を使用して、開示されたシステムのコンポーネント間で通信されることができる。
【００５１】
当業者はさらに、ここで開示した実施形態に関連して説明した種々の例示的な論理ブロック、モジュール、回路、アルゴリズムステップが電子ハードウェア、コンピュータソフトウェアまたはその両者の組合せとして構成されることができることを認識するであろう。このハードウェアとソフトウェアとの交換が可能であることを明白に示すために、種々の例示的なコンポーネント、ブロック、モジュール、回路、およびステップをそれらの機能に関して一般的に上述した。このような機能がハードウェアまたはソフトウェアのいずれとして構成されるかは特定の応用と、システム全体に課された設計制約にしたがっている。当業者はそれぞれの特定の応用に対して、説明された機能を種々の方法で実行することができるが、このような実行の決定は本発明の技術的範囲からの逸脱するものとして解釈されてはならない。
【００５２】
ここで開示した実施形態に関連して説明した種々の例示的な論理ブロック、モジュールおよび回路は、用途特定集積回路（ＡＳＩＣ）、フィールドプログラム可能なゲートアレイ（ＦＰＧＡ）、汎用目的のプロセッサ、デジタル信号プロセッサ（ＤＳＰ）、またはその他の論理装置、ディスクリートなゲートまたはトランジスタ論理装置、ディスクリートなハードウェアコンポーネント、或いはここで説明した機能を実行するように設計された任意のその組合せによって構成され、または実行されることができる。プロセッサはまたコンピュータ装置の組合せとして、例えばＤＳＰとマイクロプロセッサの組合せ、複数のマイクロプロセッサ、ＤＳＰコアを伴った１以上のマイクロプロセッサ、単一のマルチ処理装置中の１以上のプロセッサコア、または任意のその他のこのような構造として構成されることもできる。
【００５３】
ここで開示した実施形態に関連して説明した方法またはアルゴリズムのステップは、ハードウェア、プロセッサにより実行されるソフトウェア（プログラム命令）、またはそれら２つの組合わせで直接実施されてもよい。ソフトウェアは、ＲＡＭメモリ、フラッシュメモリ、ＲＯＭメモリ、ＥＰＲＯＭメモリ、ＥＥＰＲＯＭメモリ、レジスタ、ハードディスク、取外し可能なディスク、ＣＤ−ＲＯＭ、または技術で知られているその他の形態の記憶媒体中に存在してもよい。本発明の方法の１つを実施するプログラム命令を含んでいるこのような記憶媒体は、それ自体、本発明の別の実施形態である。１つの例示的な記憶媒体は、プロセッサに接続され、このようなプロセッサは情報を記憶媒体から読出し、そこに情報を書込むことができる。その代りに、記憶媒体はプロセッサと一体化されることもできる。
【００５４】
本発明により与えられる効果および利点を特定の実施形態に関連して説明した。これらの効果および利点と、行われ、またはさらに明白にされるその他のエレメントまたは限定は、特許請求の範囲に記載された任意の、または全ての請求項において臨界的、或いは必要とされる、または本質的な特徴として解釈されるべきではない。ここで使用されているように、用語“具備する”、“具備している”または任意のその他のその言葉の変形はこれらの用語にしたがっているエレメントまたは限定を排他的ではなく含んでいるとして解釈されることを意図している。したがって、システム、方法または、１組のエレメントを含むその他の実施形態はこれらのエレメントだけに限定されるのではなく、記載されていない、または請求された実施形態に固有ではないその他のエレメントを含むことができる。
【００５５】
開示された実施形態の前述の説明は、当業者が本発明を構成または使用することを可能にするために行われた。これらの実施形態に対する種々の変形は当業者には容易に明白であり、ここで規定されている一般的な原理は本発明の技術的範囲を逸脱せずに他の実施形態に適用されることができる。したがって、本発明はここで示されている実施形態に限定されることを意図するものではなく、ここで説明され、特許請求の範囲で挙げられている原理および優れた特徴と一致する最も広い技術的範囲にしたがうことを意図している。
【００５６】
また、上記実施形態は、以下の態様を含む。
【００５７】
（１）  実行される複数のソフトウェアプログラムを識別し、１以上のソフトウェアプログラムは多数の実行モードを有し、各ソフトウェアプログラムの各実行モードは関連される電力プロフィールを有し、
多数の実行モードを有する各ソフトウェアプログラムに対して、前記関連される電力プロフィールに基づいて前記実行モードの１つを選択し、
前記選択された実行モードにしたがって、前記ソフトウェアプログラムを実行する各ステップを含んでいる方法。
【００５８】
（２）  （１）の方法において、１以上の前記ソフトウェアプログラムに対して、前記実行モードは、遅延実行モードを含んでいる。
【００５９】
（３）  （１）の方法において、１以上の前記ソフトウェアプログラムに対して、前記実行モードは、前記対応するソフトウェアプログラムの命令が減少された速度で実行される延長実行モードを含んでいる。
【００６０】
（４）  （１）の方法において、１以上の前記ソフトウェアプログラムに対して、前記実行モードは、前記対応するソフトウェアプログラムが減少された数のプロセッサ動作を含むように変更されている減少動作モードを含んでいる。
【００６１】
（５）  （１）の方法において、前記ソフトウェアプログラムの第１のプログラムの実行モードの選択は、複数のプログラムモジュールの１つの選択を含み、各プログラムモジュールは前記関連される実行モードのうちの対応するモードで実行する前記ソフトウェアプログラムの第１のプログラムのバージョンを含んでいる。
【００６２】
（６）  （１）の方法において、前記方法は、複数のプロセッサコアを有するマルチプロセッサシステムで行われ、前記ソフトウェアプログラムの実行モードの選択は、前記マルチプロセッサシステムの電力割当て量内に適合する関連された電力プロフィールを有する実行モードの選択を含んでいる。
【００６３】
（７）  （６）の方法において、さらに、前記マルチプロセッサシステムから受信された電力情報に基づいて、前記電力割当て量を識別するステップを含んでいる。
【００６４】
（８）  （６）の方法において、さらに、前記プロセッサコアにより実行するための１以上のダミープログラムの選択を含み、前記ダミープログラムの前記実行モードは前記プロセッサコアにより引出される総電流の変化の大きさを減少させるように選択される。
【００６５】
（９）  （６）の方法において、さらに、前記プロセッサコアにより実行するための１以上のダミープログラムの選択を含み、前記ダミープログラムの前記実行モードは、前記マルチプロセッサシステムが構成されている集積回路チップに印加される電圧の変化を最小にするように選択される。
【００６６】
（１０）  複数のソフトウェアプログラムを同時に実行するように構成されているデータプロセッサと、
前記データプロセッサに接続されている電力管理装置とを具備し、
１以上の前記ソフトウェアプログラムは多数の実行モードを有し、各ソフトウェアプログラムの各実行モードは関連される電力プロフィールを有し、
前記電力管理装置は、前記関連される電力プロフィールに基づいて前記１以上のソフトウェアプログラムのそれぞれに対して前記実行モードの１つを選択するように構成され、
前記データプロセッサは前記電力管理装置により選択された前記実行モードを使用して、前記複数のソフトウェアプログラムを実行するように構成されているシステム。
【００６７】
（１１）  （１０）のシステムにおいて、１以上の前記ソフトウェアプログラムに対して、前記実行モードは、遅延実行モードを含んでいる。
【００６８】
（１２）  （１０）のシステムにおいて、１以上の前記ソフトウェアプログラムに対して、前記実行モードは、前記対応するソフトウェアプログラムの命令が減少された速度で実行される延長実行モードを含んでいる。
【００６９】
（１３）  （１０）のシステムにおいて、１以上の前記ソフトウェアプログラムに対して、前記実行モードは、前記対応するソフトウェアプログラムが減少された数のプロセッサ動作を含むように変更されている減少動作モードを含んでいる。
【００７０】
（１４）  （１０）のシステムにおいて、前記電力管理装置は、複数のプログラムモジュールの１つを選択することによって、前記ソフトウェアプログラムの第１のプログラムに対する前記実行モードを選択するように構成され、各前記プログラムモジュールは前記関連される実行モードのうちの対応するモードで実行する前記ソフトウェアプログラムの第１のプログラムのバージョンを含んでいる。
【００７１】
（１５）  （１０）のシステムにおいて、前記システムデータプロセッサのマルチプロセッサシステムは複数のプロセッサコアを有し、前記マルチプロセッサシステムの電力割当て量内に適合する関連された電力プロフィールを有する実行モードを選択することにより、前記ソフトウェアプログラムに対する前記実行モードを選択するように構成されている。
【００７２】
（１６）  （１５）のシステムにおいて、前記電力管理装置は、前記マルチプロセッサシステムから受信された電力情報に基づいて、前記電力割当て量を識別するように構成されている。
【００７３】
（１７）  （１５）のシステムにおいて、前記電力管理装置は、前記プロセッサコアにより実行するための１以上のダミープログラムを選択して、それによって前記プロセッサコアにより引出される総電流における変化の大きさを減少させるように構成される。
【００７４】
（１８）  （１５）のシステムにおいて、前記電力管理装置は、前記プロセッサコアにより実行するための１以上のダミープログラムを選択して、それによって前記マルチプロセッサシステムが構成されている集積回路チップに印加される電圧の変化を最小にするように構成されている。
【００７５】
（１９）  （１０）のシステムにおいて、前記電力管理装置は、前記マルチプロセッサシステムのハードウェアコンポーネントを具備している。
【００７６】
（２０）  （１０）のシステムにおいて、前記電力管理装置は、前記マルチプロセッサシステムにより実行されるソフトウェアを有している。
【図面の簡単な説明】
【００７７】
【図１】１実施形態によるシステムの構造を示す機能ブロック図。
【図２】ソフトウェアプログラムの幾つかの異なるバージョン間における電力消費の違いを示す図。
【図３】１実施形態によるシステムを示す詳細な機能ブロック図。
【図４】図３に示されているシステムの動作を要約しているフロー図。
【図５Ａ】一実施形態に係るプログラムが通常の方法で実行されるときのプロセッサコアの電力消費を示す図。
【図５Ｂ】プログラムが本発明の例示的な一実施形態にしたがって実行されるときのプロセッサコアの電力消費を示す図である。
【図５Ｃ】プログラムが本発明の例示的な一実施形態にしたがって実行されるときのプロセッサコアの電力消費を示す図である。
【図６Ａ】一実施形態に係る平均電力プロフィールを使用した電力管理装置の実行結果を示す説明図。
【図６Ｂ】一実施形態に係る平均電力プロフィールを使用した電力管理装置の実行結果を示す説明図。
【図６Ｃ】一実施形態に係る平均電力プロフィールを使用した電力管理装置の実行結果を示す説明図。
【図７Ａ】一実施形態による詳細な電力プロフィールを使用したシステムのマルチプロセッサの電力割当て量における利用可能な部分の識別を示す説明図。
【図７Ｂ】一実施形態に係る詳細な電力プロフィールを使用したシステムのマルチプロセッサの電力割当て量における利用可能な部分の識別を示す説明図。
【図８】一実施形態に係る電力消費と電流の劇的な変化を最小にするために、ダミープログラムを使用する例示的なマルチプロセッサシステムの概略図。
【図９Ａ】一実施形態に係る電力消費について、ダミープログラムを実行した効果を示す説明図。
【図９Ｂ】一実施形態に係る電力消費について、ダミープログラムを実行した効果を示す説明図。
【図９Ｃ】一実施形態に係る電力消費について、ダミープログラムを実行した効果を示す説明図。
【図１０Ａ】一実施形態に係るマルチプロセッサ中の電圧変化について、ダミープログラムを実行した効果を示す説明図。
【図１０Ｂ】一実施形態に係るマルチプロセッサ中の電圧変化について、ダミープログラムを実行した効果を示す説明図。
【図１０Ｃ】一実施形態に係るマルチプロセッサ中の電圧変化について、ダミープログラムを実行した効果を示す説明図。
【符号の説明】
【００７８】
１１０…メモリ、１１１…ソフトウェア、１１２…電力プロフィール、１２０…電力管理装置、１３０…データプロセッサ。
【図１】
2007280380.tif 000003
【図２】
2007280380.tif 000004
【図３】
2007280380.tif 000005
【図４】
2007280380.tif 000006
【図５Ａ】
2007280380.tif 000007
【図５Ｂ】
2007280380.tif 000008
【図５Ｃ】
2007280380.tif 000009
【図６Ａ】
2007280380.tif 000010
【図６Ｂ】
2007280380.tif 000011
【図６Ｃ】
2007280380.tif 000012
【図７Ａ】
2007280380.tif 000013
【図７Ｂ】
2007280380.tif 000014
【図８】
2007280380.tif 000015
【図９Ａ】
2007280380.tif 000016
【図９Ｂ】
2007280380.tif 000017
【図９Ｃ】
2007280380.tif 000018
【図１０Ａ】
2007280380.tif 000019
【図１０Ｂ】
2007280380.tif 000020
【図１０Ｃ】
2007280380.tif 000021
【外国語明細書】
2007280380000001.pdf