人工知性を作りたい

私が日々、挑戦したことや学んだことなどを紹介していく雑記ブログです。 (新しいAI技術HTM, 専門の音声信号処理, 趣味のアニメ等も書いてます。)

CPUの性能指標【基本情報技術者になろう!】

f:id:hiro-htm877:20190619230445j:plain



 

f:id:hiro-htm877:20190601202549p:plain

 

 

 

  

 

 

現在、私は秋の基本情報技術者試験に向けて勉強中です。

その中で、私が得た知識をまとめて記事にしています。

 

本記事のテーマ

基本情報技術者になろう!】

・CPUの性能指標

はじめに

CPUの性能は、クロック周波数CPIMIPSなどの指標値を用いて評価されます。

CPUは高速であればあるほどいいのですが、実際にCPUの性能を比較するには比較するための指標が必要となります。

そこで、CPUの性能指標として、クロック周波数や、CPU(Clock cycles Per Instrucrion)、MPIS(Million Instrution Pwe Second)が使用されています。

この性能指標について説明していきます。

クロック周波数

クロック周波数は周期信号の繰り返しの回数。

コンピュータにはいろんな装置が入っていますが、これらがバラバラに動くとまともに動作することができません!そこで、「クロック」と呼ばれる周期信号に合わせて動くことにより、装置間の同期(タイミングの調整)を取っています。

CPUもこのクロックという周期信号に合わせて動作を行います。

チクタクチクタク繰り返される信号に合わせて動くわけですから、チクタクという1周期の時間が短ければ短いほど、より多くの処理ができる(すなわち性能が高い)ことになります。

f:id:hiro-htm877:20190709210303p:plain

クロックが1秒間に繰り返される回数のことをクロック周波数と呼びます。単位はHz。例えば「クロック周波数1GHzのCPU」といった場合では、1秒間に10億回(10^9=100,000,000)チクタクチクタクと振動していることになります。

※仮に1クロックで1つの命令を処理できるCPUだとした場合、1GHzだと1秒間に10億回の命令が処理できることになります。

1クロックに要する時間

ここで、仮に「クロック周波数1GHzのCPU」があったとすると、このCPUが1クロックに要する時間は何秒になるでしょうか?

数字が大きいので、まずは「クロック周波数4HzのCPU」で考えていきます。4Hzとうことは、1秒間にクロックが4回繰り返されるということです。

つまり、1/4 = 0.25秒になります。

1クロックに要する時間は、クロック周波数で秒数1を割れば求められます。この時間のことを、クロックサイクル時間と呼びます。

クロック周波数というのは

1秒あたりのクロック数 / 1秒 = クロック周波数

これをひっくり返すと、

1秒 / クロック数(クロック周波数)= クロックサイクル時間

となります。

つまり、クロック周波数とクロックサイクル時間は逆数の関係になっています。

1GHzは10^9Hzなので、1/10^9 = 1n秒(1*10^-9)となります。

 CPI(Clock cycles Per Instruction)

 CPI(Clock cycles Per Instruction)という名前が指す通り、「1命令あたり、何クロックサイクル必要か」を表すものです。

 

f:id:hiro-htm877:20190709211116p:plain

1GHzのクロック周波数で4CPIのCPUの命令実行時間を計算すると、

1. 1GHzのCPUなのでクロックサイクル時間は

 1秒 / 1*10^9 = 1*10^-9 = 1ナノ秒

2. 1ナノ秒 × 4クロック = 4ナノ秒 = 命令実行時間!

 

MIPS(Million Instructions Per Second)

MIPS(Million Instructions Per Second)は、「1秒間に実行できる命令の数」を表したものです。

f:id:hiro-htm877:20190709211915p:plain


 

例えば「1つの命令を実行するのに平均して2ナノ秒かかるCPU」があった場合、MPIS値は次のようになります。

1秒間に実行できる命令の数なので

1秒 / 2ナノ秒 = 1 / 2*10^-9 = 0.5×10^9 = 500,000,000 

MIPSは100万単位(1Million)で表すので、最後に桁を合わせて

 = 500MIPS 

命令ミックス

CPUの基本的な命令実行手順「命令の取り出し→命令の解読→対象データ読み出し→命令実行」となります。

ですが、「対象データ読み出し」を必要としない命令なんかだと、当然この手順は必要ありません。「命令の取り出し→命令の解読→命令実行」

つまり、命令というのは、その種類によって実行に必要なクロックサイクル数が異なってたりするわけです。(3クロックで終わるものもあれば5クロックで終わるものもある)

そこで、用いられるのが命令ミックスです。命令ミックスというのは、よく使われる命令を1つのセットにしたものです。

 例えば1GHzのCPUが次の命令セットでできていた場合、その処理能力は何MIPSになるか計算してみましょう!

f:id:hiro-htm877:20190709213646p:plain

 

以上でCPUの性能評価の説明を終了します。

CPUの性能評価はみなさんがパソコンを買うときにも必要になります。CPUが〜、とかみたことありませんか?生活にもつながる知識なので必要度大です!
 

参考資料

・キタミ式イラストIT塾 基本情報技術者 平成31/01年