
きたみりゅうじ著 H30年度基本情報技術者より
受験勉強中で、テキストと過去問集をもとに勉強に取り組んでおります。
P146ページのMIPSの過去問について 質問させて下さい。
146ページ問2の過去問の解説を読んでも考え方に詰まっています。
この過去問の解説には
クロック数×出現率を足して、三つの命令の平均クロック数を求めるとありました。
平均クロック数というのは、「命令実行に必要なクロック数」×出現率とそのまま解釈するのでしょうか。
1命令を実行するのに必要な平均クロック数 4×0.3+8×0.6+10×0.1=1.2+4.8+1.0=7
その求めた、「平均クロック数」7.0、と、「1秒間に実行されるクロック数」7百万クロックを割るとMIPSが算出される。と理解しました。
700百万クロック÷7=100百万命令
しかし145ページでは、MIPSの計算はまず周波数から「クロックサイクル時間」を求めるところから始まっています。
周波数と1秒を割って、「クロックサイクル時間」を出します。
「クロックサイクル時間」とクロック数をかけ、各命令の実行時間を出します。
その値と出現率とかけて、「平均命令実行時間」を出しています。
「平均命令実行時間」をもとに、10の9乗とをかけてMIPSを出しています。
この計算方法を試したものの、過去問のクロック数と出現率をかけて全て足していって平均クロック数になるという流れが、なぜそうなるのか理解に及びません。
過去問での計算は145ページの計算方法と違いますが、どうして、この解説はクロック数と出現率とをかけてるのでしょうか。また、出現率で割引されていても、なぜこの値が平均クロック数と言っているのでしょうか。
この解説には、画像2にある、一秒÷周波数のクロックサイクル時間も使ってないです。なので、クロック数とサイクル時間の掛け算や、その結果を出現率と計算することもしてません。
どうしてなのか理由もまったく推測できず、、、
そもそも、過去問の問題文の意図もわかってないのかもわかりません。
ほかの問題集も解いたあとなのですが、依然としてわからず、困り果てております。
No.2ベストアンサー
- 回答日時:
MIPSの名前の通り、
IPS = 全体の命令数 ÷ 全体の実行時間(秒) ...(1)
1MIPS = 100万IPS (M メガ)
です。
他のものは、ここから式を変形したものです。
通常、1命令の実行時間はの関係は一定ではありません。
そこで「1命令の平均実行時間(秒)」を求めます。
1命令の平均実行時間(秒) = 全体の実行時間(秒) ÷ 全体の命令数 ... (2)
(すべて0でないとすると)
(2)は次のように変形できます。
全体の命令数 ÷ 全体の実行時間(秒) = 1 ÷ 1命令の平均実行時間(秒) ...(3)
(3)の左辺は(1)の IPS です。つまり
IPS = 1 ÷ 1命令の平均実行時間(秒) ...(4)
でも求められる、ということです。
クロックは一定間隔で発生する信号です。
CPUの命令は、クロックに合わせて動作します。
そのため、各命令の実行時間は「実行に何クロックかかるか」ということで表わせます。
1命令の実行時間 = その命令に必要なクロック数 × 1クロックあたりの時間(秒)
= その命令に必要なクロック数 × (1 ÷ クロック周波数(Hz) )
= その命令に必要なクロック数 ÷ クロック周波数(Hz)
これは、平均したのも同じです。
1命令の平均実行時間(秒) = 1命令の平均クロック数 ÷ クロック周波数(Hz) ..(5)
(5) を (4)に代入すると
PS = 1 ÷ ( 1命令の平均クロック数 ÷ クロック周波数(Hz) )
= 1 ÷ 1命令の平均クロック数 × クロック周波数(Hz)
= クロック周波数(Hz) ÷ 1命令の平均クロック数
確率から平均が求まる理由は、数学の確率・統計の分野でも確認してください。
ありがとうございます。
かなりややこしいですね。
式の解説とても勉強になりました。
またまだ私の知らないことばかりです。
期待値が平均値であることをすっかり忘れていました。
でもやはり難しいですね。MIPSについて調べていたら、2005年以降CPUの性能の向上が高速になっていました。今や1000MIPS以上が普通の時代になっていることを理解したいと思います。
No.1
- 回答日時:
質問文をちゃんと読んでいませんが、MIPSはMillion(もしくはMega)Instructions Per Secondの略ということはご存知ですよね?それさえわかっていれば求め方に疑問がわく余地はないように思うのですが。
MIPS値の次元は「時間^(-1)」です。ありがとうございます。MIPSは1秒間に実行できる命令の数ということですね。
次元が時間^-1というのは下記の計算だと、10^9秒を8秒と読み返すということかと認識しました。間違えてますか?
1/2ナノ秒=1/2×10^9秒
=1/2×10^9秒=0.5×10^9秒=500000000秒 0が8個
百万なので、結果500MIPS
私はここで間違えて50と間違えてしまいます。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
アンドロイドでGeminiを停止(削...
-
CPUの温度を
-
chatGPTの利用に関して
-
宮崎駿作品集15枚組を購入した...
-
色々な言語について。
-
Windows用アプリ作成方法
-
【これからのAI時代はコンテキ...
-
【地球の未来】イーロン・マス...
-
マイナー保健証で、紙の時より...
-
AI を おちょくる質問
-
coPilotにかけられた、制限(?...
-
youtubeで、意図しない...
-
世界中で、人気のある、1000万...
-
X線解析装置の出力、オートロッ...
-
PCで、「リストナビゲーター」...
-
ノートパソコンを落としてしま...
-
至急です。 電源入れたままSIM...
-
チャタリングが起きるのはメカ...
-
サーフェスについて、「再起動...
-
soc、マイコン、ARM、組み込み...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
CPUのクロック周波数が1ク...
-
急募 ryzen 651 wof silverとは...
-
CPUの数字3.00GHzについて教え...
-
どのGPUがいいと思いますか?
-
ノートパソコンを使う時バッテ...
-
SATAのSSC(スペクトル拡散)
-
64ビットCPU
-
パソコンのリミッターの外し方
-
PCIバスのカードでクロックが長...
-
Bulldozer(FX)について
-
プロ野球 ピッチクロック反対と...
-
「クロック」と「クロックサイ...
-
クロックパルスってどこから発...
-
PentiumとAthlonの消費電力、発...
-
WinのCPUについて
-
CPUのクロックの違いについて
-
Pen3とMの性能差
-
ウォールクロック
-
クロック周波数について
-
CPUの性能比較について
おすすめ情報
画像はありませんので、お手持ちの方のご回答お待ちしております。