JP5714169B2 - Control device and information processing device - Google Patents
Control device and information processing device Download PDFInfo
- Publication number
- JP5714169B2 JP5714169B2 JP2014224552A JP2014224552A JP5714169B2 JP 5714169 B2 JP5714169 B2 JP 5714169B2 JP 2014224552 A JP2014224552 A JP 2014224552A JP 2014224552 A JP2014224552 A JP 2014224552A JP 5714169 B2 JP5714169 B2 JP 5714169B2
- Authority
- JP
- Japan
- Prior art keywords
- data
- cache memory
- processing device
- prefetch
- unit
- 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.)
- Expired - Fee Related
Links
- 230000010365 information processing Effects 0.000 title claims description 6
- 238000012545 processing Methods 0.000 claims description 67
- 238000000034 method Methods 0.000 description 27
- 238000010586 diagram Methods 0.000 description 16
- 238000001514 detection method Methods 0.000 description 5
- 230000006870 function Effects 0.000 description 5
- 230000003252 repetitive effect Effects 0.000 description 2
- 238000004891 communication Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 239000010454 slate Substances 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
Images
Landscapes
- Memory System Of A Hierarchy Structure (AREA)
Description
本発明の実施形態は、制御装置および情報処理装置に関する。 Embodiments described herein relate generally to a control device and an information processing device.
近年、携帯電話、スレート型端末およびタブレット型端末などの情報機器などから、スーパーコンピュータなどの大規模システムに至る幅広い計算機システムにおいて、システムの省電力化が重要な課題となっている。省電力化の一つの方法として、電力を必要としている部分(ユニット)にだけ電力を供給するパワーゲーティング技術などが挙げられる。 In recent years, in a wide range of computer systems ranging from information devices such as mobile phones, slate terminals, and tablet terminals to large-scale systems such as supercomputers, system power saving has become an important issue. As one method of power saving, there is a power gating technique that supplies power only to a portion (unit) that needs power.
例えば計算機システムのプロセッサが何も処理を実行しないアイドル状態の場合、プロセッサの処理に用いられる複数のデータの一部が記憶されるキャッシュメモリに対する電力供給を停止することで、省電力化を図ることができる。 For example, when the processor of the computer system is in an idle state in which no processing is performed, power saving is achieved by stopping power supply to a cache memory in which a part of a plurality of data used for the processor processing is stored. Can do.
上述の計算機システムは、主記憶装置に記憶された複数のデータのうち、近い将来プロセッサが使用する可能性が高いデータを予測し、その予測したデータを予めキャッシュメモリ上に読み出すプリフェッチ機能を備えているのが一般的である。ここで、例えばプリフェッチにより読み出されたデータがキャッシュメモリに記憶されているにも関わらず、キャッシュメモリに対する電力の供給が停止された場合は、プリフェッチによりキャッシュメモリ上に読み出されたデータは消えてしまうので、そのデータを使用する際には、再度そのデータをキャッシュメモリ上に読み出す必要がある。このため、プリフェッチに使用される電力が無駄になってしまうという問題がある。 The above computer system has a prefetch function that predicts data that is likely to be used by the processor in the near future from a plurality of data stored in the main storage device, and reads the predicted data onto the cache memory in advance. It is common. Here, for example, when power supply to the cache memory is stopped even though the data read by the prefetch is stored in the cache memory, the data read onto the cache memory by the prefetch is erased. Therefore, when using the data, it is necessary to read the data into the cache memory again. For this reason, there is a problem that power used for prefetch is wasted.
本発明が解決しようとする課題は、プリフェッチに使用される電力が無駄になることを防止可能な制御装置および情報処理装置を提供することである。 The problem to be solved by the present invention is to provide a control device and an information processing device capable of preventing the power used for prefetching from being wasted.
実施形態の制御装置は、処理装置が処理を実行していないアイドル状態であり、処理装置が予測したデータストリームの数が閾値未満の場合は、キャッシュメモリに対する電力の供給を停止するように電源部を制御し、アイドル状態であり、処理装置が予測したデータストリームの数が閾値以上の場合は、キャッシュメモリに対する電力の供給を継続するように電源部を制御する。 The control device according to the embodiment is in an idle state in which the processing device is not executing processing, and when the number of data streams predicted by the processing device is less than a threshold, the power supply unit stops the power supply to the cache memory When the number of data streams predicted by the processing device is equal to or greater than the threshold, the power supply unit is controlled to continue supplying power to the cache memory.
以下、添付図面を参照しながら、本発明に係る制御装置および情報処理装置の実施の形態を詳細に説明する。 Hereinafter, embodiments of a control device and an information processing device according to the present invention will be described in detail with reference to the accompanying drawings.
(第1実施形態)
図1は、第1実施形態の制御システム100の概略構成例を示すブロック図である。図1に示すように、制御システム100は、処理装置10と、キャッシュ部20と、主記憶装置30と、電力を供給する電源部40とを含んで構成される。キャッシュ部20と主記憶装置30は、バス110を介して相互に接続される。なお、ここでは詳細な図示は省略するが、本実施形態の制御システム100は、他にも、ROM、HDDやSSDなどの外部記憶装置、ディスプレイなどの表示装置、マウスやキーボードなどの入力装置、および、通信I/F装置などを備えており、通常のコンピュータを利用したハードウェア構成となっている。
(First embodiment)
FIG. 1 is a block diagram illustrating a schematic configuration example of a control system 100 according to the first embodiment. As shown in FIG. 1, the control system 100 includes a
処理装置10は、データを処理する。処理装置10は、各種の処理を実行し、制御システム100全体の動作を制御する。処理装置10は、例えばCPU(Central Processing Unit)などの制御装置で構成され得る。主記憶装置30は、処理装置10が実行する処理に用いられる複数のデータを記憶する。
The
キャッシュ部20は、キャッシュコントローラ50とキャッシュメモリ60とを含んで構成される。キャッシュコントローラ50は、動作制御部51とプリフェッチ部52とを備える。動作制御部51は、主記憶装置30からのデータの読み出し動作、キャッシュメモリ60に対するデータの書き込み動作などを制御する。プリフェッチ部52は、主記憶装置30に記憶された複数のデータのうち、将来アクセスされる可能性の高いデータを予測して、予めキャッシュメモリ60上に読み出す(ロードする)プリフェッチを実行する。より具体的には、プリフェッチ部52は、処理装置10のメモリアクセス履歴に基づく予測アルゴリズムにより選定されたデータを、予めキャッシュメモリ60上に読み出す。
The
図2は、予測アルゴリズムの一例を示す概念図である。図2の例では、処理装置10は、番号10のデータ、番号11のデータ、番号12のデータの順番でアクセスを行っているので、プリフェッチ部52は、処理装置10によるアクセスは番号順に実行されると予測する。そして、プリフェッチ部52は、将来アクセスされる可能性の高いデータとして、番号17のデータから順番に選定していき、その選定したデータをキャッシュメモリ60上に読み出していく。なお、ここでは、連続してアクセスされる1本のデータストリーム(アクセスライン)を予測する予測アルゴリズムを例に挙げて説明したが、これに限らず、予測アルゴリズムは、将来アクセスが行われる可能性の高いデータを予測するものであればよく、その種類は任意である。例えば、処理装置10がインターリーブ方式のアクセスを行う場合は、複数のアクセスライン(データストリーム)を同時に予測するものであってもよいし、一定間隔おきにアクセスが行われるストライドアクセスを予測するものであってもよい。
FIG. 2 is a conceptual diagram illustrating an example of a prediction algorithm. In the example of FIG. 2, the
再び図1に戻って説明を続ける。キャッシュメモリ60は、主記憶装置30に記憶された複数のデータの一部を記憶する。キャッシュメモリ60は、例えばスタティックRAM(Random Access Memory)などの揮発性のメモリで構成され、電力の供給が停止すると記憶内容は消失する。図3は、キャッシュメモリ60の構成例を示すブロック図である。キャッシュメモリ60は、キャッシュされたデータ(以下、「キャッシュデータ」と呼ぶ)61が配列されて格納されるデータアレイ部62と、複数のキャッシュデータ61と1対1に対応する複数のタグ63が格納されるタグアレイ部64と、未使用プリフェッチビットカウンタ65とを有する。
Returning to FIG. 1 again, the description will be continued. The
図4は、タグ63の構成例を示す図である。図4に示すように、タグ63は、メモリアドレス71とダーティビット72と無効ビット73とプリフェッチビット74とを含んで構成される。メモリアドレス71は、対応する主記憶装置30の位置(ブロック)を示す情報である。ダーティビット72は、キャッシュデータ61の内容が、主記憶装置30のうちメモリアドレス71が示す位置に格納されたデータの内容と一致しているか否かを示す情報である。この例では、キャッシュデータ61の内容が、主記憶装置30のうちメモリアドレス71が示す位置に格納されたデータの内容と一致していない場合は、ダーティビットは「1」に設定され、キャッシュデータ61の内容が、主記憶装置30のうちメモリアドレス71が示す位置に格納されたデータの内容と一致している場合は、ダーティビットは「0」に設定される。無効ビットは、対応するキャッシュデータ61がデータアレイ部62に格納されているか否かを示す情報である。キャッシュデータ61がデータアレイ部62に格納されている場合は、無効ビットは「1」に設定され、キャッシュデータ61がデータアレイ部62に格納されていない場合は、無効ビットは「0」に設定される。
FIG. 4 is a diagram illustrating a configuration example of the
プリフェッチビット74は、対応するキャッシュデータ61が、プリフェッチによりキャッシュメモリ60上に読み出されたデータであるか否かを示す情報である。キャッシュデータ61が、プリフェッチによりキャッシュメモリ60上に読み出されたデータである場合は、プリフェッチビット74は有効であることを示す「1」に設定され、キャッシュデータ61が、プリフェッチによりキャッシュメモリ60上に読み出されたデータではない場合は、プリフェッチビット74は無効であることを示す「0」に設定される。また、プリフェッチによりキャッシュメモリ60上に読み出されたキャッシュデータ61に対して処理装置10からのアクセスが行われた場合は、当該キャッシュデータ61に対応するプリフェッチビットは「1」から「0」に設定される。
The
本実施形態では、キャッシュコントローラ50(プリフェッチ部52)は、プリフェッチにより主記憶装置30のデータをキャッシュメモリ60上に読み出した場合、その読み出したデータをタグアレイ部64に格納するとともに、当該読み出したデータに対応するタグ63を作成してタグアレイ部64に格納する。また、本実施形態では、キャッシュコントローラ50(動作制御部51)は、プリフェッチによりキャッシュメモリ60上に読み出されたキャッシュデータ61に対して処理装置10からのアクセスが行われた場合、当該キャッシュデータ61に対応するプリフェッチビット74を「1」から「0」に設定する。
In the present embodiment, when the cache controller 50 (prefetch unit 52) reads the data of the
未使用プリフェッチビットカウンタ65は、プリフェッチによりキャッシュメモリ60上に読み出されたキャッシュデータ61の数をカウントする。より具体的には、未使用プリフェッチビットカウンタ65は、プリフェッチビット74が「1」に設定されたタグ63の総数をカウントする。
The unused prefetch bit counter 65 counts the number of
図5は、処理装置10が不図示のHDD等に格納されたプログラムを実行することにより実現される機能を示すブロック図である。つまりは、制御システム100の機能ブロック図であると捉えることもできる。図5に示すように、制御システム100の機能には、検出部81と判定部82と電源制御部83と再開処理部84とが含まれる。なお、これらの機能のうちの少なくとも一部を個別の回路(ハードウェア)で実現することもできる。
FIG. 5 is a block diagram illustrating functions realized when the
検出部81は、処理装置10が何も処理を実行していないアイドル状態であるか否かを検出する。判定部82は、検出部81により処理装置10がアイドル状態であると検出された場合、プリフェッチの状態に応じて、キャッシュメモリ60に対する電力の供給を停止するか否かを判定する。本実施形態では、判定部82は、プリフェッチによりキャッシュメモリ60上に読み出されたキャッシュデータ61の数が閾値未満の場合は、キャッシュメモリ60に対する電力の供給を停止すると判定する。一方、判定部82は、プリフェッチによりキャッシュメモリ60上に読み出されたキャッシュデータ61の数が閾値以上の場合は、キャッシュメモリ60に対する電力の供給を継続する(停止しない)と判定する。
The
より具体的には、判定部82は、未使用プリフェッチビットカウンタ65のカウント値が閾値未満の場合は、キャッシュメモリ60に対する電力の供給を停止すると判定する。一方、判定部82は、未使用プリフェッチビットカウンタ65のカウント値が閾値以上の場合は、キャッシュメモリ60に対する電力の供給を停止しないと判定する。なお、閾値は任意の値に設定することができる。閾値は、制御システム100の各要素モジュールの性能などに依存するため、制御システム100に適した値を採用することが好ましい。例えば処理装置10がインターリーブ方式のアクセスを行う場合、プリフェッチされ得るデータ数の最大値の0.5倍(3本のアクセスラインのうちの2本は予測できていることを示す)を閾値として採用することもできるし、再開時の速度を重視する場合は1などの小さい値を閾値として採用することもできるし、実験的に調整して求めた値を閾値として採用することもできる。
More specifically, the
電源制御部83は、判定部82によりキャッシュメモリ60に対する電力の供給を停止すると判定された場合は、キャッシュメモリ60に対する電力の供給を停止するように電源部40を制御する。一方、電源制御部83は、判定部82によりキャッシュメモリ60に対する電力の供給を停止しないと判定された場合は、キャッシュメモリ60に対する電力の供給を継続するように電源部40を制御する。
When the
再開処理部84は、キャッシュメモリ60に対する電力の供給が停止されている状態において、所定の復帰要因を受け付けた場合に、キャッシュメモリ60に対する電力の供給を再開するように電源部40を制御する。復帰要因の種類は任意であり、例えば割り込み処理が復帰要因であってもよい。この場合、再開処理部84は、キャッシュメモリ60に対する電力の供給が停止されている状態において、割り込み処理を受け付けた場合に、キャッシュメモリ60に対する電力の供給を再開するように電源部40を制御する。
When the supply of power to the
図6は、制御システム100が実行する電源制御処理の一例を示すフローチャートである。この電源制御処理は、処理装置10が所定のソフトウェアプログラムを実行することにより実現される。図6に示すように、検出部81により処理装置10がアイドル状態であると検出された場合(ステップS1の結果:YES)、判定部82は判定処理を実行する(ステップS2)。
FIG. 6 is a flowchart illustrating an example of a power supply control process executed by the control system 100. This power supply control process is realized by the
図7は、ステップS2における判定処理の一例を示すフローチャートである。図7に示すように、まず判定部82は、未使用プリフェッチビットカウンタ65のカウント値を参照する(ステップ101)。次に、判定部82は、未使用プリフェッチビットカウンタ65のカウント値(プリフェッチビット74が「1」に設定されたタグ63の総数)が閾値以上であるか否かを判定する(ステップS102)。未使用プリフェッチビットカウンタ65のカウント値が閾値以上の場合(ステップS102の結果:YES)、判定部82は、キャッシュメモリ60に対する電力の供給を停止しないと判定する(ステップS103)。一方、未使用プリフェッチビットカウンタ65のカウント値が閾値未満の場合(ステップS102の結果:NO)、判定部82は、キャッシュメモリ60に対する電力の供給を停止すると判定する(ステップS104)。以上が判定処理の内容である。
FIG. 7 is a flowchart illustrating an example of the determination process in step S2. As shown in FIG. 7, first, the
再び図6に戻って説明を続ける。ステップS2の判定処理の結果、キャッシュメモリ60に対する電力の供給を停止すると判定された場合(ステップS3の結果:YES)、電源制御部83は、キャッシュメモリ60に対する電力の供給を停止するように電源部40を制御する(ステップS4)。一方、キャッシュメモリ60に対する電力の供給を停止しないと判定された場合(ステップS3の結果:NO)、電源制御部83は、キャッシュメモリ60に対する電力の供給を継続するように電源部40を制御する(ステップS5)。
Returning to FIG. 6 again, the description will be continued. If it is determined that the supply of power to the
以上に説明したように、本実施形態では、プリフェッチによりキャッシュメモリ60上に読み出されたキャッシュデータ61の数が閾値以上の場合は、処理装置10がアイドル状態であっても、キャッシュメモリ60に対する電力の供給は停止されないので、プリフェッチに使用される電力が無駄になることを防止できる。
As described above, in the present embodiment, when the number of
(第2実施形態)
次に、第2実施形態について説明する。第2実施形態の判定部82は、プリフェッチ部52が、将来アクセスされる可能性の高いデータを予測できない場合は、キャッシュメモリ60に対する電力の供給を停止すると判定し、プリフェッチ部52が、将来アクセスされる可能性の高いデータを予測できた場合は、キャッシュメモリに対する電力の供給を停止しないと判定する点で上述の第1実施形態と相違する。第1実施形態と共通する部分については、同一の符号を付して適宜に説明を省略する。
(Second Embodiment)
Next, a second embodiment will be described. The
図8は、第2実施形態のキャッシュメモリ600の構成例を示すブロック図である。図8に示すように、キャッシュメモリ600は、前述の未使用プリフェッチビットカウンタ65の代わりに、プリフェッチ動作カウンタ66を有する点で第1実施形態と相違するが、その他の構成は第1実施形態のキャッシュメモリ60と同様である。本実施形態では、プリフェッチ部52は、主記憶装置30に記憶された複数のデータのうち将来アクセスされる可能性の高いデータを予測できない場合は、プリフェッチ動作カウンタ66のカウント値を「0」に設定する。一方、プリフェッチ部52は、主記憶装置30に記憶された複数のデータのうち将来アクセスされる可能性が高いデータを予測できた場合は、プリフェッチ動作カウンタ66のカウント値を「1」に設定する。なお、これに限らず、例えば処理装置10がインターリーブ方式のアクセスを行う場合、プリフェッチ部52は、プリフェッチ動作カウンタ66のカウント値を、予測できたアクセスラインの本数を示す値に設定することもできる。
FIG. 8 is a block diagram illustrating a configuration example of the cache memory 600 according to the second embodiment. As shown in FIG. 8, the cache memory 600 is different from the first embodiment in that it has a
本実施形態の判定部82は、プリフェッチ動作カウンタ66のカウント値が「1」の場合は、キャッシュメモリ60に対する電力の供給を停止しないと判定する。一方、判定部82は、プリフェッチ動作カウンタ66のカウント値が「0」の場合は、キャッシュメモリ60に対する電力の供給を停止すると判定する。なお、これに限らず、例えば処理装置10がインターリーブ方式のアクセスを行う場合、判定部82は、プリフェッチ動作カウンタ66のカウント値が閾値以上の場合は、キャッシュメモリ60に対する電力の供給を継続すると判定し、カウント値が閾値未満の場合は、キャッシュメモリ60に対する電力の供給を停止すると判定することもできる。この場合、閾値は任意の値に設定することができる。
When the count value of the
図9は、第2実施形態の電源制御処理の一例を示すフローチャートである。ステップS12の判定処理の内容が第1実施形態と相違するが、その他の内容は第1実施形態の電源制御処理と同様である。 FIG. 9 is a flowchart illustrating an example of a power supply control process according to the second embodiment. Although the contents of the determination process in step S12 are different from those of the first embodiment, other contents are the same as those of the power supply control process of the first embodiment.
図10は、ステップS12における判定処理の一例を示すフローチャートである。図10に示すように、まず判定部82は、プリフェッチ動作カウンタ66のカウント値を参照する(ステップ201)。次に、判定部82は、プリフェッチ動作カウンタ66のカウント値が「1」であるか否かを判定する(ステップS202)。つまりは、判定部82は、プリフェッチ部52が、将来アクセスされる可能性が高いデータを予測できているか否かを判定する。プリフェッチ動作カウンタ66のカウント値が「1」の場合(ステップS202の結果:YES)、判定部82は、キャッシュメモリ60に対する電力の供給を停止しないと判定する(ステップS203)。一方、プリフェッチ動作カウンタ66のカウント値が閾値未満の場合、判定部82は、キャッシュメモリ60に対する電力の供給を停止すると判定する(ステップS204)。以上が判定処理の内容である。
FIG. 10 is a flowchart illustrating an example of the determination process in step S12. As shown in FIG. 10, first, the
以上に説明したように、本実施形態では、プリフェッチ部52が、将来アクセスされる可能性が高いデータを予測することができた場合は、処理装置10がアイドル状態であっても、キャッシュメモリ60に対する電力の供給は停止されないので、プリフェッチに使用される電力が無駄になることを抑制できる。
As described above, in this embodiment, if the
(第3実施形態)
次に、第3実施形態について説明する。第3実施形態の制御システムは、主記憶装置30に記憶された複数のデータのうち、繰り返し利用されるデータを示す繰り返しデータを指定する指定部を備える。また、第3実施形態の判定部82は、キャッシュメモリ6000に記憶されたキャッシュデータ61のうち、指定部により指定された繰り返しデータと一致するキャッシュデータ61の数と、プリフェッチによりキャッシュメモリ6000上に読み出されたキャッシュデータ61の数との合計が閾値未満の場合は、キャッシュメモリ6000に対する電力の供給を停止すると判定する。一方、判定部82は、繰り返しデータと一致するキャッシュデータ61の数と、プリフェッチによりキャッシュメモリ6000上に読み出されたキャッシュデータ61の数との合計が閾値以上の場合は、キャッシュメモリ6000に対する電力の供給を停止しないと判定する。以上の点で第1実施形態と相違するが、第1実施形態と共通する部分については、同一の符号を付して適宜に説明を省略する。
(Third embodiment)
Next, a third embodiment will be described. The control system according to the third embodiment includes a designation unit that designates repetitive data indicating data that is repeatedly used among a plurality of data stored in the
図11は、第3実施形態において、処理装置10が実行する命令の一例を示す図である。図11に示すように、処理装置10が実行する命令には、繰り返し利用データ指定命令1101と、繰り返し利用データカウンタ初期化命令1102とが含まれる。繰り返し利用データ指定命令1101は、繰り返し利用データの範囲を指示するために、繰り返し利用データの先頭メモリアドレスとデータサイズとを指定する。上述の指定部は、処理装置10が繰り返し利用データ指定命令1101を実行することにより実現される機能である。また、処理装置10が、繰り返し利用データカウンタ初期化命令1102を実行することにより、後述の繰り返し利用データカウンタ67のカウント値が「0」に初期化(リセット)される。
FIG. 11 is a diagram illustrating an example of an instruction executed by the
図12は、第3実施形態のキャッシュメモリ6000の構成例を示すブロック図である。図12に示すように、キャッシュメモリ6000は、繰り返し利用データカウンタ67をさらに備える点で第1実施形態と相違する。また、タグ63の構成が第1実施形態と相違する。以下、具体的に説明する。
FIG. 12 is a block diagram illustrating a configuration example of the
図13は、第3実施形態のタグ63の構成例を示す図である。タグ63は、繰り返し利用ビット75をさらに含んで構成される点で第1実施形態と相違する。繰り返し利用ビット75は、対応するキャッシュデータ61が、指定部で指定された繰り返し利用データと一致するか否かを示す情報である。対応するキャッシュデータ61が繰り返し利用データと一致する場合は、繰り返し利用ビットは「1」に設定され、対応するキャッシュデータ61が繰り返し利用データと一致しない場合は、繰り返し利用ビットは「0」に設定される。キャッシュコントローラ50(プリフェッチ部52)は、プリフェッチにより主記憶装置30のデータをキャッシュメモリ60上に読み出した場合、その読み出したデータが繰り返し利用データと一致する場合は、繰り返し利用ビット75を「1」に設定し、その読み出したデータが繰り返し利用データと一致しない場合は、繰り返し利用ビットを「0」に設定する。また、本実施形態では、「1」に設定された繰り返し利用ビット75は、前述の繰り返し利用データカウンタ初期化命令1102が実行されない限り、「1」の値を保持し続ける。例えば「1」に設定された繰り返し利用ビット75に対応するキャッシュデータ61に対して処理装置10からのアクセスが行われた場合でも、その繰り返し利用ビット75の値は「0」にリセットされない。
FIG. 13 is a diagram illustrating a configuration example of the
図12に戻って説明を続ける。繰り返し利用データカウンタ67は、指定部で指定された繰り返し利用データと一致するキャッシュデータ61の数をカウントする。より具体的には、繰り返し利用データカウンタ67は、繰り返し利用ビット75が「1」に設定されたタグ63の総数をカウントする。
Returning to FIG. 12, the description will be continued. The repeated use data counter 67 counts the number of
本実施形態では、判定部82は、未使用プリフェッチビットカウンタ65のカウント値と繰り返し利用データカウンタ67のカウント値との合計が閾値未満の場合は、キャッシュメモリ60に対する電力の供給を停止すると判定する。一方、判定部82は、未使用プリフェッチビットカウンタ65のカウント値と繰り返し利用データカウンタ67のカウント値との合計が閾値以上の場合は、キャッシュメモリ60に対する電力の供給を停止しないと判定する。なお、閾値は任意の値に設定することができる。閾値は、制御システム100の各要素モジュールの性能などに依存するため、制御システム100に適した値を採用することが好ましい。
In the present embodiment, the
図14は、第3実施形態の電源制御処理の一例を示すフローチャートである。ステップS22の判定処理の内容が第1実施形態と相違するが、その他の内容は第1実施形態の電源制御処理と同様である。 FIG. 14 is a flowchart illustrating an example of a power supply control process according to the third embodiment. Although the contents of the determination process in step S22 are different from those of the first embodiment, other contents are the same as those of the power supply control process of the first embodiment.
図15は、ステップS22における判定処理の一例を示すフローチャートである。図15に示すように、まず判定部82は、未使用プリフェッチビットカウンタ65および繰り返し利用データカウンタ67の各々のカウント値を参照する(ステップ301)。次に、判定部82は、未使用プリフェッチビットカウンタ65のカウント値と繰り返し利用データカウンタ67のカウント値の合計が閾値以上であるか否かを判定する(ステップS302)。未使用プリフェッチビットカウンタ65のカウント値と繰り返し利用データカウンタ67のカウント値の合計が閾値以上の場合(ステップS302の結果:YES)、判定部82は、キャッシュメモリ60に対する電力の供給を停止しないと判定する(ステップS303)。一方、未使用プリフェッチビットカウンタ65のカウント値と繰り返し利用データカウンタ67のカウント値の合計が閾値未満の場合(ステップS302の結果:NO)、判定部82は、キャッシュメモリ60に対する電力の供給を停止すると判定する(ステップS304)。以上が判定処理の内容である。
FIG. 15 is a flowchart illustrating an example of the determination process in step S22. As shown in FIG. 15, first, the
以上に説明したように、本実施形態では、指定部で指定された繰り返し利用データと一致するキャッシュデータ61の数と、プリフェッチによりキャッシュメモリ60上に読み出されたキャッシュデータ61の数との合計が閾値以上の場合は、処理装置10がアイドル状態であっても、キャッシュメモリ60に対する電力の供給は停止されないので、プリフェッチに使用される電力が無駄になることを抑制できる。
As described above, in the present embodiment, the total of the number of
以上、本発明の実施形態を説明したが、この実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら新規な実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。 As mentioned above, although embodiment of this invention was described, this embodiment is shown as an example and is not intending limiting the range of invention. These novel embodiments can be implemented in various other forms, and various omissions, replacements, and changes can be made without departing from the scope of the invention. These embodiments and modifications thereof are included in the scope and gist of the invention, and are included in the invention described in the claims and the equivalents thereof.
また、上述の各実施形態の処理装置10が実行するプログラムを、インターネット等のネットワークに接続されたコンピュータ上に格納し、ネットワーク経由でダウンロードさせることにより提供するようにしてもよい。また、上述の各実施形態の処理装置10が実行するプログラムを、インターネット等のネットワーク経由で提供または配布するようにしてもよい。また、上述の各実施形態の処理装置10が実行するプログラムを、ROM等に予め組み込んで提供するようにしてもよい。
Further, the program executed by the
10 処理装置
20 キャッシュ部
30 主記憶装置
40 電源部
50 キャッシュコントローラ
51 動作制御部
52 プリフェッチ部
60 キャッシュメモリ
61 キャッシュデータ
62 データアレイ部
63 タグ
64 タグアレイ部
65 未使用プリフェッチビットカウンタ
66 プリフェッチ動作カウンタ
67 繰り返し利用データカウンタ
71 メモリアドレス
72 ダーティビット
73 無効ビット
74 プリフェッチビット
75 繰り返し利用ビット
81 検出部
82 判定部
83 電源制御部
84 再開処理部
100 制御システム
110 バス
600 キャッシュメモリ
1101 利用データ指定命令
1102 利用データカウンタ初期化命令
6000 キャッシュメモリ
10
Claims (4)
前記アイドル状態であり、前記処理装置が予測したデータストリームの数が前記閾値以上の場合は、前記キャッシュメモリに対する電力の供給を継続するように電源部を制御する、
制御装置。 When the processing device is in an idle state where processing is not being performed, and the number of data streams predicted by the processing device is less than the threshold, the power supply unit is controlled to stop supplying power to the cache memory,
When the number of data streams predicted by the processing device is equal to or greater than the threshold in the idle state, the power supply unit is controlled to continue supplying power to the cache memory.
Control device.
前記処理装置は、データストリームを予測し、
前記処理装置が処理を実行していないアイドル状態であり、前記処理装置が予測したデータストリームの数が閾値未満の場合は、キャッシュメモリに対する電力の供給を停止し、
前記アイドル状態であり、前記処理装置が予測したデータストリームの数が前記閾値以上の場合は、前記キャッシュメモリに対する電力の供給を継続する、
情報処理装置。 Having a processing device for processing,
The processor predicts a data stream;
When the processing device is in an idle state where processing is not being performed and the number of data streams predicted by the processing device is less than a threshold, the supply of power to the cache memory is stopped,
In the idle state, if the number of data streams predicted by the processing device is equal to or greater than the threshold, supply of power to the cache memory is continued.
Information processing device.
前記処理装置が予測したデータストリームの数が前記閾値以上で、前記処理装置が処理を実行していないアイドル状態になった場合は、前記キャッシュメモリに対する電力の供給を継続するように電源部を制御する、
制御装置。 The number of data streams processor predicts is less than the threshold, if the processor is idle not running processing, controls the power supply unit to stop the supply of power to the cache memory,
When the number of data streams predicted by the processing device is equal to or greater than the threshold and the processing device is in an idle state in which processing is not being performed, the power supply unit is controlled to continue supplying power to the cache memory To
Control device.
前記処理装置は、データストリームを予測し、
前記処理装置が予測したデータストリームの数が閾値未満で、前記処理装置が処理を実行していないアイドル状態になった場合は、キャッシュメモリに対する電力の供給を停止し、
前記処理装置が予測したデータストリームの数が前記閾値以上で、前記処理装置が処理を実行していないアイドル状態になった場合は、前記キャッシュメモリに対する電力の供給を継続する、
情報処理装置。 Having a processing device for processing,
The processor predicts a data stream;
When the number of data streams predicted by the processing device is less than a threshold and the processing device is in an idle state where processing is not being performed, the supply of power to the cache memory is stopped,
When the number of data streams predicted by the processing device is equal to or greater than the threshold value and the processing device is in an idle state in which processing is not being performed, supply of power to the cache memory is continued.
Information processing device.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2014224552A JP5714169B2 (en) | 2014-11-04 | 2014-11-04 | Control device and information processing device |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2014224552A JP5714169B2 (en) | 2014-11-04 | 2014-11-04 | Control device and information processing device |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2011206962A Division JP5674611B2 (en) | 2011-09-22 | 2011-09-22 | Control system, control method and program |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2015026397A JP2015026397A (en) | 2015-02-05 |
JP5714169B2 true JP5714169B2 (en) | 2015-05-07 |
Family
ID=52490942
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2014224552A Expired - Fee Related JP5714169B2 (en) | 2014-11-04 | 2014-11-04 | Control device and information processing device |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP5714169B2 (en) |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS63318654A (en) * | 1987-06-23 | 1988-12-27 | Fujitsu Ltd | Intermediate buffer replacement determining system |
GB2297398B (en) * | 1995-01-17 | 1999-11-24 | Advanced Risc Mach Ltd | Accessing cache memories |
US6938146B2 (en) * | 2002-12-19 | 2005-08-30 | International Business Machines Corporation | Memory power management using prefetch buffers |
US7869835B1 (en) * | 2005-03-02 | 2011-01-11 | Nvidia Corporation | Method and system for pre-loading and executing computer instructions within the cache memory |
JP4519151B2 (en) * | 2007-03-20 | 2010-08-04 | 富士通株式会社 | Cache control circuit |
CN101689106B (en) * | 2007-06-12 | 2013-10-09 | 松下电器产业株式会社 | Multiprocessor control device, multiprocessor control method, and multiprocessor control circuit |
JP4829191B2 (en) * | 2007-08-30 | 2011-12-07 | 株式会社東芝 | Cash system |
US7925853B2 (en) * | 2008-01-04 | 2011-04-12 | International Business Machines Corporation | Method and apparatus for controlling memory array gating when a processor executes a low confidence branch instruction in an information handling system |
-
2014
- 2014-11-04 JP JP2014224552A patent/JP5714169B2/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2015026397A (en) | 2015-02-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5674611B2 (en) | Control system, control method and program | |
JP5674613B2 (en) | Control system, control method and program | |
US10108249B2 (en) | Memory control circuit | |
KR102683696B1 (en) | A solid state storage device comprising a Non-Volatile Memory Express (NVMe) controller for managing a Host Memory Buffer (HMB), a system comprising the same and method for managing the HMB of a host | |
CN101689106B (en) | Multiprocessor control device, multiprocessor control method, and multiprocessor control circuit | |
US9575889B2 (en) | Memory server | |
US8250332B2 (en) | Partitioned replacement for cache memory | |
US9886194B2 (en) | NVDIMM adaptive access mode and smart partition mechanism | |
US9400544B2 (en) | Advanced fine-grained cache power management | |
US9218040B2 (en) | System cache with coarse grain power management | |
US20140281599A1 (en) | Nand page buffer based volatile state store | |
JP6236572B2 (en) | Dynamic frequency scaling in multiprocessor systems. | |
KR20110134917A (en) | A method for way allocation and way locking in a cache | |
CN109313604B (en) | Computing system, apparatus, and method for dynamic configuration of compressed virtual memory | |
US9557801B2 (en) | Cache device, cache system and control method | |
JP2014016782A (en) | Information processing device and program | |
JP4519151B2 (en) | Cache control circuit | |
TWI526831B (en) | A cache allocation scheme optimized for browsing applications | |
JP2018511105A (en) | How to select an available cache in a multi-cluster system | |
US20140095777A1 (en) | System cache with fine grain power management | |
JP5045163B2 (en) | Arithmetic processing device and control method of arithmetic processing device | |
JP5714169B2 (en) | Control device and information processing device | |
CN103874988A (en) | Programmably partitioning caches | |
KR102441992B1 (en) | Method and apparatus for managing disaggregated memory | |
US9507724B2 (en) | Memory access processing method and information processing device |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20141104 |
|
A871 | Explanation of circumstances concerning accelerated examination |
Free format text: JAPANESE INTERMEDIATE CODE: A871 Effective date: 20141113 |
|
A975 | Report on accelerated examination |
Free format text: JAPANESE INTERMEDIATE CODE: A971005 Effective date: 20141128 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20141209 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20150113 |
|
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: 20150210 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20150310 |
|
R151 | Written notification of patent or utility model registration |
Ref document number: 5714169 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R151 |
|
S111 | Request for change of ownership or part of ownership |
Free format text: JAPANESE INTERMEDIATE CODE: R313111 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
S111 | Request for change of ownership or part of ownership |
Free format text: JAPANESE INTERMEDIATE CODE: R313111 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
LAPS | Cancellation because of no payment of annual fees |