とめどもないことをつらつらと

日々の雑感などを書いて行こうと思います。
草稿に近く、人に読まれる事を前提としていません。
引用OKす。

CPIとは何か

2024-04-28 07:57:23 | IT・ビッグデータ・新技術
・私の作業仮説なりにまとめた。
・なので内容は保証しない。
・しかし他のどの解説よりも完全にわかりやすく書けていると我ながら思う。

では始めます。


CPI (Cycles Per Instruction)とは?命令実行に必要なクロック数を表す性能指標 | THE SIMPLE
https://the-simple.jp/cpi-cycles-per-instruction%E3%81%A8%E3%81%AF%EF%BC%9F%E5%91%BD%E4%BB%A4%E5%AE%9F%E8%A1%8C%E3%81%AB%E5%BF%85%E8%A6%81%E3%81%AA%E3%82%AF%E3%83%AD%E3%83%83%E3%82%AF%E6%95%B0%E3%82%92%E8%A1%A8%E3%81%99

CPI (Cycles Per Instruction)とは、CPU (Central Processing Unit)が1つの命令を実行するために必要なクロック数を表す性能指標です。つまり、CPUが実行する命令の数に対して、どれだけのクロックサイクルが必要かを示します。


とあるのはよくある説明だが、私はこれだけでは何が何やら分からなかった。
が、同じことを思っている人がいれば、私の説明はそれなりにすっと分かる感じであると思う。

元々CPUと言うのはコンピューターの中央の演算装置で、0と1をひたすらに繰り返して計算(算術演算、論理演算、データの移動、条件分岐)して結果を出しているが、この演算セットは「命令」と呼ばれて、すでにCPUの中に設計として組み込まれている。

ただ、この命令と言うものは、CPUの内部で一定に保たれるパルス周波数(クロック数)のリズムに乗った形で発されなければいけない。

で、仮に1秒間に100回のクロック数のCPUがあったとした場合、1秒間に100ビットより上の命令をこなすことはできない。

言わば、工場のベルトコンベヤーと、それに乗っかる原材料の関係のようなもので、コンベヤは1分に100個の原材料を運べる能力があるのに、乗っかってくる原材料は80個だったりする(当然ながら101個以上は運べない)。

よって、この時のコンベヤの無駄がどれだけあるか、このコンベヤがどれだけ効率的かを示す指標として、様々に計算方法があるけれども、その内の一つとして、運搬能力/実際に運搬された量で図る。
上記の場合、100/80で1.25だ。
1に近づけば近づくほど無駄がない。
逆に言えば、1よりはみ出た小数点部分においては、どれだけ無駄が発生しているかが分かる。

これはCPIにも言え、CPIはクロック数/命令数で決定する。
丁寧に書けば、クロック数(クロックパルスによってそのCPUで単位時間内で演算処理できる容量)/命令数(実際にCPUに設計で組み込まれている、これを演算しろよーと書かれている命令)で計算することになる。

これは資格試験でどっちが分母でどっちが分子だっけ? と思い出せない人は次のヒントを見て欲しい。

CPIとはClock cycles Per Instructionの略で、

Clock cycles(クロック数)
Per(割り算)
Instruction(命令)
の略なので、このまんま計算すればいい。

まあ私が思うに、これは分子と分母を逆(上記のクロック数100、命令数80で言えば0.8)にした方が直感的でわかりやすいと思うんですけれどもね。
これも1に近づけば近づくほど効率がいいということだが、どれだけ完全であるか、あるいはどれだけ無駄があるかパーセンテージで分かるから。
ただこうした指標はないようです。
コメント    この記事についてブログを書く
  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする
« 社会バトルシミュレーション | トップ | 経済を包含する主義とは、行... »
最新の画像もっと見る

コメントを投稿

IT・ビッグデータ・新技術」カテゴリの最新記事