動作クロック周波数が700MHzのCPUで,命令実行に必要なクロック数及びその命令の出現率が表に示す値である場合,このCPUの性能は約何MIPSか。
命令の種別/命令実行に必要なクロック数/出現率(%)
レジスタ間演算|4|30
メモリ・レジスタ間演算|8|60
無条件分岐|10|10
正答4
解説
正解は4です。
CPUの性能をMIPS(Million Instructions Per Second、1秒間に実行できる命令数を百万単位で表した値)で求める問題です。
まず、命令の出現率で重み付けした平均クロック数(CPI:Cycles Per Instruction)を求めます。
次に、クロック周波数をその平均クロック数で割り、1秒間に実行できる命令数を求めます。
【計算】
平均クロック数=4×0.3+8×0.6+10×0.1 です。
=1.2+4.8+1.0=7.0クロック/命令です。
1秒間の命令数=700×10^6 クロック/秒 ÷ 7.0 クロック/命令です。
=100×10^6 命令/秒です。
よって性能は100MIPSです。
【選択肢別解説】
1:× 10MIPSでは平均70クロックが必要になります。
平均クロック数7.0と一致しません。
2:× 50MIPSは平均14クロックの場合の値であり、計算と合いません。
3:× 70MIPSは、平均クロック数を10として割った場合の値です。
出現率による重み付けをしていません。
4:○ 平均7.0クロックで、700MHzを7.0で割ると毎秒1億命令、すなわち100MIPSです。
【ポイント】
MIPS=クロック周波数〔MHz〕÷平均クロック数 で求められます。
平均クロック数は単純平均ではなく、出現率による加重平均で計算します。