JP2016189112A - マルチコアプロセッサ、電力制御方法、プログラム - Google Patents

マルチコアプロセッサ、電力制御方法、プログラム Download PDF

Info

Publication number
JP2016189112A
JP2016189112A JP2015068828A JP2015068828A JP2016189112A JP 2016189112 A JP2016189112 A JP 2016189112A JP 2015068828 A JP2015068828 A JP 2015068828A JP 2015068828 A JP2015068828 A JP 2015068828A JP 2016189112 A JP2016189112 A JP 2016189112A
Authority
JP
Japan
Prior art keywords
power
energy
amount
processor
processor cores
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.)
Granted
Application number
JP2015068828A
Other languages
English (en)
Other versions
JP6123832B2 (ja
Inventor
健二 田形
Kenji Tagata
健二 田形
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.)
NEC Corp
Original Assignee
NEC Corp
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 NEC Corp filed Critical NEC Corp
Priority to JP2015068828A priority Critical patent/JP6123832B2/ja
Priority to US15/084,729 priority patent/US10409354B2/en
Publication of JP2016189112A publication Critical patent/JP2016189112A/ja
Application granted granted Critical
Publication of JP6123832B2 publication Critical patent/JP6123832B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

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
    • G06F1/3206Monitoring of events, devices or parameters that trigger a change in power modality
    • 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/3243Power saving in microcontroller unit
    • 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
    • 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
    • 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

【課題】マルチコアプロセッサにおいては、全体としての性能を落とさずにプロセッサコアごとの電力消費を制御することが難しい、と言う問題を解決すること。
【解決手段】複数のプロセッサコアと、複数のプロセッサコアに供給する電力を管理する電力管理部と、を有し、電力管理部は、複数のプロセッサコアのそれぞれに供給可能な供給電力量の上限値である最大供給電力量を複数のプロセッサコアのそれぞれについて決定する供給電力量決定部を有する。
【選択図】図2

Description

本発明は、マルチコアプロセッサ、電力制御方法、プログラム、に関する。
消費電力との兼ね合いから、全てのトランジスタを同時に動作させることができないという、いわゆるダークシリコン問題が知られている。
上記問題のため、電子回路においては、必要に応じて回路の動作の抑制を行うことが必要となる場合がある。つまり、回路のすべてを同時に動作すると過剰な電力を消費してしまい誤動作をするおそれがあるため、必要に応じて回路の動作を抑制することで、過大な電力を消費することを防ぐことが必要となる場合があった。
このような回路の動作を抑止するための技術の一つとして、例えば、特許文献1が知られている。特許文献1には、命令を発行する間に消費された電力に関する電力情報を累積する電力累積手段と、累積した電力情報と所定の閾値とを比較する比較部と、さらなる命令の発行を阻止する制御部と、を備えるプロセッサが記載されている。特許文献1によると、制御部は、累積した電力情報が閾値を超えた場合に、さらなる命令の発行を阻止することになる。
また、マルチコアシステムにおいて消費電力を抑制するための技術としては、例えば、特許文献2がある。特許文献2には、処理時間見積もり部とタスク割り当てパターン設定部とを有するマルチコアシステムが記載されている。特許文献2によると、タスク割り当てパターン設定部は、処理時間見積もり部により見積もられたタスクの処理時間がデッドライン情報によるリアルライム制約を満たす範囲で、タスクの使用するキャッシュサイズが最小となり、消費電力が最小となるようにタスクの割り当てパターンを設定する。特許文献2によると、上記構成により、より多くのタスクにキャッシュを割り当てることが可能となり、その結果、タスクスイッチが起こってもキャッシュの書き換えが起こる頻度を減らすことが出来る。
特開2013−518346号公報 特許第5585651号
しかしながら、特許文献1、2に記載のような技術を用いた場合、LSIとして使用可能な電力を使いきれないことがあった。また、その結果として、LSI全体では消費電力に余裕があるにもかかわらず、発行レートを落とすなどの制限がかかり性能が落ちてしまうことがあった。
このように、マルチコアプロセッサにおいては、全体としての性能を落とさずにプロセッサコアごとの電力消費を制御することが難しい、という問題が生じていた。
そこで、本発明の目的は、マルチコアプロセッサにおいては、全体としての性能を落とさずにプロセッサコアごとの電力消費を制御することが難しい、と言う問題を解決する電子回路を提供することにある。
かかる目的を達成するため本発明の一形態であるマルチコアプロセッサは、
複数のプロセッサコアと、
前記複数のプロセッサコアに供給する電力を管理する電力管理部と、を有し、
前記電力管理部は、前記複数のプロセッサコアのそれぞれに供給可能な供給電力量の上限値である最大供給電力量を前記複数のプロセッサコアのそれぞれについて決定する供給電力量決定部を有する
という構成を採る。
また、本発明の他の形態である電力制御方法は、
複数のプロセッサコアのそれぞれに供給可能な供給電力量の上限値である最大供給電力量を前記複数のプロセッサコアのそれぞれについて決定し、
前記複数のプロセッサコアのそれぞれには、決定した前記最大供給電力量に基づいて電力が供給される
という構成を採る。
また、本発明の他の形態であるプログラムは、
情報処理装置に、
前記複数のプロセッサコアに供給する電力を管理する電力管理手段を実現させ、
前記電力管理手段は、前記複数のプロセッサコアのそれぞれに供給可能な供給電力量の上限値である最大供給電力量を前記複数のプロセッサコアのそれぞれについて決定する
プログラムである。
本発明は、以上のように構成されることにより、マルチコアプロセッサにおいては、全体としての性能を落とさずにプロセッサコアごとの電力消費を制御することが難しい、という問題を解決するマルチコアプロセッサを提供することが可能となる。
本発明の第1の実施形態に係るマルチコアプロセッサの全体の構成の概要を示すブロック図である。 本発明の第1の実施形態に係るプロセッサコアの構成の一例を示すブロック図である。 本発明の第1の実施形態に係る分配電力決定部が各プロセッサコアに対して最大供給電力量を決定する際のアルゴリズムの一例を説明するための図である。 本発明の第1の実施形態に係る分配電力決定部が各プロセッサコアに対して最大供給電力量を決定する際のアルゴリズムの他の一例を説明するための図である。 本発明の第1の実施形態に係る分配電力決定部が各プロセッサコアに対して最大供給電力量を決定する際のアルゴリズムの他の一例を説明するための図である。 本発明の第1の実施形態に係る命令発行レート決定部の構成の一例を示すブロック図である。 本発明の第1の実施形態に係るプロセッサコアの動作の一例を示すフローチャートである。 本発明の第1の実施形態に係るプロセッサコアの動作の一例を示すフローチャートである。 本発明の第1の実施形態に係るプロセッサコアが有する命令発行レート決定部が蓄積エネルギー量を算出する際の動作の一例を示すフローチャートである。 本発明の第1の実施形態に係るプロセッサコアが有する命令発行レート決定部が消費エネルギー情報を受信してから最小値選択論理が電力量を選択するまでの動作の一例を示すフローチャートである。 本発明の第1の実施形態に係るLSI電力管理部の動作を説明するためのフローチャートである。 コンデンサを有する回路におけるコンデンサに蓄積されている電荷と消費電力との関係の一例を示すグラフである。 コンデンサを有する回路におけるコンデンサに蓄積されている電荷と消費電力との関係の一例を示すグラフである。 コンデンサを有する回路におけるコンデンサに蓄積されている電荷と消費電力との関係の一例を示すグラフである。 コンデンサを考慮しない場合の制御の一例を示すグラフである。 本発明の第2の実施形態における電子回路の構成の概略を示す概略ブロック図である。 本発明の第3の実施形態におけるマルチコアプロセッサの構成の概略を示す概略ブロック図である。 本発明の第4の実施形態におけるマルチコアプロセッサの構成の概略を示す概略ブロック図である。
[第1の実施形態]
本発明の第1の実施形態について、図1乃至図11を参照して説明する。図1は、マルチコアプロセッサ1の全体の構成の概要を示すブロック図である。図2は、プロセッサコア2の構成の一例を示すブロック図である。図3乃至図5は、分配電力決定部262が各プロセッサコア2に対して最大供給電力量を決定する際のアルゴリズムの他の一例を説明するための図である。図6は、命令発行レート決定部253の構成の一例を示すブロック図である。図7、図8は、プロセッサコア2の動作の一例を示すフローチャートである。図9は、命令発行レート決定部253が蓄積エネルギー量を算出する際の動作の一例を示すフローチャートである。図10は、命令発行レート決定部253が消費エネルギー情報を受信してから最小値選択論理2535が電力量を選択するまでの動作の一例を示すフローチャートである。図11は、LSI電力管理部26の動作を説明するためのフローチャートである。図12乃至図15は、コンデンサに蓄積されている電荷と消費電力との関係の一例を示すグラフである。
本発明の第1の実施形態では、電力の上限をプロセッサコア2毎に設定することが出来るマルチコアプロセッサ1について説明する。後述するように、本実施形態における各プロセッサコア2は、発行する命令に基づいて、当該命令に応じた演算処理を行う際に消費するエネルギー(消費エネルギー)を算出する。また、各プロセッサコア2は、算出した消費エネルギーと、プロセッサコア2に供給されるエネルギー(供給エネルギー)と、に基づいて、チップ内外のコンデンサ(蓄電器)に蓄えられているエネルギーである蓄積エネルギー量を算出する。そして、各プロセッサコア2は、コンデンサに蓄えられているエネルギーを考慮した上で、それぞれのプロセッサコア2で行われる新規の命令の発行の抑制などを行う。これにより、各プロセッサコア2は、プロセッサコア2ごとに電力の上限を設定することになる。
また、本実施形態におけるマルチコアプロセッサ1では、各プロセッサコア2で算出された消費エネルギーに基づいて、各プロセッサコア2に供給可能な供給電力量の上限値を決定する。後述するように、プロセッサコア2に供給される供給エネルギーは、上記決定された各プロセッサコア2に供給可能な供給電力量の上限値に応じて算出されることになる。
なお、以下においては、説明を簡単にするため、コンデンサの蓄積電荷が0になった場合に誤作動をするものとする。しかしながら、物理現象としては、回路に供給される電圧が10%程度低下すると誤作動をする可能性があるものと考えられる。そのため、誤作動をしない範囲では、電子回路(プロセッサコア2)周辺のコンデンサに蓄積されている電荷の10%程度が変化することを想定すればよいことになる。
従って、以下においては、電荷の2乗に比例するコンデンサの蓄積エネルギーなどにおいても線形なものとして計算に利用することとする。なぜならば、ある程度小さい数値xにおいて(1+x)の2乗は、xの2乗が十分に小さいため、1+2xとして扱えるためである。また、以下においては、同様の理由により、コンデンサに蓄積された電荷をそのままエネルギーとして計算に利用することとする。
マルチコアプロセッサ1は、図示しない抵抗やコンデンサなどを有しており、演算処理を行うことが出来るよう構成されている。図1を参照すると、本実施形態におけるマルチコアプロセッサ1は、複数のプロセッサコア2−1、2−2、…、2−m(以下、特に区別しない場合はプロセッサコア2とする)と、共有キャッシュ3と、外部I/O(Input/Output)接続部4と、を有している。
プロセッサコア2は、演算処理を行う回路である。プロセッサコア2は、オンチップネットワーク5を介して、共有キャッシュ3と、外部I/O接続部4と、と接続されている。
共有キャッシュ3は、各プロセッサコア2から共有される記憶装置である。共有キャッシュ3は、マルチコアプロセッサ1の外部のメモリである外部メモリ31と接続されている。外部メモリ31は、例えば、DRAM(Dynamic Random Access Memory)などの半導体メモリである。なお、外部メモリ31は、SRAM(Static Random Access Memory)やNANDフラッシュメモリなどの記憶素子であっても構わない。
外部I/O接続部4は、外部I/O41と接続されている。外部I/O41は、例えば、PCI Expressである。外部I/O41は、PCI Express以外であっても構わない。
図2は、プロセッサコア2の構成の一例を示す図である。図2を参照すると、プロセッサコア2は、例えば、命令フェッチ・デコード部21と、命令スケジューリング部22と、複数の命令実行部23−1、23−2、…、23−m(以下、特に区別しない場合は命令実行部23とする)と、外部部品接続部24と、命令発行制限部25と、を有している。また、各プロセッサコア2は、LSI電力管理部26と接続されている。
なお、上記各機能(各部)は、例えば、図示しない記憶装置が有するプログラムをプロセッサコア2で実行することで、プロセッサコア2上に実現される。また、LSI電力管理部26は、例えば、複数のプロセッサコア2のうちの任意の1つのプロセッサコア2が図示しない記憶装置に格納されたプログラムを実行することで実現される。
命令フェッチ・デコード部21は、主記憶装置(図示しない)から命令情報を読み出し、当該読み出した命令情報を解析する。そして、命令フェッチ・デコード部21は、解析した命令情報を命令スケジューリング部22に渡す。このように、命令フェッチ・デコード部21が有している機能は、一般的なものである。そのため、命令フェッチ・デコード部21の詳細な説明は省略する。
命令スケジューリング部22は、命令実行部23を監視して、命令実行部23に命令情報を送信する。例えば、命令スケジューリング部22は、受信した命令情報に基づいて命令実行部23を監視して、先行する命令の実行の完了を監視する。そして、命令スケジューリング部22は、準備のできた命令を命令実行部23に送信する。
また、命令スケジューリング部22は、命令実行部23に命令情報を送信する際に、当該命令情報と等価な情報である発行命令情報を命令発行制限部25に送信する。後述するように、命令発行制限部25は、受信した発行命令情報に基づいて、所定の条件を満たす場合に、命令スケジューリング部22に対して命令発行制限指示を送信することになる。そして、命令発行制限指示を受信した命令スケジューリング部22は、当該命令発行制限指示の内容に応じて、新規の命令発行のレートを低下したり、新規の命令発行を停止したりする。
命令実行部23は、演算器・レジスタファイル・プロセッサコア固有のキャッシュメモリなどを有している。命令実行部23は、上記各構成を用いて、命令スケジューリング部22から受信した命令情報に基づいて、命令の実行を行うことになる。
なお、本実施形態では、プロセッサコア2は複数の命令実行部23を有しているとした。しかしながら、プロセッサコア2が有する命令実行部23は1つであっても構わない。また、プロセッサコア2が有する複数の命令実行部23の機能は等価でなくても構わない。複数の命令実行部23は、例えば、ある命令実行部23が加算命令は実行できるがメモリアクセス命令は実行できないように構成されている一方で、別の命令実行部23は、メモリアクセス命令は実行できるが分岐命令は実行できない、というように構成されていても構わない。
外部部品接続部24は、オンチップネットワーク5に接続されている。外部部品接続部24は、オンチップネットワーク5を介して、プロセッサコア2の外部に配置されている共有キャッシュ3や外部メモリ31と接続されることになる。
命令発行制限部25は、上記のように、命令スケジューリング部22から発行命令情報を受信する。そして、命令発行制限部25は、発行命令情報に基づいて、所定の条件を満たす場合に、命令スケジューリング部22に対して命令発行制限指示を送信する。
図2を参照すると、命令発行制限部25は、例えば、統計情報設定レジスタ251と消費エネルギー推論部252と命令発行レート決定部253とから構成されている。
統計情報設定レジスタ251は、JTAG(Joint Test Action Group)などのデバックインターフェースから電力推論のための電力統計情報(電力消費情報)を受け取る。統計情報設定レジスタ251が記憶する電力統計情報は、消費エネルギー推論部252で利用される。
電力統計情報(電力消費情報)は、命令に応じた装置の消費電力の変化(命令を処理する際に生じる消費電力の変化)を示す情報である。共有キャッシュ3などを有するマルチコアプロセッサ1では、一つの動作(たとえば、ロード命令や加算命令の実行)がレジスタ、演算器、キャッシュメモリ(共有キャッシュ3)、外部メモリ31などの複数の部品に作用することになる。そこで、本実施形態においては、電力統計情報は、少なくとも、プロセッサコア2と、当該プロセッサコア2が命令を実行する際に利用する共有部分(共有メモリ3や外部メモリ31など)と、の消費電力の変化を示す情報であるものとする。電力統計情報は、例えば、上記共有部分を含む装置全体の消費電力の変化を観察することで取得される。電力統計情報は、消費エネルギー推論部252で消費エネルギーを算出する際に用いられることになる。
なお、統計情報設定レジスタ251は、メモリ空間上にマップして、オンチップネットワーク5を介してアクセス可能なよう構成しても構わない。
消費エネルギー推論部252は、命令スケジューリング部22から受信した発行命令情報と、統計情報設定レジスタ251から取得した電力統計情報とに基づいて、プロセッサコア2が命令の実行によって消費するエネルギー(消費エネルギー)を算出する。そして、消費エネルギー推論部252は、算出結果(消費エネルギー)を示す消費エネルギー情報を命令発行レート決定部253に送信する。また、消費エネルギー推論部252は、消費エネルギー情報と等価な情報をLSI電力管理部26へ消費電力量通知として通知する。
命令発行レート決定部253は、消費エネルギー推論部252から受信した消費エネルギー情報と、LSI電力管理部26から送信される後述する電力制限情報とに基づいて、コンデンサに蓄えられている蓄積エネルギー量を算出する。そして、命令発行レート決定部253は、蓄積エネルギー量が所定の条件を満たす場合に、命令スケジューリング部22に対して命令発行制限指示を出力する。命令発行レート決定部253が命令スケジューリング部22に対して命令発行制限指示を送信することで、新規の命令の実施が制限され、プロセッサコア2が消費する消費電力が抑えられることになる。
なお、命令発行レート決定部253が送信する命令発行制限指示は、命令スケジューリング部22に対する様々な指示を含むよう構成することが出来る。例えば、命令発行レート決定部253は、命令スケジューリング部22に対して命令発行制限指示を送信することで、新規の命令発行のレートを低下するよう指示(スロットリング)したり、新規の命令発行を停止したりするよう指示することが出来る。
LSI電力管理部26は、消費エネルギー推論部252から通知された消費電力量通知に基づいて、プロセッサコア2に供給可能な供給電力量の上限値である最大供給電力量を各プロセッサコア2のそれぞれについて決定する。そして、LSI電力管理部26は、決定した最大供給電力量を電力制限情報として各プロセッサコア2の命令発行レート決定部253に送信する。
図2を参照すると、LSI電力管理部26は、使用電力比率算出部261と、分配電力決定部262と、制御情報設定レジスタ263と、を有している。
使用電力比率算出部261は、各プロセッサコア2が通知する消費電力量通知を受け取る。そして、使用電力比率算出部261は、各プロセッサコア2から通知された消費電力量通知に基づいて、当該各プロセッサコア2のそれぞれが消費する電力量の比率を算出する。その後、使用電力比率算出部261は、算出した電力量の比率を示す電力比率を分配電力決定部262に送信する。
分配電力決定部262は、使用電力比率算出部261から電力比率を受信する。また、分配電力決定部262は、制御情報設定レジスタ263から後述する電力制御情報を取得する。そして、分配電力決定部262は、使用電力比率算出部261から受信した電力比率と制御情報設定レジスタ263から取得した電力制御情報とに基づいて、プロセッサコア2のそれぞれについて最大供給電力量を決定する。
分配電力決定部262が各プロセッサコア2のそれぞれについて最大供給電力量を決定する際に用いるアルゴリズムは、様々なものが考えられる。
例えば、分配電力決定部262は、図3で示すように、使用電力比率算出部261から通知された電力比率に基づいて、制御情報設定レジスタ263に設定された最大電力量(例えば、マルチコアプロセッサ1全体に供給可能な電力量)を各プロセッサコア2のそれぞれに分配する。つまり、分配電力決定部262は、予め定められた最大電力量を各プロセッサコア2のそれぞれが消費する電力量の比率に基づいて各プロセッサコア2に分配する。これにより、分配電力決定部262は、プロセッサコア2のそれぞれについて最大供給電力量を決定する。分配電力決定部262が各プロセッサコア2のそれぞれについて最大供給電力量を決定する際に用いるアルゴリズムとしては、例えばこのようなものが考えられる。
また、例えば、分配電力決定部262は、図4で示すように、使用電力比率算出部261から通知された電力比率と関係なく、制御情報設定レジスタ263に設定された均等配分電力量(例えば、プロセッサコア2が動作可能な最低限の電力量)に従い一定の電力を各プロセッサコア2のそれぞれに分配する。そして、分配電力決定部262は、制御情報設定レジスタ263に設定された最大電力量から均等配分電力量の合計値分を減算した残りの電力量を、使用電力比率算出部261から通知された電力比率に基づいて各プロセッサコア2のそれぞれに分配する。つまり、分配電力決定部262は、各プロセッサコア2のそれぞれに均等に配分した電力量の合計値を最大電力量から減算した余りを電力比率に基づいて各プロセッサコア2のそれぞれに分配することで、前記複数のプロセッサコアのそれぞれについて最大供給電力量を決定する。例えば、分配電力決定部262は、このようなアルゴリズムを用いて各プロセッサコア2のそれぞれについて最大供給電力量を決定しても構わない。
また、例えば、分配電力決定部262は、図5で示すように、制御情報設定レジスタ263に設定されたコア優先度に基づいて、各プロセッサコア2のそれぞれについて最大供給電力量を決定する。例えば、図5で示すように、制御情報設定レジスタ263にコア優先度と、コア優先度ごとの最大電力量とが記憶されているとする。この場合、分配電力決定部262は、同一のコア優先度を持つプロセッサコア2間で、当該コア優先度ごとに定められた最大電力量を分配することで、各プロセッサコア2についての最大供給電力量を決定する。また、分配電力決定部262は、例えば、最大電力量を各プロセッサコア2のそれぞれが消費する電力量の比率に基づいて分配する際に、コア優先度が高いプロセッサコア2により多くの電力量が分配されるよう制御しても構わない。このように、分配電力決定部262は、コア優先度を考慮するアルゴリズムを用いて、各プロセッサコア2のそれぞれについて最大供給電力量を決定しても構わない。
以上のように、分配電力決定部262は、電力比率と電力制御情報とに基づいて、様々なアルゴリズムを用いてプロセッサコア2のそれぞれについて最大供給電力量を決定する。その後、分配電力決定部262は、決定した最大供給電力量を電力制限情報として各プロセッサコア2に送信する。なお、分配電力決定部262は、上記例示した以外のアルゴリズムを用いてプロセッサコア2のそれぞれについて最大供給電力量を決定しても構わない。
制御情報設定レジスタ263には、分配電力決定部262がプロセッサコア2のそれぞれについて最大供給電力量を決定する際に用いる様々な電力制御情報が格納されている。制御情報設定レジスタ263は、例えば、上述した最大電力量や均等配分電力量、コア優先度などを電力制御情報として記憶している。また、制御情報設定レジスタ263は、電力制御情報として、例えば、分配電力決定部262が最大供給電力量を決定する際に用いるアルゴリズムについての情報を記憶することが出来る。
続いて、命令発行制限部25の詳細について説明する。まず、消費エネルギー推論部252について詳細に説明する。
消費エネルギー推論部252は、上記のように、発行命令情報と電力統計情報とに基づいて、発行命令情報が示す命令で消費するエネルギーである消費エネルギーを算出する。消費エネルギー推論部252は、発行命令情報に含まれる様々な情報を利用して消費エネルギーを推論する。
消費エネルギー推論部252は、例えば、加算・メモリアクセスなどを示す演算の種類(I)や、読出しを行うレジスタファイルの個数(Rn)、演算回数(N)などを用いて消費するエネルギーを算出する。
なお、消費エネルギー推論部252は、上記以外の情報(例えば、書き込みを行うレジスタの個数など)を利用して消費エネルギーを算出するように構成しても構わない。また、演算回数(N)は、SIMD(Single Instruction Multiple Data)命令での演算幅、ベクトルプロセッサにおけるベクトル命令でのベクトル長に相当することになる。
上記情報は、それによって消費されるエネルギーが変わるために必要とされることになる。例えば、1命令で複数の演算を実施するSIMD命令は、1命令で1演算のみを実行する通常の命令と比較して、多くのエネルギーを消費すると考えられる。また、同じ演算命令でも2オペランドをレジスタファイルから読み出す場合と、1オペランドのみをレジスタファイルから読み出し、もう一方を命令で指定された即値を利用する場合と、では、レジスタファイルの参照の増減がある。そのため、その命令実行で消費するエネルギーが異なるものと考えられる。そこで、消費エネルギー推論部252は、例えば、上記のような情報を用いて、消費エネルギーを算出することになる。
また、消費エネルギー推論部252は、電力統計情報を用いて、命令種別ごとに消費されるエネルギー(Ei)とレジスタの読み出しで消費されるエネルギー(Eir)とを事前に算出しておく。
そして、消費エネルギー推論部252は、上記のような演算の種類(I)、読出しを行うレジスタファイルの個数(Rn)、演算回数(N)、命令種別ごとに消費されるエネルギー(Ei)、レジスタの読み出しで消費されるエネルギー(Eir)を用いて、消費するエネルギーを算出する。具体的には、消費エネルギー推論部252は、例えば、以下の式に基づいて消費するエネルギーを算出する。
命令により消費するエネルギー(消費エネルギー)=Ei×N+Eir×Rn×N
なお、本実施形態においては、消費エネルギー推論部252が算出した消費エネルギーは、整数値で表現するものとする。例えば、消費エネルギー推論部252は、数値「1」に1pJを対応させて表現する。このように、消費エネルギー推論部252が表現する整数1は、特定のエネルギー量を表現する。なお、消費エネルギー推論部252は、例えば、数値「1」を3pJに対応させるなど、上記例示した以外の対応付けを行っても構わない。
また、消費エネルギー推論部252が算出する命令種別ごとに消費されるエネルギー(Ei)には、その命令で動作する共有部の消費エネルギーも含まれるものとする。つまり、消費エネルギー推論部252は、例えば、ロード・ストア命令のようにオンチップネットワーク5、共有キャッシュ3へのアクセスが想定される命令に対しては、キャッシュメモリへのアクセスの割合などを考慮した確率的な重み付きのエネルギー値を算出することになる。
消費エネルギー推論部252は、例えば、上記のように消費エネルギーを算出する。そして、消費エネルギー推論部252は、算出した消費エネルギーを示す消費エネルギー情報を命令発行レート決定部253へと送信する。また、消費エネルギー推論部252は、消費エネルギー情報と等価な情報をLSI電力管理部26へ消費電力量通知として通知する。
続いて、命令発行レート決定部253について詳細に説明する。
図6は、命令発行レート決定部253の構成の一例である。図6を参照すると、命令発行レート決定部253は、エネルギー積算カウンタ2531と、消費電力履歴レジスタ2532(消費エネルギー情報記憶部)と、エネルギー積算時刻飽和カウンタ2533と、突入電流制限計算部2534(許容電力量算出部)と、最小値選択論理2535(供給エネルギー選択部)と、電力制限時刻飽和カウンタ2536と、エネルギー制限カウンタ2537(蓄積エネルギー量算出部)と、電力制限決定部2538(命令発行抑制部)と、を有している。
なお、消費エネルギー推論部252から受信した消費エネルギー情報は、エネルギー積算カウンタ2531と、エネルギー制限カウンタ2537とで利用されることになる。また、分配電力決定部262から取得した電力制限情報は、最小値選択論理2535で利用されることになる。
エネルギー積算カウンタ2531は、消費エネルギー情報が示す消費エネルギーの値を、消費エネルギー情報を受信するごとに加算する。つまり、エネルギー積算カウンタ2531は、消費エネルギーの積算値を算出する。
また、エネルギー積算カウンタ2531は、後述するエネルギー積算時刻飽和カウンタ2533からの指示に基づいて、一定時間ごとに、算出した消費エネルギーの積算値を消費電力履歴レジスタ2532にコピーする。そして、エネルギー積算カウンタ2531は、消費エネルギーの積算値をクリアする。以上のように、エネルギー積算カウンタ2531は、一定時間ごとの消費エネルギーの積算値を算出して、消費電力履歴レジスタ2532にコピーするよう構成されている。
消費電力履歴レジスタ2532は、エネルギー積算カウンタ2531からコピーされた消費エネルギーの積算値を積算消費エネルギー情報として所定回数分記憶する。消費電力履歴レジスタ2532は、例えば、エネルギー積算カウンタ2531からコピーされた3回分の積算消費エネルギー情報を記憶する。なお、消費電力履歴レジスタ2532は、1回以上の任意の回数分、蓄積消費エネルギー情報を記憶するよう構成することが出来る。
エネルギー積算時刻飽和カウンタ2533は、エネルギー積算カウンタ2531と消費電力履歴レジスタ2532に対するクリア指示、書き込み指示の制御を行う。エネルギー積算時刻飽和カウンタ2533は、一定時間ごとに、エネルギー積算カウンタ2531、消費電力履歴レジスタ2532に対する上記指示を行うよう構成されている。エネルギー積算時刻飽和カウンタ2533は、例えば、事前に設定された特定の値(C0)で初期化され、1サイクルに1ずつ減算される。そして、エネルギー積算時刻飽和カウンタ2533は、カウンタの値が0になるとクリア指示、書き込み指示を出力して、初期値C0に再度設定される。
上記説明した3つの部品(エネルギー積算カウンタ2531、消費電力履歴レジスタ2532、エネルギー積算時刻飽和カウンタ2533)の組み合わせで、一定時間に発生した消費エネルギーの積算値を求めることになる。ここで、電力は消費エネルギーの時間微分で表現される。そのため、消費電力履歴レジスタ2532に書き込まれた値は、過去の消費電力量を表現することになる。
突入電流制限計算部2534は、消費電力履歴レジスタ2532が記憶する積算消費エネルギー情報に基づいて、時間発展に伴う許容電力量(プロセッサコア2に流入することが許容される、つまり、プロセッサコア2が消費することが許容される電力量)を算出する。
具体的には、例えば、突入電流制限計算部2534は、消費電力履歴レジスタ2532が記憶する過去3回分の積算消費エネルギー情報の平均値に事前に定められた電力量を加算した値を算出することで、一定時間における許容電力量を算出する。そして、突入電流制限計算部2534は、算出した許容電力量を最小値選択論理2535へと送信する。
突入電流制限計算部2534が上記のように許容電力量を計算することで、例えば、直近の消費電力が1W程度であった場合には、たとえそのプロセッサコア2が10Wの電力を利用できるように割り当てられていたとしても、次回は最大で2Wまでしか利用しない、という制御を行うことが出来るようになる。
なお、突入電流制限計算部2534は、消費電力履歴レジスタ2532が積算消費エネルギー情報を記憶していない場合などにおいても、予め定められた最低限の値を算出するよう構成することが出来る。また、突入電流制限計算部2534は、上記例示した以外の方法により許容電力量を算出するよう構成しても構わない。例えば、突入電流制限計算部2534は、積算消費エネルギー情報の平均値の2倍の値を許容電力量として算出するよう構成しても構わない。
最小値選択論理2535は、突入電流制限計算部2534から受信した許容電力量と、分配電力決定部262から送信された電力制限情報が示す最大供給電力量と、のうち、より小さい電力量を供給エネルギーとして選択する。そして、最小値選択論理2535は、電力制限時刻飽和カウンタ2536の指示に基づいて、一定時間ごとに、選択した電力量(供給エネルギー)をエネルギー制限カウンタ2537に対して送信する。
電力制限時刻飽和カウンタ2536は、最小値選択論理2535に対して、選択した電力量をエネルギー制限カウンタ2537に送信するよう加算指示を送信する。電力制限時刻飽和カウンタ2536は、一定時間ごとに、上記指示を行うよう構成されている。電力制限時刻飽和カウンタ2536の具体的な構成は、例えば、既に説明したエネルギー積算時刻飽和カウンタ2533と同様である。
エネルギー制限カウンタ2537は、コンデンサに蓄積された電荷の量を表現する。例えば、コンデンサに蓄積されたエネルギーが尽きるまでプロセッサコア2は動作可能であると仮定すると、エネルギー制限カウンタ2537は、当該プロセッサコア2が消費可能な残りのエネルギー(蓄積エネルギー量)を表現することになる。
エネルギー制限カウンタ2537は、命令発行に伴う消費エネルギー情報を受け取ると、当該消費エネルギー情報に基づいた値をカウンタから減算する。つまり、エネルギー制限カウンタ2537は、命令発行に伴う消費エネルギーをカウンタから減算するよう構成されている。
また、エネルギー制限カウンタ2537は、一定時間ごとに最小値選択論理2535から電力量の値(供給エネルギー)を受け取って、カウンタに加算する。つまり、エネルギー制限カウンタ2537は、一定時間ごとに、そのコアで許容される消費エネルギーの値(つまり、そのコアに供給される供給エネルギーの値)を加算するよう構成されている。例えば、1Wの電力を消費できるプロセッサコア2では、1nsごとに1nJのエネルギーを消費することが出来る。そのため、エネルギー制限カウンタ2537は、最小値選択論理2535が選択した供給エネルギーに基づいて、例えば、1nsごとに1nJを表現するカウンタ値を加算することになる。
このように、エネルギー制限カウンタ2537は、消費エネルギーを示す減算項と、最小値選択論理2535が選択した電力量である供給エネルギーを示す加算項と、の2つを積算するように構成されている。減算項は、コンデンサから消費された電荷、あるいは、エネルギーに相当することになる。一方、加算項は、コンデンサに流入した電荷、あるいは、エネルギーに相当することになる。ここで、エネルギー保存の法則から、一度蓄えられた電荷は電力を消費しない限りその場にとどまるものと考えられる。そのため、エネルギー制限カウンタ2537は、コンデンサに蓄積されたエネルギーを表現するものと考えられる。
なお、上記の考え方から、流入する電荷の量と、流出する電荷の量と、を推論する任意の方式を本発明に活用することが考えられる。具体的には、例えば、流入する電流に対して、電源供給系のコンデンサ・コイル・配線抵抗の影響を考慮した式をたてて計算するといったことが考えられる。
また、エネルギー制限カウンタ2537は、上に有限なカウンタをとるものとする。つまり、加算処理で事前に設定された最大値を超える値になる場合には、エネルギー制限カウンタ2537には、最大値が格納されることになる。また、エネルギー制限カウンタ2537の上限値は、周辺のコンデンサに蓄積可能な電荷に相当するものとする。従って、エネルギー制限カウンタ2537のカウント値の分までは、バーストでのエネルギー消費が許容されることになる。
また、エネルギー制限カウンタ2537の値が負の方向にオーバーフローすることは、原理的に発生しないものと考えられる。そのため、上記場合が発生した場合には、故障が発生しているものと判断することが考えられる。
電力制限決定部2538は、エネルギー制限カウンタ2537のカウンタ値を監視する。そして、電力制限決定部2538は、エネルギー制限カウンタ2537のカウンタ値に基づいて、命令発行制限指示を出力する。例えば、電力制限決定部2538は、エネルギー制限カウンタ2537のカウンタ値が負の数値になった場合に、電力が既定の値を超えたと判断して、命令発行制限指示を出力する。これにより、上述したように、新規の命令の発行が制限されることになる。
なお、電力制限決定部2538は、例えば、1つ、又は、複数の制限閾値を予め記憶しておき、制限閾値とエネルギー制限カウンタ2537のカウンタ値との比較結果に基づいて、命令発行制限指示を出力するよう構成しても構わない。例えば、電力制限決定部2538は、エネルギー制限カウンタ2537のカウンタ値がある制限閾値1を下回った場合に、命令発行のレートを低下させる(例えば、カウンタ値が10以下になった場合に、命令発行間隔を10サイクルに変更する)命令発行制限指示を出力する。また、電力制限決定部2538は、エネルギー制限カウンタ2537のカウンタ値が制限閾値1よりも小さな閾値である制限閾値2を下回った場合に、命令発行を停止させる(例えば、カウンタ値が負になった場合に命令発行を禁止する)命令発行制限指示を出力する。電力制限決定部2538は、例えば、上記のように構成しても構わない。
また、上述したように、エネルギー制限カウンタ2537は、一定時間ごとに最小値選択論理2535から電力量の値(供給エネルギー)を受け取って、カウンタに加算するよう構成されている。そのため、電力制限決定部2538が命令発行制限指示を出力した後所定時間経過すると、エネルギー制限カウンタ2537のカウンタ値が増加して電力制限決定部2538が命令発行制限指示を出力する要因がなくなることになる。その結果、命令の発行が再開されることになる。
以上が、マルチコアプロセッサ1の構成の一例である。
なお、本実施形態においては、エネルギー積算カウンタ2531では、消費エネルギー情報に基づいて消費エネルギーの積算を行うとした。しかしながら、消費エネルギーが推論できる方法であれば、その他の方式を採用しても構わない。
例えば、エネルギー積算カウンタ2531は、エネルギー制限カウンタ2537に対して加算された供給電力量の総和を消費エネルギーとして加算するよう構成しても構わない。具体的には、例えば、エネルギー積算カウンタ2531は、エネルギー制限カウンタ2537に対して最小値選択論理2535で選択された電力量を加算する際に、以下の式で計算されるエネルギー値を積算するように構成することが出来る。
エネルギー積算カウンタへの加算値=MIN(MaxEe,Ee+Ep)−Ee
なお、
Ee=エネルギー制限カウンタ2537のカウンタ値
Ep=最小値選択論理2535により選択された電力量
MaxEe=エネルギー制限カウンタ2537の上限値
次に、プロセッサコア2の動作について説明する。図7で示すように、本実施形態におけるプロセッサコア2は、概ね、通常のプロセッサと同様の動作を行う。
つまり、図7を参照すると、命令フェッチ・デコード部21が主記憶装置から命令情報を取得して、デコードする。そして、命令フェッチ・デコード部21は、デコードした命令情報を命令スケジューリング部22に渡す(ステップS101)。
続いて、命令スケジューリング部22は、前後の命令との依存関係を確認して、命令実行部23に対して命令情報を渡す(ステップS102)。その後、命令実行部23では、受け取った命令情報に基づいて命令の実行が行われることになる(ステップS103)。
プロセッサコア2は、例えば、上記のように、概ね通常のプロセッサと同様の動作を行うことになる。ただし、本実施形態におけるプロセッサコア2は、以下の点で通常のプロセッサとは異なる動きを行う。
図8を参照すると、命令スケジューリング部22は、命令実行部23に対して命令情報を渡す際に、命令発行制限部25に対して発行命令情報を送信する(ステップS201)。
続いて、命令発行制限部25が発行命令情報を受信する。すると、命令発行制限部25の消費エネルギー推論部252は、発行命令情報と、分配電力決定部262から取得した電力統計情報と、に基づいて、消費エネルギーを算出する(ステップS202)。そして、消費エネルギー推論部252は、消費エネルギーを示す消費エネルギー情報を命令発行レート決定部253へと送信する。また、消費エネルギー推論部252は、消費エネルギー情報と等価な情報である消費電力量通知をLSI電力管理部26に通知する。その後、LSI電力管理部26では、各プロセッサコア2から受け付けた消費電力量通知に応じて、各プロセッサコア2に対して電力制限情報を送信することになる。
その後、命令発行レート決定部253は、消費エネルギー情報を受信する。また、命令発行レート決定部253は、LSI電力管理部26から電力制限情報を受信する。すると、命令発行レート決定部253は、受信した消費エネルギー情報と電力制限情報とに基づいて蓄積エネルギー量を算出する(ステップS203)。そして、命令発行レート決定部253は、算出した蓄積エネルギー量に基づいて命令発行制限指示を出力する(ステップS204)。
命令発行レート決定部253が出力した命令発行制限指示は、命令スケジューリング部22へと送信される。そして、命令発行制限指示を受信した命令スケジューリング部22は、受信した命令発行制限指示に基づいて、新規の命令の発行を制限することになる(ステップS205)。
以上のように、本実施形態におけるプロセッサコア2は、発行命令情報に基づいて消費エネルギーを算出し、算出した消費エネルギーに基づいて蓄積エネルギー量を算出する。そして、プロセッサコア2は、蓄積エネルギー量に基づいて、新規の命令の発行を制限する。
続いて、蓄積エネルギー量を算出する際の命令発行レート決定部253の動作について説明する。
図9を参照すると、命令発行レート決定部253のエネルギー制限カウンタ2537では、一定時間が経過するごとに(ステップS301、Yes)、最小値選択論理2535が選択した電力量が加算される(ステップS302)。一方で、エネルギー制限カウンタ2537では、消費エネルギー情報を受信するごとに(ステップS303、Yes)、当該消費エネルギー情報が示す消費エネルギーが減算されることになる(ステップS304)。
このように、蓄積エネルギー量は、一定時間ごとに加算される電力量(供給エネルギー)と、消費エネルギー情報を受信するごと(命令が発行されるごと)に減算される消費エネルギーと、に基づいて算出されることになる。
続いて、命令発行レート決定部253が消費エネルギー情報を受信してから最小値選択論理2535が電力量を選択するまでの動作について説明する。
図10を参照すると、命令発行レート決定部253が消費エネルギー情報を取得すると、エネルギー積算カウンタ2531が一定時間ごとの消費エネルギーの積算値を算出する(ステップS401)。そして、エネルギー積算カウンタ2531は、積算した消費エネルギーの積算値を積算消費エネルギー情報として消費電力履歴レジスタ2532に記憶する。
続いて、突入電流制限計算部2534が、消費電力履歴レジスタ2532に記憶されている積算消費エネルギー情報の平均値に予め定められた電力量を加算して許容電力量を算出する(ステップS402)。そして、突入電流制限計算部2534は、算出した許容電力量を最小値選択論理2535へ送信する。
最小値選択論理2535では、突入電流制限計算部2534から受信した許容電力量と分配電力決定部262から受信した電力制限情報との比較が行われる(ステップS403)。
最小値選択論理2535は、許容電力量が電力制限情報(が示す最大供給電力量)よりも大きい場合(ステップS403、Yes)には、電力制限情報が示す最大供給電力量を供給エネルギーとして選択する(ステップS404)。一方、最小値選択論理2535は、許容電力量が電力制限情報(が示す最大供給電力量)以下である場合(ステップS403、No)には、許容電力量を供給エネルギーとして選択する(ステップS405)。
上記のような動作により、最小値選択論理2535は、供給エネルギーを選択する。そして、最小値選択論理2535が選択した供給エネルギーは、一定時間ごとに、エネルギー制限カウンタ2537に加算されることになる(ステップS406)。
続いて、LSI電力管理部26が最大供給電力量を算出する際の動作について説明する。
図11を参照すると、LSI電力管理部26の使用電力比率算出部261は、各プロセッサコア2から消費電力量情報を受け取る(ステップS501)。すると、使用電力比率算出部261は、各プロセッサコア2から通知された消費電力量通知に基づいて、当該各プロセッサコア2のそれぞれが消費する電力量の比率を算出する(ステップS502)。その後、使用電力比率算出部261は、算出した電力量の比率を示す電力比率を分配電力決定部262に送信する。
分配電力決定部262は、使用電力比率算出部261から電力比率を受信する。また、分配電力決定部262は、制御情報設定レジスタ263から後述する電力制御情報を取得する。そして、分配電力決定部262は、使用電力比率算出部261から受信した電力比率と制御情報設定レジスタ263から取得した電力制御情報とに基づいて、プロセッサコア2のそれぞれについて最大供給電力量を決定する(ステップS503)。その後、分配電力決定部262は、決定した最大供給電力量を電力制限情報として各プロセッサコア2の命令発行レート決定部253に送信する(ステップS504)。
以上が、プロセッサコア2の動作についての説明である。
ここで、コンデンサを考慮した電子回路(プロセッサコア2)の誤動作の仕組み及びコンデンサを考慮した際の制御について説明する。
図12は、コンデンサを有する回路において、時刻3のときに消費電力が10Wから定格(20W)を上回る50Wに増加し、そのまま50W消費する動作率を保った場合のコンデンサへの蓄積電荷を表している。
図12の場合、時刻3、4、5、6では、コンデンサに蓄積されている電荷を利用することができる。そのため、電子回路は、コンデンサに蓄積された電荷を利用して正常に動作をすることが出来る。一方、時刻7では、コンデンサに蓄積された電荷が0になることになる。そのため、上記場合、時刻7の段階で電子回路は誤動作を起こすものと考えられる。
上記からすると、例えば図13で示すように、定格を超える電力の消費電力を利用した場合でも、コンデンサの電荷が尽きる前に定格の電力である20Wに電力が戻ると、回路は誤動作しないですむことになる。すなわち、上記のようなコンデンサを考慮した上での制御を行うことで、誤動作を起こさずに一時的に定格を上回る電力を利用可能なよう制御することが可能となることになる。
上記制御は、動作が周期的で消費電力の多い時間と少ない時間とが交互に発生する場合に、より大きな効果を有するものと考えられる。
例えば、図14で示すように、時刻3、4の間だけ消費電力が50W必要な処理を考える。また、上記処理の後、10Wで動作可能な低動作率期間があり、再び、50W必要な処理を行う場合を想定する。
この場合、コンデンサを考慮しているため、時刻4の段階ではコンデンサに十分な電荷が残っているため電力の制御を行う必要がないことになる。また、時刻3、4の間に消費された電荷は消費電力が10Wの期間で回復する。そのため、再び50W必要な処理を行う場合でも問題なく動作することになる。従って、上記場合においては、電力消費を抑える制御を行う必要はないことになる。
一方、コンデンサを考慮しない場合、例えば図15で示すように、定格20Wで制御されることになるものと考えられる。この場合、図14で示した時刻3、4で実施した処理が20Wに制限されることになる。そのため、その処理は時刻8まで完了せず、後続の処理も遅延するといった事態が発生するものと考えられる。
以上のように、コンデンサを考慮して電力消費を制御することで、不必要な制御を行うことなく、的確に電子回路の電力消費を制御することが出来る。
このように、本実施形態におけるプロセッサコア2は、消費エネルギー推論部252と命令発行レート決定部253とを有している。また、命令スケジューリング部22が命令発行制限部25に対して発行命令情報を送信するよう構成されており、統計情報設定レジスタ251が電力統計情報を格納するとともに分配電力決定部262が電力制限情報を算出するよう構成されている。このような構成により、命令発行制限部25は、発行命令情報と電力統計情報とに基づいて、命令に応じた消費エネルギーを算出することが出来る。また、命令発行レート決定部253は、消費エネルギーと電力制限情報とに基づいて、蓄積エネルギー量を算出することが出来る。その結果、命令発行レート決定部253は、蓄積エネルギー量に基づいて、命令発行制限指示を送信することが出来る。これにより、プロセッサコア2は、チップ内外のコンデンサの蓄積電荷を考慮の上で電力消費を制限することが可能となり、例えば処理時間が十分に短い(コンデンサに蓄積した電力が尽きる前に処理が終了する)場合などに、定格を超えた電力を消費して高速に計算を完了する、などの制御を行うことが可能となる。つまり、不必要な制御を行うことなく、的確に電子回路の電力消費を制御することが可能となる。
また、本実施形態におけるプロセッサコア2は、突入電流制限計算部2534と、最小値選択論理2535と、を有している。このような構成により、突入電流制限計算部2534は、消費エネルギーに基づいて許容電力量を算出することが出来る。また、最小値選択論理2535は、突入電流制限計算部2534が算出した許容電力量と電力制限情報が示す電力量とのうち小さい値を有する電力量を供給エネルギーとして選択することが出来る。その結果、例えば、直近の消費電力が1W程度であった場合には、たとえそのプロセッサコア2が10Wの電力を利用できるように割り当てられていたとしても、次回は最大で2Wまでしか利用しない、という制御を行うことが出来るようになる。ここで、回路の消費電力が急激に変化すると、回路に流れる電流量が急激に変化するため、大きな電圧降下を引き起こし、誤作動を起こす可能性があるものと考えられる。そのため、上記のように最小値選択論理2535が許容電力量と電力制限情報が示す電力量とのうち小さい値を有する電力量を選択することで、電圧降下による誤作動の可能性を低減することが可能となる。
また、上記誤動作の可能性を低減するためには、例えば、コンデンサの数を増やす、実装可能なトランジスタの数を制限する、といったことも考えられる。一方で、本願発明は、上記のように、突入電流制限計算部2534と、最小値選択論理2535と、を有しているため、上記のようなコンデンサ、トランジスタの調整を行うことなく誤作動の可能性を軽減することを可能としている。つまり、本実施形態におけるプロセッサコア2は、突入電流制限計算部2534と、最小値選択論理2535と、を有することで、過剰にコンデンサの数を増やしたり、トランジスタの数を制限したりすることなく、誤作動を行う可能性を低減することを可能としていることになる。
また、本実施形態におけるマルチコアプロセッサ1は、複数のプロセッサコア2を有している。そして、各プロセッサコア2は、自身が発行した命令に応じた発行命令情報と電力統計情報とに基づいて、消費エネルギーを算出するように構成されている。このような構成により、マルチコアプロセッサ1が有する各プロセッサコア2は、各自が発行した命令に基づいて各々の消費エネルギーを管理することが出来ることになる。その結果、プロセッサコア2ごとに電力消費を制限することが可能となる。
また、プロセッサコア2が利用する電力統計情報は、少なくとも、演算処理を行う際のコア自身、及び、演算処理を実施する際に利用する共有部分、の消費電力の変化を示している。また、プロセッサコア2は、上記のように、自身が発行した命令と電力統計情報とを用いて、消費エネルギーを算出するように構成されている。このような構成により、プロセッサコア2は、演算処理を行う際に利用する共有キャッシュ3や外部メモリ31などの共有部分を含む各部品に対する消費電力情報の収集網を設けることなく、発行命令情報に基づいて消費エネルギーを算出することが可能となる。従って、上記構成により、消費電力情報の収集網を設ける際に必要となるコストを削減することが可能となることになる。また、上記のように、電力統計情報は、共有部分の電力の変化も表している。そのため、各プロセッサコア2は、各プロセッサコア2が演算処理を行う際に利用する共有部分などの電力消費も加味した上で、電力消費の制御を行うことが可能となる。その結果、より的確な電力消費の制御を行うことが可能となる。
また、本実施形態におけるマルチコアプロセッサ1は、LSI電力管理部26を有している。このような構成により、LSI電力管理部26は、各プロセッサコア2が算出した消費エネルギーに基づいて、各プロセッサコア2に供給可能な電力量の上限値である最大供給電力量をプロセッサコア2のそれぞれについて決定することが出来る。その結果、マルチコアプロセッサ1は、各プロセッサコア2が算出した消費エネルギーに基づいて、LSIに供給される電力量を各プロセッサコア2のそれぞれに分配することが可能となる。これにより、LSIとして電力に余裕があるにもかかわらず電力制限による命令発行の抑止が発生することを防ぐことが可能となり、その結果、全体としての性能を落とさずにプロセッサコアごとの電力消費を制御することが可能となる。
なお、本実施形態においては、消費エネルギー推論部252は、命令の種別、読み書きするレジスタの個数、ベクトル長などを用いて消費エネルギーを算出するとした。しかしながら、消費エネルギー推論部252は、上記以外の値を用いて消費エネルギーを算出するよう構成することが出来る。例えば、消費エネルギー推論部252は、プレディケーション(マスク)の有無やキャッシュヒットの有無、性能カウンタ値などを用いて消費エネルギーを算出するよう構成することが出来る。
例えば、プロセッサの中には、キャッシュヒットの割合を測定するための性能カウンタを有するものが存在する。このような場合に、消費エネルギー推論部252は、性能カウンタの値を参考にしてロード・ストア命令の消費するエネルギーの推論値を変更することが考えられる。
また、消費エネルギー推論部252は、統計情報設定レジスタ251から電力統計情報を受け取らないように構成しても構わない。この場合には、消費エネルギー推論部252は、例えば、予め定められた値と、発行命令情報とに基づいて、消費エネルギーを算出することになる。
また、消費電力履歴レジスタ2532に記憶されている積算消費エネルギー情報の値を外部から参照可能なよう構成しても構わない。このように構成することで、例えば、積算消費エネルギー情報の値から発熱量を推測し、推測した発熱量に基づいてマシン室の空調を調整することが可能となる。
また、本実施形態においては、コンデンサの蓄積電荷が0になった場合に誤作動をするものとした。しかしながら、物理現象としては、回路に供給される電圧が10%程度低下すると誤作動をする可能性があるものと考えられる。そのため、電力制限決定部2538は、エネルギー制限カウンタ2537のカウンタ値が10%程度変化した段階で命令発行制限指示を出力するよう構成しても構わない。このように、電力制限決定部2538が命令発行制限指示を出力するタイミングは、エネルギー制限カウンタ2537のカウンタ値が負になった際や10を下回った場合に限定されない。
また、分配電力管理部262は、例えば、コンデンサに蓄積された電力を考慮して、最大供給電力量を決定するように構成しても構わない。
また、本実施形態においては、マルチコアプロセッサ1がLSI電力管理部26を有する場合について説明した。しかしながら、LSI電力管理部26の機能は、マルチコアプロセッサ1の外部の情報処理装置の有する機能として実現されても構わない。つまり、本発明は、マルチコアプロセッサとLSI電力管理部26としての機能を有する外部装置との構成により実現されても構わない。
[第2の実施形態]
本発明の第2の実施形態について、図16を参照して説明する。図16は、電子回路6の構成の一例を示す概略ブロック図である。
図16を参照すると、電子回路6は、消費エネルギー推論部61と、蓄積エネルギー量算出部62と、を有している。
消費エネルギー推論部61は、発行した命令に基づいて当該命令に応じた演算処理を行う際に消費するエネルギーである消費エネルギーを算出する。つまり、消費エネルギー推論部61は、電子回路6にて演算処理を行う際に、当該演算処理により消費されるエネルギーを算出する。そして、消費エネルギー推論部61は、算出した消費エネルギーを蓄積エネルギー量算出部62に送信する。
蓄積エネルギー量算出部62は、消費エネルギー推論部61が算出した消費エネルギーと、回路に供給される供給エネルギーと、に基づいて、電子回路6にて消費される電荷を蓄積する蓄電器に蓄積されているエネルギーの量である蓄積エネルギー量を算出する。つまり、蓄積エネルギー量算出部62は、消費エネルギーと供給エネルギーとに基づいて、蓄電器に蓄積されている電子回路6が利用可能な蓄積エネルギー量を算出する。
このように、本実施形態における電子回路6は、消費エネルギー推論部61と、蓄積エネルギー量算出部62と、を有している。このような構成により、消費エネルギー推論部61は、演算処理により消費されるエネルギーである消費エネルギーを算出することが出来る。また、蓄積エネルギー量算出部62は、消費エネルギー推論部61が算出した消費エネルギーと、供給エネルギーと、に基づいて、蓄積エネルギー量を算出することが出来る。その結果、電子回路6は、蓄電器に蓄積されている蓄積エネルギー量を考慮した上で電力消費を制御することが可能となる。これにより、電子回路6は、不必要な制御を行うことなく、的確に消費電力を制御することが可能となる。
[第3の実施形態]
本発明の第3の実施形態について、図17を参照して説明する。図17は、マルチコアプロセッサ7の構成の一例を示す概略ブロック図である。
図17を参照すると、マルチコアプロセッサ7は、複数のプロセッサコア71−1、71−2、…71−m(以下、特に区別しない場合はプロセッサコア71とする)を有している。
プロセッサコア71は、自身が発行した命令を示す発行命令情報と、当該命令に応じた処理を実行する際に生じる消費電力の変化を示す電力消費情報と、に基づいて、自身が発行した命令を実行する際に消費するエネルギーである消費エネルギーをそれぞれ算出する。つまり、マルチコアプロセッサ7が有する複数のプロセッサコア71のそれぞれが、自身が処理する命令の実行によって消費するエネルギーである消費エネルギーを算出するよう構成されている。
このように、本実施形態におけるマルチコアプロセッサ7は、各プロセッサコア71が、発行命令情報と、電力統計情報と、に基づいて、各々消費エネルギーを算出するように構成されている。このような構成により、各プロセッサコア7は、算出した消費エネルギーに基づいて、各自で新規の命令の発行の抑制などを行うことが出来るようになる。つまり、上記構成により、各プロセッサコア7は、各々が電力消費の上限を制御することが出来ることになる。その結果、より的確に電力消費を制御することが可能となる。
また、各プロセッサコア7は、発行命令情報と電力統計情報とに基づいて消費エネルギーを算出するため、各部品に対する消費電力情報の収集網を設けることなく、消費エネルギーを算出することが出来ることになる。その結果、上記消費電力網を設ける際のコストを削減することが可能となる。
[第4の実施形態]
本発明の第4の実施形態について、図18を参照して説明する。図18は、マルチコアプロセッサ8の構成の一例を示す概略ブロック図である。
図18を参照すると、マルチコアプロセッサ8は、複数のプロセッサコア81と、電力管理部82と、を有している。また、電力管理部82は供給電力量決定部821を有している。
電力管理部82は、複数のプロセッサコア81それぞれに供給する電力を管理する。電力管理部82は、上記のように、供給電力量決定部821を有している。
供給電力量決定部821は、複数のプロセッサコア81のそれぞれに供給可能な供給電力量の上限値である最大供給電力量を複数のプロセッサコア81のそれぞれについて決定する。
このように、本実施形態におけるマルチコアプロセッサ8は、供給電力量決定部821を有する電力管理部82を有している。このような構成により、供給電力量決定部821は、複数のプロセッサコア81のそれぞれに供給可能な供給電力量の上限値である最大供給電力量を複数のプロセッサコア81のそれぞれについて決定することが出来る。その結果、マルチコアプロセッサ8は、各プロセッサコア81の動作状況に応じて、マルチコアプロセッサ8全体に供給される供給電力量を振り分けることが可能となり、LSI全体で電力を有効に使い切ることが可能となる。これにより、全体としての性能を落とさずにプロセッサコアごとの電力消費を制御することが可能となる。
また、上記マルチコアプロセッサ8は、当該マルチコアプロセッサ8に所定のプログラムが組み込まれることで実現できる。具体的に、本発明の他の形態であるプログラムは、情報処理装置に、複数のプロセッサコアに供給する電力を管理する電力管理手段を実現させ、電力管理手段は、複数のプロセッサコアのそれぞれに供給可能な供給電力量の上限値である最大供給電力量を前記複数のプロセッサコアのそれぞれについて決定する、プログラムである。
また、上述したマルチコアプロセッサ8が作動することにより実行される電力制御方法は、複数のプロセッサコアのそれぞれに供給可能な供給電力量の上限値である最大供給電力量を複数のプロセッサコアのそれぞれについて決定し、複数のプロセッサコアのそれぞれには、決定した前記最大供給電力量に基づいて電力が供給される、という方法である。
上述した構成を有する、プログラム、又は、電力制御方法、の発明であっても、上記マルチコアプロセッサ8と同様の作用を有するために、上述した本発明の目的を達成することが出来る。
<付記>
上記実施形態の一部又は全部は、以下の付記のようにも記載されうる。以下、本発明におけるマルチコアプロセッサなどの概略を説明する。但し、本発明は、以下の構成に限定されない。
(付記1)
複数のプロセッサコアと、
前記複数のプロセッサコアに供給する電力を管理する電力管理部と、を有し、
前記電力管理部は、前記複数のプロセッサコアのそれぞれに供給可能な供給電力量の上限値である最大供給電力量を前記複数のプロセッサコアのそれぞれについて決定する供給電力量決定部を有する
マルチコアプロセッサ。
(付記2)
付記1に記載のマルチコアプロセッサであって、
前記複数のプロセッサコアは、自身が発行した命令に基づいて当該命令に応じた演算処理を行う際に消費するエネルギーである消費エネルギーを算出する消費エネルギー算出部をそれぞれ有し、
前記供給電力量決定部は、前記複数のプロセッサコアそれぞれが算出した前記消費エネルギーに基づいて、前記複数のプロセッサコアのそれぞれに供給可能な供給電力量の上限値である最大供給電力量を前記複数のプロセッサコアのそれぞれについて決定する
マルチコアプロセッサ。
(付記3)
付記2に記載のマルチコアプロセッサであって、
前記電力管理部は、前記複数のプロセッサコアそれぞれが算出した前記消費エネルギーに基づいて、前記複数のプロセッサコアのそれぞれが消費する電力量の比率を算出する使用電力量比率算出部を有し、
前記供給電力量決定部は、前記使用電力量比率算出部が算出した前記電力量の比率に基づいて、前記複数のプロセッサコアのそれぞれについて前記最大供給電力量を決定する
マルチコアプロセッサ。
(付記4)
付記3に記載のマルチコアプロセッサであって、
前記供給電力量決定部は、前記使用電力量比率算出部が算出した前記電力量の比率に基づいて、前記マルチコアプロセッサに供給可能な電力量を前記複数のプロセッサコアのそれぞれに分配することで、前記複数のプロセッサコアのそれぞれについて前記最大供給電力量を決定する
マルチコアプロセッサ。
(付記5)
付記3又は4に記載のマルチコアプロセッサであって、
前記供給電力量決定部は、前記複数のプロセッサコアのそれぞれに均等に配分した電力量の合計値を前記マルチコアプロセッサに供給可能な電力量から減算した余りを前記電力量の比率に基づいて前記複数のプロセッサコアのそれぞれに分配することで、前記複数のプロセッサコアのそれぞれについて前記最大供給電力量を決定する
マルチコアプロセッサ。
(付記6)
付記1乃至5のいずれかに記載のマルチコアプロセッサであって、
前記複数のプロセッサコアのそれぞれには予め電力配分優先度が定められており、
前記供給電力量決定部は、前記複数のプロセッサコアのそれぞれに定められた電力配分優先度に応じて前記最大供給電力量をそれぞれ決定する
マルチコアプロセッサ。
(付記7)
付記1乃至6のいずれかに記載のマルチコアプロセッサであって、
前記複数のプロセッサコアのそれぞれは、前記供給電力量決定部が決定した前記最大供給電力量に応じて新規の命令発行の制御を行う命令発行制御部を有する
マルチコアプロセッサ。
(付記8)
付記7に記載のマルチコアプロセッサであって、
前記複数のプロセッサコアのそれぞれは、前記供給電力量決定部が決定した前記最大供給電力量に基づいて算出される供給エネルギーから自身が算出した前記消費エネルギーを減算することで、命令を処理する際に消費可能な電荷を蓄積する蓄電器に蓄積されている蓄積エネルギー量を算出するよう構成され、
前記複数のプロセッサコアのそれぞれが有する前記命令発行制御部は、算出した前記蓄積エネルギー量に基づいて新規の命令発行の制御を行う
マルチコアプロセッサ。
(付記9)
複数のプロセッサコアのそれぞれに供給可能な供給電力量の上限値である最大供給電力量を前記複数のプロセッサコアのそれぞれについて決定し、
前記複数のプロセッサコアのそれぞれには、決定した前記最大供給電力量に基づいて電力が供給される
電力制御方法。
(付記9−1)
複数のプロセッサコアのそれぞれが、自身が発行した命令に基づいて当該命令に応じた演算処理を行う際に消費するエネルギーである消費エネルギーを算出し、
前記複数のプロセッサコアそれぞれが算出した前記消費エネルギーに基づいて、前記複数のプロセッサコアのそれぞれに供給可能な供給電力量の上限値である最大供給電力量を前記複数のプロセッサコアのそれぞれについて決定する
電力制御方法。
(付記9−2)
付記9又は9−1に記載の電力制御方法であって、
前記複数のプロセッサコアそれぞれが算出した前記消費エネルギーに基づいて、前記複数のプロセッサコアのそれぞれが消費する電力量の比率を算出し、
算出した前記電力量の比率に基づいて、前記複数のプロセッサコアのそれぞれについて前記最大供給電力量を決定する
電力制御方法。
(付記9−3)
付記9−2に記載の電力制御方法であって、
算出した前記電力量の比率に基づいて、前記マルチコアプロセッサに供給可能な電力量を前記複数のプロセッサコアのそれぞれに分配することで、前記複数のプロセッサコアのそれぞれについて前記最大供給電力量を決定する
電力制御方法。
(付記10)
情報処理装置に、
前記複数のプロセッサコアに供給する電力を管理する電力管理手段を実現させ、
前記電力管理手段は、前記複数のプロセッサコアのそれぞれに供給可能な供給電力量の上限値である最大供給電力量を前記複数のプロセッサコアのそれぞれについて決定する
プログラム。
(付記10−1)
付記10に記載のプログラムであって、
前記複数のプロセッサコアに、自身が発行した命令に基づいて当該命令に応じた演算処理を行う際に消費するエネルギーである消費エネルギーを算出する消費エネルギー算出手段をそれぞれ実現させ、
前記電力管理手段は、前記複数のプロセッサコアそれぞれが算出した前記消費エネルギーに基づいて、前記複数のプロセッサコアのそれぞれに供給可能な供給電力量の上限値である最大供給電力量を前記複数のプロセッサコアのそれぞれについて決定する
プログラム。
(付記11)
付記10又は10−1に記載のプログラムであって、
前記電力管理手段は、前記複数のプロセッサコアそれぞれが算出した前記消費エネルギーに基づいて、前記複数のプロセッサコアのそれぞれが消費する電力量の比率を算出し、算出した前記電力量の比率に基づいて、前記複数のプロセッサコアのそれぞれについて前記最大供給電力量を決定する
プログラム。
(付記11−1)
付記11に記載のプログラムであって、
前記電力管理手段は、算出した前記電力量の比率に基づいて、前記マルチコアプロセッサに供給可能な電力量を前記複数のプロセッサコアのそれぞれに分配することで、前記複数のプロセッサコアのそれぞれについて前記最大供給電力量を決定する
プログラム。
1 マルチコアプロセッサ
2 プロセッサコア
21 命令フェッチ・デコード部
22 命令スケジューリング部
23 命令実行部
24 外部部品接続部
25 命令発行制限部
251 統計情報設定レジスタ
252 消費エネルギー推論部
253 命令発行レート決定部
2531 エネルギー積算カウンタ
2532 消費電力履歴レジスタ
2533 エネルギー積算時刻飽和カウンタ
2534 突入電流制限計算部
2535 最小値選択論理
2536 電力制限時刻飽和カウンタ
2537 エネルギー制限カウンタ
2538 電力制限決定部
26 LSI電力管理部
261 使用電力比率算出部
262 分配電力決定部
263 制御情報設定レジスタ
3 共有キャッシュ
31 外部メモリ
4 外部I/O接続部
41 外部I/O
5 オンチップネットワーク
6 電子回路
61 消費エネルギー推論部
62 蓄積エネルギー量算出部
7、8 マルチコアプロセッサ
71、81 プロセッサコア
82 電力管理部
821 供給電力量決定部

Claims (10)

  1. 複数のプロセッサコアと、
    前記複数のプロセッサコアに供給する電力を管理する電力管理部と、を有し、
    前記電力管理部は、前記複数のプロセッサコアのそれぞれに供給可能な供給電力量の上限値である最大供給電力量を前記複数のプロセッサコアのそれぞれについて決定する供給電力量決定部を有する
    マルチコアプロセッサ。
  2. 請求項1に記載のマルチコアプロセッサであって、
    前記複数のプロセッサコアは、自身が発行した命令に基づいて当該命令に応じた演算処理を行う際に消費するエネルギーである消費エネルギーを算出する消費エネルギー算出部をそれぞれ有し、
    前記供給電力量決定部は、前記複数のプロセッサコアそれぞれが算出した前記消費エネルギーに基づいて、前記複数のプロセッサコアのそれぞれに供給可能な供給電力量の上限値である最大供給電力量を前記複数のプロセッサコアのそれぞれについて決定する
    マルチコアプロセッサ。
  3. 請求項2に記載のマルチコアプロセッサであって、
    前記電力管理部は、前記複数のプロセッサコアそれぞれが算出した前記消費エネルギーに基づいて、前記複数のプロセッサコアのそれぞれが消費する電力量の比率を算出する使用電力量比率算出部を有し、
    前記供給電力量決定部は、前記使用電力量比率算出部が算出した前記電力量の比率に基づいて、前記複数のプロセッサコアのそれぞれについて前記最大供給電力量を決定する
    マルチコアプロセッサ。
  4. 請求項3に記載のマルチコアプロセッサであって、
    前記供給電力量決定部は、前記使用電力量比率算出部が算出した前記電力量の比率に基づいて、前記マルチコアプロセッサに供給可能な電力量を前記複数のプロセッサコアのそれぞれに分配することで、前記複数のプロセッサコアのそれぞれについて前記最大供給電力量を決定する
    マルチコアプロセッサ。
  5. 請求項3又は4に記載のマルチコアプロセッサであって、
    前記供給電力量決定部は、前記複数のプロセッサコアのそれぞれに均等に配分した電力量の合計値を前記マルチコアプロセッサに供給可能な電力量から減算した余りを前記電力量の比率に基づいて前記複数のプロセッサコアのそれぞれに分配することで、前記複数のプロセッサコアのそれぞれについて前記最大供給電力量を決定する
    マルチコアプロセッサ。
  6. 請求項1乃至5のいずれかに記載のマルチコアプロセッサであって、
    前記複数のプロセッサコアのそれぞれには予め電力配分優先度が定められており、
    前記供給電力量決定部は、前記複数のプロセッサコアのそれぞれに定められた電力配分優先度に応じて前記最大供給電力量をそれぞれ決定する
    マルチコアプロセッサ。
  7. 請求項1乃至6のいずれかに記載のマルチコアプロセッサであって、
    前記複数のプロセッサコアのそれぞれは、前記供給電力量決定部が決定した前記最大供給電力量に応じて新規の命令発行の制御を行う命令発行制御部を有する
    マルチコアプロセッサ。
  8. 請求項7に記載のマルチコアプロセッサであって、
    前記複数のプロセッサコアのそれぞれは、前記供給電力量決定部が決定した前記最大供給電力量に基づいて算出される供給エネルギーから自身が算出した前記消費エネルギーを減算することで、命令を処理する際に消費可能な電荷を蓄積する蓄電器に蓄積されている蓄積エネルギー量を算出するよう構成され、
    前記複数のプロセッサコアのそれぞれが有する前記命令発行制御部は、算出した前記蓄積エネルギー量に基づいて新規の命令発行の制御を行う
    マルチコアプロセッサ。
  9. 複数のプロセッサコアのそれぞれに供給可能な供給電力量の上限値である最大供給電力量を前記複数のプロセッサコアのそれぞれについて決定し、
    前記複数のプロセッサコアのそれぞれには、決定した前記最大供給電力量に基づいて電力が供給される
    電力制御方法。
  10. 情報処理装置に、
    複数のプロセッサコアに供給する電力を管理する電力管理手段を実現させ、
    前記電力管理手段は、前記複数のプロセッサコアのそれぞれに供給可能な供給電力量の上限値である最大供給電力量を前記複数のプロセッサコアのそれぞれについて決定する
    プログラム。


JP2015068828A 2015-03-30 2015-03-30 マルチコアプロセッサ、電力制御方法、プログラム Active JP6123832B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2015068828A JP6123832B2 (ja) 2015-03-30 2015-03-30 マルチコアプロセッサ、電力制御方法、プログラム
US15/084,729 US10409354B2 (en) 2015-03-30 2016-03-30 Multi-core processor, power control method, and program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2015068828A JP6123832B2 (ja) 2015-03-30 2015-03-30 マルチコアプロセッサ、電力制御方法、プログラム

Publications (2)

Publication Number Publication Date
JP2016189112A true JP2016189112A (ja) 2016-11-04
JP6123832B2 JP6123832B2 (ja) 2017-05-10

Family

ID=57016128

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2015068828A Active JP6123832B2 (ja) 2015-03-30 2015-03-30 マルチコアプロセッサ、電力制御方法、プログラム

Country Status (2)

Country Link
US (1) US10409354B2 (ja)
JP (1) JP6123832B2 (ja)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11567556B2 (en) * 2019-03-28 2023-01-31 Intel Corporation Platform slicing of central processing unit (CPU) resources
US11625087B2 (en) 2021-08-28 2023-04-11 International Business Machines Corporation Current prediction-based instruction throttling control
US11966786B2 (en) 2021-08-28 2024-04-23 International Business Machines Corporation Proxy-based instruction throttling control

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005527010A (ja) * 2001-10-22 2005-09-08 インターナショナル・ビジネス・マシーンズ・コーポレーション 処理集積回路の電力消費量を削減するための方法および装置
JP2009116862A (ja) * 2007-11-08 2009-05-28 Internatl Business Mach Corp <Ibm> 電子システムの電力管理の方法、システム、およびプログラム(電子システムの電力管理)
JP2013518346A (ja) * 2010-01-28 2013-05-20 カビウム・インコーポレーテッド 電力制御方法および電力制御装置

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5585651A (en) 1978-12-22 1980-06-27 Toshiba Corp Tungsten alloy for electron tube cathode heating filament
US7992017B2 (en) * 2007-09-11 2011-08-02 Intel Corporation Methods and apparatuses for reducing step loads of processors
WO2012001776A1 (ja) 2010-06-29 2012-01-05 富士通株式会社 マルチコアシステム、スケジューリング方法およびスケジューリングプログラム
JP2014067191A (ja) * 2012-09-25 2014-04-17 Fujitsu Ltd 演算処理回路及び電源制御方法
US9235252B2 (en) * 2012-12-21 2016-01-12 Intel Corporation Dynamic balancing of power across a plurality of processor domains according to power policy control bias
US20150067356A1 (en) * 2013-08-30 2015-03-05 Advanced Micro Devices, Inc. Power manager for multi-threaded data processor
US10114435B2 (en) * 2013-12-23 2018-10-30 Intel Corporation Method and apparatus to control current transients in a processor

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005527010A (ja) * 2001-10-22 2005-09-08 インターナショナル・ビジネス・マシーンズ・コーポレーション 処理集積回路の電力消費量を削減するための方法および装置
JP2009116862A (ja) * 2007-11-08 2009-05-28 Internatl Business Mach Corp <Ibm> 電子システムの電力管理の方法、システム、およびプログラム(電子システムの電力管理)
JP2013518346A (ja) * 2010-01-28 2013-05-20 カビウム・インコーポレーテッド 電力制御方法および電力制御装置

Also Published As

Publication number Publication date
US20160291667A1 (en) 2016-10-06
JP6123832B2 (ja) 2017-05-10
US10409354B2 (en) 2019-09-10

Similar Documents

Publication Publication Date Title
US8356194B2 (en) Method and apparatus for estimating overshoot power after estimating power of executing events
US8886979B2 (en) Methods and apparatuses for reducing step loads of processors
US10355966B2 (en) Managing variations among nodes in parallel system frameworks
US8695002B2 (en) Multi-threaded processors and multi-processor systems comprising shared resources
JP6123832B2 (ja) マルチコアプロセッサ、電力制御方法、プログラム
US9465664B1 (en) Systems and methods for allocation of environmentally regulated slack
JP2014048972A (ja) 処理装置、情報処理装置、及び消費電力管理方法
JP6214056B2 (ja) マルチコアプロセッサ、情報処理方法、プログラム
JP2005338986A (ja) データ処理装置、および、半導体装置
JP6123831B2 (ja) 電子回路、演算処理制御方法、プログラム、マルチコアプロセッサ
JP4209377B2 (ja) 半導体装置
JP6083278B2 (ja) 計算システム及びその電力管理方法
JP2012093832A (ja) 情報処理装置
CN117546121A (zh) 用于通过减少每周期指令数来控制多处理器核心系统中的电流供应的系统和方法
CN116088662A (zh) 功耗管理方法、多处理单元系统和功耗管理模组
JP2017021513A (ja) マルチコアプロセッサ、マルチコアプロセッサのクロック制御方法およびクロック制御プログラム
Islam et al. Learning based power management for periodic real-time tasks
JP5444964B2 (ja) 情報処理装置及びスケジューリング方法
JP7124592B2 (ja) ジョブ実行システムおよびジョブ実行方法
JP4530074B2 (ja) 半導体装置
CN114489812A (zh) 指令发射方法及装置、电子设备及存储介质
Xu Control Techniques for Uncore Power Mangement in Chip Multiprocessor Designs

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20161004

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20161122

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: 20170307

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20170320

R150 Certificate of patent or registration of utility model

Ref document number: 6123832

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150