平成31年度 春期 午前 問8
コンピュータ構成要素
スーパスカラの説明
スーパスカラの説明として,適切なものはどれか。
- ア一つのチップ内に複数のプロセッサコアを実装し,複数のスレッドを並列に実行する。
- イ一つのプロセッサコアで複数のスレッドを切り替えて並列に実行する。
- ウ一つの命令で,複数の異なるデータに対する演算を,複数の演算器を用いて並列に実行する。
- エ並列実行可能な複数の命令を,複数の演算器に振り分けることによって並列に実行する。
答えと解説を見る
✓ これが正解エ並列実行可能な複数の命令を,複数の演算器に振り分けることによって並列に実行する。
解説
並列に実行できる命令を、複数の演算器に振り分けます。
スーパスカラは、一つのプロセッサコアの中で、独立に実行できる命令どうしを同じサイクルに複数走らせる仕組みです。ハードウェアが命令の依存関係を調べ、互いに影響しないと分かった組を複数の演算器へ配ります。プログラムから見れば命令は順に並んでいますが、実行段では並行に動くため、同じ動作クロックでも取り出せる仕事量が増えます。設問の説明はこの働きをそのまま述べたもので、並列実行可能な命令の振り分けというところが要点です。パイプラインを複数持つ形に発展したものと捉えると位置づけが分かりやすくなります。
ほかの選択肢はなぜ違うのか
- ア一つのチップ内に複数のプロセッサコアを実…:チップの中に複数のプロセッサコアを載せて、複数のスレッドを並列に動かすのはマルチコアの説明です。命令ではなくコアそのものを増やす仕組みで、単一のコアの中の並列化ではありません。
- イ一つのプロセッサコアで複数のスレッドを切…:一つのコアで複数のスレッドを切り替えて並列に動かすのはマルチスレッドの説明です。切り替えのために状態を複数抱えるだけで、命令を複数の演算器へ同時に振り分ける機構ではありません。
- ウ一つの命令で,複数の異なるデータに対する…:一つの命令で、複数の異なるデータに対して同じ演算を並列に行うのは SIMD の説明です。命令の数は増やさずデータの側を束ねる仕組みで、命令を振り分ける機構ではありません。
出典:平成31年度 春期 応用情報技術者試験 午前 問8
この解説に誤りを見つけたら教えてください。直して、直した記録を残します。誤りを報告する(メールが開きます)