FPGA開発日記

カテゴリ別記事インデックス https://msyksphinz.github.io/github_pages , English Version https://fpgadevdiary.hatenadiary.com/

コンピュータの構成と設計第4版 Exercise 1.12

/* 以下の回答は,個人的に解いたものであって,正解である保証はありません.解答の正しさについてはまったく保証しませんし,まったく責任を負いません */

次の表はAMD Barcelona上でSPEC 2006ベンチマークを走らせたときの結果である.

Name Intr.count\times 10^9 Execution time(second) Reference time(seconds)
a. perl 2118 500 9770
b. mcf 336 1200 9120

1.12.1 クロックサイクルが0.333nsのときのCPIを求めよ.

クロックサイクル,実行時間,命令数の関係は次のようになる.
\text{Intr.count}\times 10^9\times\text{CPI}\times\text{Clock cycle} = \text{Execution Time}
よって,

1.12.2 SPECratioを求めよ.

1.12.3 ジオメトリック平均値を求めよ.
\sqrt{\frac{1}{19.5}\times\frac{1}{7.6}} = 0.082 = \frac{1}{12.17}次の表はさらに別のベンチマークの結果である.

Name CPI Clock rate SPECratio
a. sjeng 0.96 4GHz 14.5
b. omnetpp 2.94 4GHz 9.1

1.12.4 CPIが変化せずに命令数が10%増加したときのCPU時間を求めよ.
sjengのReference timeが12,100,omnetppのreference timeが6,250であるため,Execution timeはそれぞれ834.5, 684.8である.
10%命令数が増加すると,単純に考えて実行時間が10%増加するので,sjengは917.9,omnetppは755.5である.

1.12.5 命令数が10%増加してCPIが5%増加したときの実行時間を求めよ.
単純に考えて,CPIが増加すると実行時間も増加するので,

  • sjeng : 917.9\times 1.05 = 963.795
  • mcf : 755.5\times 1.05 = 793.275


1.12.6 1.12.5の時のSPECratioを求めよ.
単純に命令数増加,CPI増加なので,SPECratioも同様に1.1\times 1.05 = 1.155だけ減少する.