【Day27】システムの性能評価

投稿者: | 2025年8月23日

1. 性能評価って何?

コンピュータやシステムを選ぶときに「どれくらい速いのか」「どのくらい処理できるのか」を比べる必要がありますよね。
そのために、客観的な基準でシステムを測るのが「性能評価」です。


2. 性能評価の方法

(1) ベンチマーク

  • 実際のプログラムやテスト用の処理を走らせて、その処理時間を比較する方法。
  • 例:画像処理ソフトを動かして「10秒で処理できるPC」と「15秒かかるPC」を比べる。
  • 特徴:現実的な性能が分かるが、テスト方法によって結果が変わることもある。

(2) MIPS(Million Instructions Per Second)

  • 「1秒間に何百万命令を処理できるか」を表す指標。
  • 例:100 MIPS = 1秒間に1億命令を実行できる。
  • 長所:わかりやすい。
  • 短所:命令の内容によって処理時間が変わるため、「実際の速さ」と必ずしも一致しない。

(3) FLOPS(Floating Point Operations Per Second)

  • 「1秒間に何回の浮動小数点演算(小数の計算)を処理できるか」。
  • 科学技術計算やAIの分野で重要。
  • スーパーコンピュータの性能指標に使われる。

(4) スループット

  • 単位時間あたりに処理できる「仕事量」。
  • 例:1時間で1万件のデータ処理ができるサーバなら、スループットは「1万件/時間」。

(5) レスポンスタイム

  • 処理を依頼してから結果が返ってくるまでの時間。
  • 例:検索ボタンを押して、画面に結果が出るまでの時間。

(6) ターンアラウンドタイム

  • ジョブ(仕事)を提出してから、すべての処理が完了して結果が戻ってくるまでの時間。
  • バッチ処理などで使う。

3. 幼稚園児でもわかる例え

  • ベンチマーク → かけっこをして、どの子が速いか比べる。
  • MIPS → 「1秒間に何歩走れるか」を数える。
  • スループット → 1時間でどれだけのケーキを作れるか。
  • レスポンスタイム → 「ケーキちょうだい」と言ってから、最初のひと切れが出てくるまでの時間。
  • ターンアラウンドタイム → 注文してからケーキが全部そろうまでの時間。

4. 過去問でチェック!

過去問①(平成28年春 午前)

コンピュータシステムのスループットを説明したものはどれか。

A. 一つのジョブの処理に要する平均時間
B. 単位時間当たりに処理できるジョブの数
C. 処理要求を出してから応答があるまでの時間
D. システムの最大記憶容量

👉 正解:B


過去問②(平成29年秋 午前)

コンピュータの性能評価指標であるMIPSの説明はどれか。

A. プログラム1行当たりの命令数
B. 1秒間に実行できる浮動小数点演算の回数
C. 1秒間に実行できる命令数(百万単位)
D. 1秒間に処理できるバイト数

👉 正解:C


過去問③(令和元年秋 午前)

コンピュータのレスポンスタイムの説明はどれか。

A. システム全体が処理できるジョブの量
B. 処理要求を出してから応答があるまでの時間
C. ジョブを投入してから終了するまでの時間
D. プログラム1命令の平均実行時間

👉 正解:B


まとめ

  • 性能評価にはいろんな「ものさし」がある。
  • ベンチマークは現実のテスト、MIPS/FLOPSは計算能力、スループットレスポンスタイムは使い勝手に直結する。

過去問例:

50MIPSのプロセッサの平均命令実行時間はいくらか?

① 問題の整理

  • 50 MIPS のプロセッサ
  • MIPS = Million Instructions Per Second(100万命令/秒)
  • つまり「1秒間に 50 × 10^6 個の命令を実行できる」という意味です。

求めたいのは 1命令あたりにかかる時間(平均命令実行時間) です。


② 計算の流れ

  1. 1秒あたりに実行できる命令数 50×106 命令/秒50 \times 10^6\ \text{命令/秒}50×106 命令/秒
  2. 1命令あたりの時間 = 「1秒」÷「命令数」 150×106 秒\frac{1}{50 \times 10^6}\ \text{秒}50×1061​ 秒
  3. 計算すると =2.0×10−8 秒= 2.0 \times 10^{-8}\ \text{秒}=2.0×10−8 秒
  4. これをナノ秒(ns)に直すと 20 ns20\ \text{ns}20 ns

③ 単位(ミリ、マイクロ、ナノ)の考え方

秒を小さく刻んでいくと、以下のようになります:

  • 1秒 = 1s
  • 1ミリ秒(ms) = 10^-3 秒 = 0.001 秒
    → 千分の1秒
    (例:まばたきはだいたい数百 ms)
  • 1マイクロ秒(μs) = 10^-6 秒 = 0.000001 秒
    → 百万分の1秒
    (例:カメラのシャッターで速いものは数 μs)
  • 1ナノ秒(ns) = 10^-9 秒 = 0.000000001 秒
    → 十億分の1秒
    (例:CPUやメモリのアクセス速度)

つまり、
「1ミリ秒 = 1000マイクロ秒 = 100万ナノ秒」になります。


④ この問題の答え

50MIPSのCPUは 1命令あたり平均 20ナノ秒 で実行できる。