HOME»基本情報技術者試験掲示板»プロセッサの性能評価に関する計算式
投稿する
プロセッサの性能評価に関する計算式 [0871]
SYさん(No.1)
プロセッサ性能評価関係の計算が苦手です
同じテキスト内でもニュアンスがちょっとだけ違っていて
同じものを求める式なのか全然違う式なのか分からなかったり…
暗記したいのに結局いくつ式があるのかと困っています
例えば
・CPUが1秒間に処理できる命令数 = クロック周波数×1命令に要する平均クロック数
・MIPS値(1秒間に実行できる命令数) = 1秒÷平均命令実行時間
これらの左辺や、
・平均命令実行時間 = 1クロックあたりの実行時間×1命令に要する平均クロック数
・命令の実行に要する時間 = 命令数÷MIPS値
・命令の実行時間 = クロック時間×1命令に要する平均クロック数
これらの左辺です
言葉は違うけど言ってることは同じような…でも右辺は全然違うし…
平均と付いてるものと付いてないものは別物なのか…?と困っています
文系なので変なことで躓いてるのかも分かりませんが助けてください
基本情報技術で役立つ式一覧でもあればとても助かります
同じテキスト内でもニュアンスがちょっとだけ違っていて
同じものを求める式なのか全然違う式なのか分からなかったり…
暗記したいのに結局いくつ式があるのかと困っています
例えば
・CPUが1秒間に処理できる命令数 = クロック周波数×1命令に要する平均クロック数
・MIPS値(1秒間に実行できる命令数) = 1秒÷平均命令実行時間
これらの左辺や、
・平均命令実行時間 = 1クロックあたりの実行時間×1命令に要する平均クロック数
・命令の実行に要する時間 = 命令数÷MIPS値
・命令の実行時間 = クロック時間×1命令に要する平均クロック数
これらの左辺です
言葉は違うけど言ってることは同じような…でも右辺は全然違うし…
平均と付いてるものと付いてないものは別物なのか…?と困っています
文系なので変なことで躓いてるのかも分かりませんが助けてください
基本情報技術で役立つ式一覧でもあればとても助かります
2017.08.28 02:15
昨年合格者さん(No.2)
①CPUが1秒間に処理できる命令数 = クロック周波数×1命令に要する平均クロック数
②MIPS値(1秒間に実行できる命令数) = 1秒÷平均命令実行時間
とかかれていますが、両式とも間違いが含まれていますので改めて確認していきたいと思います。
例として
CPUのクロック数が100Hzつまり「1秒間に100回動作できる」...(1)
1命令に要する平均クロック数を2とすると、つまり1つの命令を行うのに平均「2動作」が必要...(2)
として上記①②の式について考えてみます
①CPUが1秒間に処理できる命令数=100÷2で50回/秒...(3)
になりますので、①の右辺は「クロック周波数『×』1命令に要する平均クロック数」ではなく
「クロック周波数『÷』1命令に要する平均クロック数」が正しいです。
②の「平均命令実行時間」は1つの命令を実行するのに要する平均時間ですので、まずは1クロックに何秒必要かを考えます。
(1)でクロック数を100Hzとしましたので、1クロックに要する時間は
1÷100=0.01秒...(4)
となります。
(2)で1つの命令に2クロック必要と仮定しましたので、1命令あたりの実行時間は
0.01×2=0.02秒...(5)
となります。
(4)を②の式に当てはめると
MIPS値=1秒÷0.02秒=50回/秒...(6)
となり(3)と(6)は一致することになりますが、そもそもMIPS値は1秒間に何回命令を実行できるかではなく、1秒間に何「百万」回命令を実行できるかを示す値なので
MIPS値≠CPUが1秒間に処理できる命令数
であり正確には
MIPS値=CPUが1秒間に処理できる命令数÷10の6乗=50÷10の6乗=50÷1,000,000=0.00005(回/秒)...(7)
となります。
従って正しくは
②MIPS値(1秒間に実行できる命令数) = (1秒÷平均命令実行時間)÷1,000,000
つまり
②MIPS値(1秒間に実行できる命令数) = CPUが1秒間に処理できる命令数÷1,000,000
です。
また下記の3式については
③平均命令実行時間 = 1クロックあたりの実行時間×1命令に要する平均クロック数
④命令の実行に要する時間 = 命令数÷MIPS値
⑤命令の実行時間 = クロック時間×1命令に要する平均クロック数
③は(4)で、説明したとおりです。
④については(7)から
命令の実行に要する時間 ≠ 命令数÷MIPS値
であることがわかり、正しくは
命令の実行に要する時間 = 命令数÷CPUが1秒間に処理できる命令数
で、例の数値を当てはめると
命令の実行に要する時間 = 命令数÷50
(1秒間に50回命令を処理できるので、必要な命令数を50で割れば実行に要する時間を計算できる)
⑤については
1クロックあたりの実行時間=クロック時間
1命令に要する平均クロック数=1命令に要する平均クロック数
で③の式と全く同じ内容です。
②MIPS値(1秒間に実行できる命令数) = 1秒÷平均命令実行時間
とかかれていますが、両式とも間違いが含まれていますので改めて確認していきたいと思います。
例として
CPUのクロック数が100Hzつまり「1秒間に100回動作できる」...(1)
1命令に要する平均クロック数を2とすると、つまり1つの命令を行うのに平均「2動作」が必要...(2)
として上記①②の式について考えてみます
①CPUが1秒間に処理できる命令数=100÷2で50回/秒...(3)
になりますので、①の右辺は「クロック周波数『×』1命令に要する平均クロック数」ではなく
「クロック周波数『÷』1命令に要する平均クロック数」が正しいです。
②の「平均命令実行時間」は1つの命令を実行するのに要する平均時間ですので、まずは1クロックに何秒必要かを考えます。
(1)でクロック数を100Hzとしましたので、1クロックに要する時間は
1÷100=0.01秒...(4)
となります。
(2)で1つの命令に2クロック必要と仮定しましたので、1命令あたりの実行時間は
0.01×2=0.02秒...(5)
となります。
(4)を②の式に当てはめると
MIPS値=1秒÷0.02秒=50回/秒...(6)
となり(3)と(6)は一致することになりますが、そもそもMIPS値は1秒間に何回命令を実行できるかではなく、1秒間に何「百万」回命令を実行できるかを示す値なので
MIPS値≠CPUが1秒間に処理できる命令数
であり正確には
MIPS値=CPUが1秒間に処理できる命令数÷10の6乗=50÷10の6乗=50÷1,000,000=0.00005(回/秒)...(7)
となります。
従って正しくは
②MIPS値(1秒間に実行できる命令数) = (1秒÷平均命令実行時間)÷1,000,000
つまり
②MIPS値(1秒間に実行できる命令数) = CPUが1秒間に処理できる命令数÷1,000,000
です。
また下記の3式については
③平均命令実行時間 = 1クロックあたりの実行時間×1命令に要する平均クロック数
④命令の実行に要する時間 = 命令数÷MIPS値
⑤命令の実行時間 = クロック時間×1命令に要する平均クロック数
③は(4)で、説明したとおりです。
④については(7)から
命令の実行に要する時間 ≠ 命令数÷MIPS値
であることがわかり、正しくは
命令の実行に要する時間 = 命令数÷CPUが1秒間に処理できる命令数
で、例の数値を当てはめると
命令の実行に要する時間 = 命令数÷50
(1秒間に50回命令を処理できるので、必要な命令数を50で割れば実行に要する時間を計算できる)
⑤については
1クロックあたりの実行時間=クロック時間
1命令に要する平均クロック数=1命令に要する平均クロック数
で③の式と全く同じ内容です。
2017.08.28 05:39
昨年合格者さん(No.3)
この投稿は投稿者により削除されました。(2017.08.28 06:12)
2017.08.28 06:12
昨年合格者さん(No.4)
補足です。
「CPUの性能」と「実行できる命令数」と「時間」の関係は、「速度」と「距離」と「時間」の関係に似ています。
距離=速度×時間
実行できる命令数=CPUの性能×時間...(1)
で
CPUの性能=実行できる命令数÷時間...(1)’
となります。また同時に
CPUの性能=クロック周波数÷1命令に要する平均クロック数...(2)
で、
1クロックに要する時間=クロック周波数の逆数=1÷クロック周波数...(3)
となるので、(1)、(2)、(3)を覚えておけば大概はその変形で対処できると思います。
時間の関係で充分に見直しせずに書きましたので、誤りがあればご指摘、補足をいただければ幸いです。
「CPUの性能」と「実行できる命令数」と「時間」の関係は、「速度」と「距離」と「時間」の関係に似ています。
距離=速度×時間
実行できる命令数=CPUの性能×時間...(1)
で
CPUの性能=実行できる命令数÷時間...(1)’
となります。また同時に
CPUの性能=クロック周波数÷1命令に要する平均クロック数...(2)
で、
1クロックに要する時間=クロック周波数の逆数=1÷クロック周波数...(3)
となるので、(1)、(2)、(3)を覚えておけば大概はその変形で対処できると思います。
時間の関係で充分に見直しせずに書きましたので、誤りがあればご指摘、補足をいただければ幸いです。
2017.08.28 06:17
昨年合格者さん(No.5)
すみません、自己レスです。
№2の中で
としておりましたが、正しくは
(5)を②の式に当てはめると
です。
また
は、
MIPS値=CPUが1秒間に処理できる命令数÷10の6乗=50÷10の6乗
=50÷1,000,000=0.00005(百万回/秒)...(7)
となります。
失礼しました。
№2の中で
>>(4)を②の式に当てはめると
としておりましたが、正しくは
(5)を②の式に当てはめると
です。
また
>>MIPS値=CPUが1秒間に処理できる命令数÷10の6乗=50÷10の6乗
>>=50÷1,000,000=0.00005(回/秒)...(7)
は、
MIPS値=CPUが1秒間に処理できる命令数÷10の6乗=50÷10の6乗
=50÷1,000,000=0.00005(百万回/秒)...(7)
となります。
失礼しました。
2017.08.28 21:04
SYさん(No.6)
非常に丁寧な解説ありがとうございます!
おかげ様で式や用語の整理がつき、理解できなかったテキストの演習問題もすっきりと解くことができました!
暗記して全部自力で解けるよう頑張ります
おかげ様で式や用語の整理がつき、理解できなかったテキストの演習問題もすっきりと解くことができました!
暗記して全部自力で解けるよう頑張ります
2017.08.29 14:19