概要
CPUにはいくつかの性能指標があるが、それについて代表的なものについてまとめた。
最初に
最初に以下の英単語を覚えておいた方がよさそう(意味を覚えるというより、これらの英単語が出てくるということを覚えておく)。
後に出てくるCPIとMIPSの混同が避けられる。
・
Instruction(命令)…CPUが実行する命令のこと
・
Clock cycle(クロックサイクル)…クロック数
・Million(ミリオン)…100万
・Second(秒)…秒数
・Per(パーセント)…パーセント
性能指標
代表的な指標は以下3つ。
・クロック周波数(クロックサイクル時間)
・CPI
・MIPS
クロック周波数とクロックサイクル時間
一つ目が
「クロック周波数」。
その名の通り、
1秒あたりのクロック数を表す。
似た指標に
「クロックサイクル時間」というものがある。
これは
1クロックあたりにどれだけ時間がかかるかを表す。
「クロック周波数」とは
逆数の関係になる。
CPI(Clock cycles Per Instruction)
2つ目の性能指標は
「CPI」。
1つの命令あたりに何クロックが必要かを表す。
MIPS(Million Instruction Per Second)
前述の「クロック周波数」と「CPI」でCPUの性能を表すには問題がある。
それは例えば、「クロック周波数」が従来の2倍を持つCPUでも「CPI」が10倍(=1つの命令を行うのに10倍のクロック数を要する)だった場合、行える命令数が1/5になってしまうということ。
この問題を解決する性能指標が
「MIPS」。
「1秒あたりに行える命令数」を表す。
クロック周波数÷CPIなどで計算できる。
命令ミックス
「CPI」と一言でいうがこれ自体の測り方で差が出てしまう。
CPUの
すべての命令が同じクロック数を要するわけではないため、例えばAという命令では3クロックで十分だが、Bでは4クロック必要という場合、小さい方の3クロックで「MIPS」を計算した場合、実態の数値とは乖離が出てしまう。
それに対する解決策が
「命令ミックス」というもの。
あらかじめ
各命令の出現頻度を定めておいて、それを基に各クロック数の出現頻度を計算することで、同じ基準かつ実態に近い数値で「CPI」を測ることができる。
例えば
という場合、
CPI = 3 × 0.2 + 4 × 0.8 = 3.8
としてCPIを算出することができる。