JP2018142112A - Clock device, central processing unit, counting device, counting method, and program - Google Patents
Clock device, central processing unit, counting device, counting method, and program Download PDFInfo
- Publication number
- JP2018142112A JP2018142112A JP2017035119A JP2017035119A JP2018142112A JP 2018142112 A JP2018142112 A JP 2018142112A JP 2017035119 A JP2017035119 A JP 2017035119A JP 2017035119 A JP2017035119 A JP 2017035119A JP 2018142112 A JP2018142112 A JP 2018142112A
- Authority
- JP
- Japan
- Prior art keywords
- frequency
- clock
- operation clock
- unit
- clock signal
- 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
Links
Images
Landscapes
- Debugging And Monitoring (AREA)
Abstract
Description
本発明は、クロック装置、中央演算処理装置、計数装置、計数方法及びプログラムに関する。 The present invention relates to a clock device, a central processing unit, a counting device, a counting method, and a program.
省電力制御機能など半導体回路の動作周波数を変更する機能を有する装置がある。かかる動作周波数の変更に関連して、特許文献1には、マルチプロセッサでプロセッサ毎に用意されるクロックサイクルカウンタのカウント値をプロセッサに共通の経過時刻に補正する、マルチプロセッサのカウント補正装置が示されている。このマルチプロセッサのカウント補正装置は、プロセッサ毎の動作周波数の変更を検知すると、周波数変更後の動作周波数及び周波数変更時のクロックサイクルカウント値に基づいて仮想時刻を導出する。
There is an apparatus having a function of changing an operating frequency of a semiconductor circuit such as a power saving control function. In relation to such a change in operating frequency,
半導体回路の動作周波数が変更されることで、半導体回路の動作速度が変化する。例えば、サーバ装置の利用時間による従量制課金でサービスを提供している場合、動作速度の変化を料金に反映できることが公平性の観点から好ましい。このように、半導体回路の動作速度が変化する場合に、動作速度に応じた処理を行えることが好ましい。 By changing the operating frequency of the semiconductor circuit, the operating speed of the semiconductor circuit changes. For example, when a service is provided with a pay-per-use charge based on the usage time of the server device, it is preferable from the viewpoint of fairness that the change in operation speed can be reflected in the fee. Thus, when the operation speed of the semiconductor circuit changes, it is preferable that processing corresponding to the operation speed can be performed.
本発明は、上述の課題を解決することのできるクロック装置、中央演算処理装置、計数装置、計数方法及びプログラムを提供することを目的としている。 An object of the present invention is to provide a clock device, a central processing unit, a counting device, a counting method, and a program that can solve the above-described problems.
本発明の第1の態様によれば、クロック装置は、クロック周波数を複数の周波数のいずれかに決定する周波数決定部と、前記周波数決定部が決定した周波数のクロック信号を出力するクロック出力部と、前記クロック出力部が出力するクロック信号のクロック数を示す指標値を、前記周波数決定部が決定した周波数毎に計数する計数部と、を備える。 According to the first aspect of the present invention, the clock device includes a frequency determining unit that determines the clock frequency to be one of a plurality of frequencies, and a clock output unit that outputs a clock signal having a frequency determined by the frequency determining unit. A counting unit that counts an index value indicating the number of clocks of the clock signal output by the clock output unit for each frequency determined by the frequency determination unit.
本発明の第2の態様によれば、計数装置は、クロック周波数を複数の周波数のいずれかに決定し、決定した周波数のクロック信号を出力するクロック装置が出力するクロック信号のクロック数を示す指標値を、前記クロック装置が決定した周波数毎に計数する計数部を備える。 According to the second aspect of the present invention, the counting device determines the clock frequency to be one of a plurality of frequencies, and the index indicating the number of clocks of the clock signal output by the clock device that outputs the clock signal of the determined frequency A counter for counting the value for each frequency determined by the clock device;
本発明の第3の態様によれば、計数方法は、クロック周波数を複数の周波数のいずれかに決定し、決定した周波数のクロック信号を出力するクロック装置が出力するクロック信号のクロック数を示す指標値を、前記クロック装置が決定した周波数毎に計数することを含む。 According to the third aspect of the present invention, in the counting method, the clock frequency is determined as one of a plurality of frequencies, and the index indicating the number of clocks of the clock signal output by the clock device that outputs the clock signal of the determined frequency Counting values for each frequency determined by the clock device.
本発明の第4の態様によれば、プログラムは、コンピュータに、クロック周波数を複数の周波数のいずれかに決定し、決定した周波数のクロック信号を出力するクロック装置が出力するクロック信号のクロック数を示す指標値を、前記クロック装置が決定した周波数毎に計数させるためのプログラムである。 According to the fourth aspect of the present invention, the program determines the clock frequency of the clock signal output from the clock device that outputs the clock signal having the determined frequency to the computer and determines the clock frequency to one of the plurality of frequencies. This is a program for counting the indicated index value for each frequency determined by the clock device.
この発明によれば、半導体回路の動作速度が変化する場合に動作速度に応じた処理を行うことができる。 According to the present invention, when the operating speed of the semiconductor circuit changes, processing according to the operating speed can be performed.
以下、本発明の実施形態を説明するが、以下の実施形態は請求の範囲にかかる発明を限定するものではない。また、実施形態の中で説明されている特徴の組み合わせの全てが発明の解決手段に必須であるとは限らない。
図1は、本発明の実施形態に係る中央演算処理装置(Central Processing Unit;CPU)の機能構成を示す概略ブロック図である。図1に示すように、中央演算処理装置100は、命令処理部110と、動作クロック制御部120と、動作周波履歴制御部130とを備える。動作クロック制御部120は、環境情報制御部121と、クロック制御部122と、周波数設定レジスタ123と、クロック出力部124とを備える。動作周波履歴制御部130は、カウンタ制御部131と、積算カウンタ部132と、積算カウンタ133と、積算カウンタ134と、積算カウンタ135とを備える。
Hereinafter, although embodiment of this invention is described, the following embodiment does not limit the invention concerning a claim. In addition, not all the combinations of features described in the embodiments are essential for the solving means of the invention.
FIG. 1 is a schematic block diagram showing a functional configuration of a central processing unit (CPU) according to an embodiment of the present invention. As shown in FIG. 1, the
中央演算処理装置100は、動作クロック装置を内蔵している。中央演算処理装置100は、例えばコンピュータに搭載されて中央演算処理装置100自らが生成する動作クロック信号に基づいて動作し、記憶デバイスからプログラムを読み出して実行する。
ここでいう動作クロック信号は、半導体回路の動作タイミングを示す信号として用いられるクロック信号である。動作クロック信号を単にクロック信号とも称する。
命令処理部110は、プログラム(命令列)を実行する機能を有する。
The
The operation clock signal here is a clock signal used as a signal indicating the operation timing of the semiconductor circuit. The operation clock signal is also simply referred to as a clock signal.
The
動作クロック制御部120は、動作クロック信号を生成して命令処理部110に供給する。
本実施形態では、中央演算処理装置100の動作クロック周波数(動作クロック信号の周波数)が3段階に切替可能である場合を例に説明する。中央演算処理装置100の動作クロック周波数を、周波数が高い順に「標準」、「低」、「極低」と称する。但し、中央演算処理装置100の動作クロック周波数は、3段階に限らず2段階以上に切替可能であればよい。
The operation clock control unit 120 generates an operation clock signal and supplies it to the
In the present embodiment, a case where the operation clock frequency (frequency of the operation clock signal) of the
環境情報制御部121は、温度又は電力など、中央演算処理装置100の動作環境を示す環境情報を取得し、環境情報に基づいて動作クロック周波数を決定する。環境情報制御部121は周波数決定部の例に該当し、動作クロック周波数を上記の3段階の周波数のいずれかに決定する。
環境情報制御部121は、中央演算処理装置100の動作中に温度情報又は消費電力情報が閾値を越えた場合、動作クロックを低下させて温度の上昇、もしくは電力の消費を抑制する。
The environment
When the temperature information or the power consumption information exceeds the threshold during the operation of the
例えば、環境情報制御部121は、環境情報として中央演算処理装置100の温度を示す情報を取得し、第一閾値、及び、第一閾値よりも高温の第二閾値の2段階の閾値と中央演算処理装置100の温度とを比較する。中央演算処理装置100の温度が第一閾値以下である場合、環境情報制御部121は、動作クロック周波数を「標準」に決定する。中央演算処理装置100の温度が第一閾値よりも高く、かつ、第二閾値以下である場合、環境情報制御部121は、動作クロック周波数を「低」に設定する。中央演算処理装置100の温度が第二閾値よりも高い場合、環境情報制御部121は、動作クロック周波数を「極低」に決定する。
環境情報制御部121は、決定した周波数を示す動作クロック情報をクロック制御部122へ出力する。
For example, the environment
The environment
クロック制御部122は、環境情報制御部121が決定した周波数の動作クロック信号を生成し、生成した動作クロック信号を命令処理部110に供給する。
周波数設定レジスタ123は、環境情報制御部121から取得した動作クロック情報を記憶する。
クロック出力部124は、周波数設定レジスタ123が記憶する動作クロック情報を参照して、動作クロック情報が示す周波数の動作クロック信号を生成する。これによりクロック出力部124は、環境情報制御部121が決定した周波数の動作クロック信号を出力する。
クロック出力部124は、生成した動作クロック信号を命令処理部110へ出力する。
The
The frequency setting register 123 stores operation clock information acquired from the environment
The
The
周波数設定レジスタ123が周波数「標準」の動作クロック情報を記憶してクロック出力部124が周波数「標準」の動作クロック信号を出力している状態で、環境情報制御部121が周波数「低」に対応する環境情報を取得すると、環境情報制御部121はクロック制御部122に周波数「低」の動作クロック情報を出力する。クロック制御部122は、周波数設定レジスタ123が記憶している周波数「標準」の動作クロック情報を、周波数「低」の動作クロック情報に更新する。クロック出力部124は、更新された動作クロック情報に従って、周波数「低」の動作クロック信号を出力する。
動作クロック制御部120は、同様に周波数「低」から「極低」、「極低」から「低」、「低」から「標準」、「標準」から「極低」、「極低」から「標準」の切り替わりに対応する。
The environment
Similarly, the operation clock control unit 120 starts from the frequency “low” to “very low”, “very low” to “low”, “low” to “standard”, “standard” to “very low”, and “very low”. Corresponds to the “standard” switching.
動作周波履歴制御部130は、計数部の例に該当し、クロック出力部124が出力する動作クロック信号のクロック数を示す指標値を、環境情報制御部121が決定した周波数毎に計数する。ここでいうクロック数を示す指標値は、クロック数を算出可能な値である。例えば、動作周波履歴制御部130がクロック数を計数するようにしてもよいし、サイクル数を計数するようにしてもよい。
The operating frequency
ここでいうサイクルは、動作クロック信号の基準となるクロック信号のサイクルであり、具体的には周波数が「標準」のときの動作クロック信号のサイクルである。本実施形態では、周波数が「標準」のときの動作クロック信号に対して、周波数が「低」、「極低」のときの動作クロック信号は、周期がそれぞれ2倍、4倍になっている。従って、周波数が「標準」の場合、サイクル数がクロック数に等しい。周波数が「低」の場合、サイクル数を2で割った商がクロック数に等しい。周波数が「極低」の場合、サイクル数を4で割った商がクロック数に等しい。
以下では、動作周波履歴制御部130がサイクル数を計数する場合を例に説明する。
The cycle here is a cycle of the clock signal that is a reference of the operation clock signal, and specifically, is a cycle of the operation clock signal when the frequency is “standard”. In this embodiment, the period of the operation clock signal when the frequency is “low” and “extremely low” is twice or four times that of the operation clock signal when the frequency is “standard”. . Therefore, when the frequency is “standard”, the number of cycles is equal to the number of clocks. When the frequency is “low”, the quotient obtained by dividing the number of cycles by 2 is equal to the number of clocks. When the frequency is “very low”, the quotient obtained by dividing the number of cycles by 4 is equal to the number of clocks.
Hereinafter, a case where the operating frequency
カウンタ制御部131は一定のクロックで動作して積算カウンタ部132を制御し、クロック出力部124が出力する動作クロック信号のクロック数の指標値としてサイクル数を、環境情報制御部121が決定した周波数毎に計数させる。
積算カウンタ部132は、カウンタ制御部131の制御に従って、クロック出力部124が出力する動作クロック信号のクロック数の指標値としてサイクル数を、環境情報制御部121が決定した周波数毎に計数する。
The
The
積算カウンタ133は、クロック出力部124が出力する動作クロック信号に対応するサイクル数のうち、周波数が「標準」の場合のサイクル数を計数する。積算カウンタ134は、クロック出力部124が出力する動作クロック信号に対応するサイクル数のうち、周波数が「低」の場合のサイクル数を計数する。積算カウンタ135は、クロック出力部124が出力する動作クロック信号に対応するサイクル数のうち、周波数が「極低」の場合のサイクル数を計数する。
積算カウンタ133、積算カウンタ134及び積算カウンタ135は、ソフトウェアビジブルレジスタであってもよい。ここで言うソフトウェアビジブルレジスタは、ソフトウェアから読み出し可能なレジスタである。
The
The
このように、動作周波履歴制御部130が中央演算処理装置100の動作クロック信号のクロック数を示す指標値を周波数毎に集計することで、周波数毎の処理が可能になる。例えば、中央演算処理装置100を備えるサーバ装置のユーザに従量制の課金を行う場合、周波数毎の使用時間に応じて課金することで、単純な使用時間に応じて課金する場合よりも公平性を高めることができる。
As described above, the operation frequency
ここで、中央演算処理装置100との比較のために、動作クロック周波数の区別を行わずにクロック数を計数する中央演算処理装置について説明する。
図2は、動作クロック周波数の区別を行わずにクロック数を計数する中央演算処理装置の機能構成を示す概略ブロック図である。図2に示すように、中央演算処理装置900は、命令処理部910と、動作クロック制御部920とを備える。命令処理部910は、クロックカウンタ911を備える。動作クロック制御部920は環境情報制御部921と、クロック制御部922とを備える。クロック制御部922は、周波数設定レジスタ923と、クロック出力部924とを備える。
Here, for comparison with the
FIG. 2 is a schematic block diagram showing a functional configuration of a central processing unit that counts the number of clocks without distinguishing between operation clock frequencies. As shown in FIG. 2, the
中央演算処理装置100が、動作クロック周波数毎にサイクル数を計数するのに対し、中央演算処理装置900は、動作クロック周波数の区別を行わずにクロック数を計数する。それ以外の点では、中央演算処理装置900は、中央演算処理装置100と同様である。
動作クロック制御部920は、動作クロック制御部120と同様、動作クロック信号を生成して命令処理部910に供給する。動作クロック制御部920の各部の機能は、動作クロック制御部120の各部の機能と同様である。
命令処理部910は、命令処理部110と同様、プログラムを実行する機能を有する。一方、命令処理部910は、クロックカウンタ911を備える点で命令処理部110と異なる。
The
Similar to the operation clock control unit 120, the operation
The
クロックカウンタ911はクロック出力部924が出力する動作クロック信号のクロック数を計数する。クロック出力部924がクロック出力部124と同様に動作クロック信号を3段階の周波数で出力するのに対し、クロックカウンタ911は、周波数を区別せずに動作クロック信号の1サイクルごとにカウントアップすることでクロック数を計数する。
クロックカウンタ911は、ソフトウェアビジブルレジスタであってもよい。
クロックカウンタ911が計数するクロック数は、例えば中央演算処理装置900を備えるサーバ装置のユーザへの課金、又は、パフォーマンスモニタ等の用途に用いられる。
The clock counter 911 counts the number of operating clock signals output from the
The
The number of clocks counted by the
図3は、クロックカウンタ911が計数するクロック数の例を示す図である。図3の上側には、クロック出力部924が「標準」の周波数のままクロック信号を出力した場合の例を示している。下側には、クロック出力部924が周波数を「標準」から「低」に切り替え、さらに「極低」に切り替えた場合の例を示している。この例では、時刻t4に動作クロック周波数が「標準」から「低」に切り替わっている。さらに、時刻t10に動作クロック周波数が「低」から「極低」に切り替わっている。
FIG. 3 is a diagram illustrating an example of the number of clocks counted by the
上側の例と下側の例とを比較すると、クロック数はいずれも9(0〜8)である。一方、9クロックに要した動作時間は、上側の例で9単位時間(時刻t0〜時刻t8)であるのに対し、下側の例では18単位時間(時刻t0〜時刻t17)と、上側の例の2倍の時間を要している。
上側の例と下側の例とで中央演算処理装置900に同一の処理を行わせた場合、上側の例の方が処理速度(動作速度)が速い。この点から、上側の例における課金を下側の例における課金よりも高額にすることが、公平性が高いと考えられる。
ところが、図2に示す構成では、中央演算処理装置900は、上側の例、下側の例のいずれでもクロック数を9と計数する。このため、上側の例と下側の例とで課金に差をつけることができない。
Comparing the upper example with the lower example, the number of clocks is 9 (0 to 8). On the other hand, the operation time required for 9 clocks is 9 unit time (time t0 to time t8) in the upper example, whereas 18 unit time (time t0 to time t17) in the lower example, It takes twice as long as the example.
When the
However, in the configuration shown in FIG. 2, the
図4は、中央演算処理装置100が計数するサイクル数の例を示す図である。図4では、動作クロック周波数が「標準」から「低」、「標準」、「低」、「極低」の順に切り替わった場合の例を示している。
例えば、周波数設定レジスタ123が「標準」を示した時刻t0の次のサイクル(時刻t1)で積算カウンタ133がカウントアップされている。周波数設定レジスタ123が「低」を示した時刻t4の次のサイクル(時刻t5)で積算カウンタ134がカウントアップされている。周波数設定レジスタ123が「極低」を示した時刻t11次のサイクル(時刻t12)で積算カウンタ135がカウントアップされている。
FIG. 4 is a diagram illustrating an example of the number of cycles counted by the
For example, the
上記のように、積算カウンタ133〜135はソフトウェアビジブルレジスタとなっている。ユーザの実行プログラムの開始タイミング(時刻t0)と終了タイミング(時刻t15)の差分をみることで、実行プログラムがどの動作クロック周波数で何サイクル動作していたかを知ることができる。図4の例では最終的な積算カウンタ133の差分が「7」、積算カウンタ134の差分が「5」、積算カウンタ135の差分が「4」となる。これらの値から、周波数が「標準」のサイクルが7サイクル、電力制御のために性能低下しているサイクルが、積算カウンタ134、積算カウンタ135の合計値9サイクルあったことを知ることができる。
As described above, the integration counters 133 to 135 are software visible registers. By looking at the difference between the start timing (time t0) and the end timing (time t15) of the user's execution program, it is possible to know how many cycles the execution program was operating at which operation clock frequency. In the example of FIG. 4, the final difference of the
以上のように、環境情報制御部121は、クロック周波数を複数の周波数のいずれかに決定する。クロック出力部124は、環境情報制御部121が決定した周波数のクロック信号を出力する。動作周波履歴制御部130は、クロック出力部124が出力するクロック信号のクロック数を示す指標値を、環境情報制御部121が決定した周波数毎に計数する。
As described above, the environment
このように、動作周波履歴制御部130が周波数毎にクロック数を示す指標値を計数することで、半導体回路の動作速度が変化する場合に動作速度に応じた処理を行うことができる。ここでいう半導体回路は、クロック信号に基づいて動作し、クロック信号の変化に対応可能なものであればよい。例えば、ここでいう半導体回路はCPUであってもよいが、これに限定されない。
As described above, the operating frequency
半導体回路の動作速度に応じた処理の例として、省電力制御の影響を考慮したプログラムの性能測定が挙げられる。ユーザは、プログラム実行時の動作レベルの情報を得ることができ、プログラム実行時の性能値とあわせ、動作レベルの情報も評価の指標として使用できる。プログラムの実行時の性能値として、例えば単位時間あたりの演算量及び実行時間を用いることができる。 As an example of the processing according to the operation speed of the semiconductor circuit, there is a program performance measurement in consideration of the influence of power saving control. The user can obtain information on the operation level at the time of program execution, and the information on the operation level can be used as an evaluation index together with the performance value at the time of program execution. As the performance value at the time of execution of the program, for example, the calculation amount per unit time and the execution time can be used.
また、ここでいう動作レベルは、環境情報制御部121が設定する動作クロック周波数の候補である。例えば、環境情報制御部121が動作クロック周波数を「標準」、「低」、「極低」の3段階に設定する場合、これら3段階の周波数の各々が動作レベルに該当する。
例えば、チューニングしたプログラムAとBとで実行時間は同等であったが、動作レベルはAの方が低かった場合、プログラムAのチューニングほうが良好と判断することができる。
The operation level here is a candidate for the operation clock frequency set by the environment
For example, if the tuned programs A and B have the same execution time but the operation level is lower in A, it can be determined that the tuning of the program A is better.
半導体回路の動作速度に応じた処理のもう1つの例として、省電力制御の影響を考慮した課金方法が挙げられる。時間による定量課金方法で運用するシステムにて、省電力制御の影響で性能低下が発生すると同一プログラムの実行でも料金が変わってきてしまうことが想定される。時間の他に動作レベルも課金計算の考慮に入れることで平等性の高い課金方法を実現できる。 Another example of processing according to the operating speed of a semiconductor circuit is a charging method that takes into account the influence of power saving control. In a system that operates with a fixed-rate billing method based on time, if performance degradation occurs due to the effect of power saving control, it is assumed that the charge will change even if the same program is executed. A charging method with high equality can be realized by taking account of the operation level in addition to time.
例えば、式(1)を用いて課金用カウント値を計算することができる。
課金用カウント値 = A×(周波数が「標準」のときのサイクル数)
+ B×(周波数が「低」のときのサイクル数)
+ C×(周波数が「低」のときのサイクル数) ・・・ (1)
ここで、A、B、Cはいずれも係数であり、A>B>Cである。
For example, the billing count value can be calculated using equation (1).
Billing count value = A x (number of cycles when the frequency is "standard")
+ B x (number of cycles when frequency is low)
+ C x (number of cycles when the frequency is “low”) (1)
Here, A, B, and C are all coefficients, and A>B> C.
上述したように、動作クロック周波数は3段階に限らず2段階以上であればよい。また、動作クロック周波数が、「極高」、「高」、「標準」、「低」、「極低」など、標準より周波数が上がる方向にも設定されていてもよい。
なお、積算カウンタ部132を、ハードウェアカウンタを用いて実装するようにしてもよいし、ソフトウェアで実現するようにしてもよい。積算カウンタ部132をソフトウェアで実現する場合、動作クロック制御部120の周波数設定レジスタ123をソフトウェアビジブルレジスタとし、周波数設定レジスタ123の値をプログラムにて定期的に読み込む。そして、システムタイマに連動したカウントタイミングで周波数設定レジスタ123の値に対応した変数に値をカウントしていくことで積算カウンタ部132を実現できる。
As described above, the operation clock frequency is not limited to three stages and may be two or more stages. The operation clock frequency may also be set in a direction in which the frequency is higher than the standard, such as “extremely high”, “high”, “standard”, “low”, “extremely low”.
Note that the
ユーザが動作クロック周波数の上限値を設定できるようにしてもよい。
図5は、動作クロック周波数の上限値を設定可能な中央演算処理装置の機能構成を示す概略ブロック図である。図5に示すように、中央演算処理装置200は、命令処理部110と、動作クロック制御部220と、動作周波履歴制御部130とを備える。動作クロック制御部220は、環境情報制御部121と、クロック制御部122と、周波数設定レジスタ123と、クロック出力部124と、動作レベル上限設定レジスタ225とを備える。動作周波履歴制御部130は、カウンタ制御部131と、積算カウンタ部132と、積算カウンタ133と、積算カウンタ134と、積算カウンタ135とを備える。
The user may be allowed to set the upper limit value of the operation clock frequency.
FIG. 5 is a schematic block diagram showing a functional configuration of the central processing unit capable of setting an upper limit value of the operation clock frequency. As shown in FIG. 5, the
図5の各部のうち図1の各部に対応して同様の機能を有する部分には同一の符号(110、121〜124、130〜135)を付して説明を省略する。
中央演算処理装置200では、動作クロック制御部220が動作レベル上限設定レジスタ225を備える点で中央演算処理装置100と異なる。それ以外の点は、中央演算処理装置100と同様である。
動作レベル上限設定レジスタ225は、上限値設定部の例に該当し、動作クロック周波数(動作クロック信号の周波数)の上限値を設定する。例えば、動作レベル上限設定レジスタ225は、ユーザ操作にて入力された周波数を動作クロック周波数の上限値として設定する。
5 that have the same functions corresponding to those in FIG. 1 are assigned the same reference numerals (110, 121 to 124, 130 to 135), and descriptions thereof are omitted.
The
The operation level upper
動作レベル上限設定レジスタ225による上限値の設定を受けて、環境情報制御部121は、動作クロック周波数を上限値以下の周波数に決定する。具体的には、環境情報制御部121は、環境情報に基づいて決定した動作クロック周波数が、上限値以下である場合は、決定した動作クロック周波数をそのまま採用する。一方、環境情報に基づいて決定した動作クロック周波数が上限値より大きい場合、環境情報制御部121は、上限値(あるいは、上限値以下の動作クロック周波数選択候補のうち上限値に最も近いもの)を動作クロック周波数として採用する。
あるいは、環境情報制御部121が、動作開始時の動作クロック周波数を上限値に設定し、その後の更新タイミングで、上記のように環境情報に基づいて上限値以下の動作クロック周波数を設定するようにしてもよい。
In response to the setting of the upper limit value by the operation level upper
Alternatively, the environment
以上のように、動作レベル上限設定レジスタ225は、動作クロック周波数の上限値を設定する。環境情報制御部121は、動作クロック周波数を、動作レベル上限設定レジスタ225が設定した上限値以下の周波数に決定する。
これによりユーザは、プログラム等の性能比較をより容易に行うことができる。例えば、プログラムチューニングの確認などの用途で安定した環境で性能の比較を行いたい場合、ユーザは最も低い動作レベルを上限値に設定することで、中央演算処理装置200に一定の動作クロック周波数でプログラムを実行させることができる。これにより、中央演算処理装置200に複数のプログラムを同じ動作クロック周波数で実行させることができ、この点でプログラムの性能の比較を容易に行うことができる。
As described above, the operation level upper
As a result, the user can more easily compare the performance of programs and the like. For example, when it is desired to compare performance in a stable environment for applications such as confirmation of program tuning, the user sets the lowest operation level to the upper limit value so that the
また、ユーザは動作クロック周波数の上限値を設定することで、中央演算処理装置200を利用する用途に応じて処理速度及び課金を選択することができる。処理速度を求める場合、ユーザは、上限値を高く設定することで高い動作クロック周波数での高速な処理の提供を受けることができる。一方、処理速度を求めない場合、ユーザは上限値を低く設定することで、課金を比較的安く抑えることができる。
In addition, the user can select the processing speed and billing according to the use of the
次に、図6及び図7を参照して、本発明の最小構成について説明する。
図6は、本発明に係るクロック装置の最小構成の例を示す図である。図6に示すクロック装置10は、周波数決定部11と、クロック出力部12と、計数部13とを備える。
かかる構成にて、周波数決定部11は、クロック周波数を複数の周波数のいずれかに決定する。クロック出力部12は、前記周波数決定部が決定した周波数のクロック信号を出力する。計数部13は、クロック出力部12が出力するクロック信号のクロック数を示す指標値を、周波数決定部11が決定した周波数毎に計数する。
このように、計数部13が周波数毎にクロック数を示す指標値を計数することで、半導体回路の動作速度が変化する場合に動作速度に応じた処理を行うことができる。
Next, the minimum configuration of the present invention will be described with reference to FIGS.
FIG. 6 is a diagram showing an example of the minimum configuration of the clock device according to the present invention. The
With this configuration, the
As described above, the
図7は、本発明に係る計数装置の最小構成の例を示す図である。図6に示す計数装置20は、計数部21を備える。
かかる構成にて、計数部21は、クロック周波数を複数の周波数のいずれかに決定し、決定した周波数のクロック信号を出力するクロック装置が出力するクロック信号のクロック数を示す指標値を、クロック装置が決定した周波数毎に計数する。
このように、計数部21が周波数毎にクロック数を示す指標値を計数することで、半導体回路の動作速度が変化する場合に動作速度に応じた処理を行うことができる。
FIG. 7 is a diagram showing an example of the minimum configuration of the counting device according to the present invention. The
With this configuration, the
As described above, the
なお、中央演算処理装置100及び200の機能の全部または一部を実現するためのプログラムをコンピュータ読み取り可能な記録媒体に記録して、この記録媒体に記録されたプログラムをコンピュータシステムに読み込ませ、実行することにより中央演算処理装置100及び200の機能の処理を行ってもよい。なお、ここでいう「コンピュータシステム」とは、OSや周辺機器等のハードウェアを含むものとする。
また、「コンピュータ読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ROM、CD−ROM等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置のことをいう。また上記プログラムは、前述した機能の一部を実現するためのものであっても良く、さらに前述した機能をコンピュータシステムにすでに記録されているプログラムとの組み合わせで実現できるものであっても良い。
A program for realizing all or part of the functions of the
The “computer-readable recording medium” refers to a storage device such as a flexible medium, a magneto-optical disk, a portable medium such as a ROM and a CD-ROM, and a hard disk incorporated in a computer system. The program may be a program for realizing a part of the functions described above, and may be a program capable of realizing the functions described above in combination with a program already recorded in a computer system.
以上、この発明の実施形態について図面を参照して詳述してきたが、具体的な構成はこの実施形態に限られるものではなく、この発明の要旨を逸脱しない範囲の設計等も含まれる。 The embodiment of the present invention has been described in detail with reference to the drawings. However, the specific configuration is not limited to this embodiment, and includes designs and the like that do not depart from the gist of the present invention.
100、200 中央演算処理装置
110 命令処理部
120、220 動作クロック制御部
121 環境情報制御部
122 クロック制御部
123 周波数設定レジスタ
124 クロック出力部
130 動作周波履歴制御部
131 カウンタ制御部
132 積算カウンタ部
133、134、135 積算カウンタ
225 動作レベル上限設定レジスタ
100, 200
Claims (6)
前記周波数決定部が決定した周波数のクロック信号を出力するクロック出力部と、
前記クロック出力部が出力するクロック信号のクロック数を示す指標値を、前記周波数決定部が決定した周波数毎に計数する計数部と、
を備えるクロック装置。 A frequency determining unit that determines the clock frequency as one of a plurality of frequencies;
A clock output unit for outputting a clock signal having a frequency determined by the frequency determination unit;
A counting unit that counts an index value indicating the number of clocks of the clock signal output by the clock output unit for each frequency determined by the frequency determination unit;
A clock device comprising:
前記周波数決定部は、前記クロック周波数を前記上限値以下の周波数に決定する、
請求項1に記載のクロック装置。 An upper limit setting unit for setting an upper limit of the clock frequency;
The frequency determining unit determines the clock frequency to a frequency equal to or less than the upper limit;
The clock device according to claim 1.
クロック周波数を複数の周波数のいずれかに決定し、決定した周波数のクロック信号を出力するクロック装置が出力するクロック信号のクロック数を示す指標値を、前記クロック装置が決定した周波数毎に計数させるためのプログラム。 On the computer,
The clock frequency is determined as one of a plurality of frequencies, and an index value indicating the number of clocks of the clock signal output by the clock device that outputs the clock signal of the determined frequency is counted for each frequency determined by the clock device. Program.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2017035119A JP6946663B2 (en) | 2017-02-27 | 2017-02-27 | Central processing unit, performance evaluation method and program |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2017035119A JP6946663B2 (en) | 2017-02-27 | 2017-02-27 | Central processing unit, performance evaluation method and program |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2018142112A true JP2018142112A (en) | 2018-09-13 |
JP6946663B2 JP6946663B2 (en) | 2021-10-06 |
Family
ID=63528059
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2017035119A Active JP6946663B2 (en) | 2017-02-27 | 2017-02-27 | Central processing unit, performance evaluation method and program |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP6946663B2 (en) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2006039644A (en) * | 2004-07-22 | 2006-02-09 | Fuji Photo Film Co Ltd | Charging method and system |
US20110265090A1 (en) * | 2010-04-22 | 2011-10-27 | Moyer William C | Multiple core data processor with usage monitoring |
WO2012067211A1 (en) * | 2010-11-16 | 2012-05-24 | 日本電気株式会社 | Information processing device, electronic apparatus, computer program storage medium, and method of controlling performance and power |
JP2017033452A (en) * | 2015-08-05 | 2017-02-09 | 富士通株式会社 | Computing machine, and operation frequency determination program and operation frequency determination method |
-
2017
- 2017-02-27 JP JP2017035119A patent/JP6946663B2/en active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2006039644A (en) * | 2004-07-22 | 2006-02-09 | Fuji Photo Film Co Ltd | Charging method and system |
US20110265090A1 (en) * | 2010-04-22 | 2011-10-27 | Moyer William C | Multiple core data processor with usage monitoring |
WO2012067211A1 (en) * | 2010-11-16 | 2012-05-24 | 日本電気株式会社 | Information processing device, electronic apparatus, computer program storage medium, and method of controlling performance and power |
JP2017033452A (en) * | 2015-08-05 | 2017-02-09 | 富士通株式会社 | Computing machine, and operation frequency determination program and operation frequency determination method |
Also Published As
Publication number | Publication date |
---|---|
JP6946663B2 (en) | 2021-10-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9477533B2 (en) | Progress meters in parallel computing | |
US20090100432A1 (en) | Forward progress mechanism for a multithreaded processor | |
US9361159B2 (en) | Runtime chargeback in a simultaneous multithreading (SMT) environment | |
EP2551767A1 (en) | Method and device for adjusting clock interrupt cycle | |
JP4829177B2 (en) | Dispatch device | |
JP2018139093A (en) | Information processing device, information processing method and program | |
US8984538B2 (en) | Bidirectional counting of dual outcome events | |
Brugnano et al. | A simple and accurate algorithm for speed measurement in electric drives using incremental encoder | |
JP2018142112A (en) | Clock device, central processing unit, counting device, counting method, and program | |
JP5799797B2 (en) | Calculation method, calculation program, and computer | |
KR20120003088A (en) | Apparatus and method for thread progress tracking using deterministic progress index | |
CN116048834A (en) | Method, device and storage medium for updating integrated ranking list in real time | |
WO2019075745A1 (en) | Timing method of virtual timer, apparatus thereof, and electronic apparatus | |
JP2012221373A (en) | Computer system | |
US9182958B2 (en) | Software code profiling | |
TWI670593B (en) | Counting circuit of performance monitor unit | |
JP5668505B2 (en) | Clock frequency control program and clock frequency control device | |
CN107615205A (en) | Clock diagnostic device and clock diagnostic method | |
CN108292230B (en) | Hardware access counters and event generation for coordinating multithreading | |
JP2009025964A (en) | Power consumption control method | |
JP2004032632A (en) | Semiconductor integrated circuit | |
JPWO2018167940A1 (en) | INFORMATION PROCESSING APPARATUS, INFORMATION PROCESSING METHOD, AND INFORMATION PROCESSING PROGRAM | |
JP2015135538A (en) | processor | |
US9690727B2 (en) | System internal latency measurements in realtime applications | |
JP6374350B2 (en) | Timer synchronization system |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20200110 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20201223 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20210119 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20210322 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20210406 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20210706 |
|
C60 | Trial request (containing other claim documents, opposition documents) |
Free format text: JAPANESE INTERMEDIATE CODE: C60 Effective date: 20210706 |
|
A911 | Transfer to examiner for re-examination before appeal (zenchi) |
Free format text: JAPANESE INTERMEDIATE CODE: A911 Effective date: 20210715 |
|
C21 | Notice of transfer of a case for reconsideration by examiners before appeal proceedings |
Free format text: JAPANESE INTERMEDIATE CODE: C21 Effective date: 20210720 |
|
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: 20210817 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20210830 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6946663 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |