SC情報処理安全確保支援士試験 午前Ⅰ

平成31年度春期 情報処理安全確保支援士 午前Ⅰ 問4

問題文と選択肢を読んで答えを考えてから、下の「正解と解説を見る」で確認しましょう。

問題

スーパスカラの説明として、 適切なものはどれか。

選択肢

  1. ア
    一つのチップ内に複数のプロセッサコアを実装し、 複数のスレッドを並列に実行する。
  2. イ
    一つのプロセッサコアで複数のスレッドを切り替えて並列に実行する。
  3. ウ
    一つの命令で、 複数の異なるデータに対する演算を、 複数の演算器を用いて並列に実行する。
  4. エ
    並列実行可能な複数の命令を、 複数の演算器に振り分けることによって並列に実行する。
解き方のヒントを見る

午前I 問04:スーパスカラは“命令を同時進行でさばく”仕組みだよ

SIMDは「1つの命令で、たくさんのデータをまとめて処理する」やり方だよ。たとえるなら、同じ作業をする人たちに一斉に同じ指示を出す感じ。一方、スーパスカラは「複数の命令を同時に進める」仕組みで、レジ係を増やして別々のお客さんを同時にさばくイメージだよ。つまり、スーパスカラは命令レベルの並列性を利用しているんだ。

この問題で問われていること

マルチコア、ハイパースレッディング、SIMDとスーパスカラを区別できるかがポイントだよ。特に、SIMDは“1命令で複数データ”、スーパスカラは“複数命令を同時実行”と押さえよう。

Superscalar Execution

superscalar CPUs dispatch multiple independent instructions to multiple execution units

multiple instructions\nmultiple execution units

確認ポイント

  • 一命令多データではありません。
  • 複数コア実装の説明でもない。
  • 命令レベル並列を選ぶ。
正解と解説を見る

正解

エ

出典

問題文と解答は IPA 公開の過去問題冊子・解答例を基にしています。

選択肢ア

これは不正解だよ。1枚のチップの中にCPUの作業員を何人も入れて、別々の仕事を同時に進めるイメージで、これはマルチコアの説明だよ。スーパスカラは「1人の作業員の中にある複数の道具へ、できる命令を振り分ける」感じなので、少し違うよ。

選択肢イ

これは不正解だよ。1つのプロセッサコアで複数のスレッドを切り替えるのは、1人の店員がAさん、Bさん、Cさんの対応を素早く行ったり来たりするようなものだよ。見かけ上は同時っぽく見えるけど、スーパスカラの「複数の演算器で複数命令を同時実行」とは別物だよ。

選択肢ウ

これは不正解だよ。1つの命令で複数のデータをまとめて処理するのはSIMDの説明だよ。たとえば「全員、同じスタンプを押してね」と一声かけて、複数の書類に同じ処理を一斉にする感じ。スーパスカラは複数の命令を複数の演算器に振り分けるので、見るポイントが違うよ。

選択肢エ(正解)

これは正解だよ。スーパスカラは、レジに複数の窓口があって、同時に処理できるお客さんを空いている窓口へ振り分けるような仕組みだよ。CPU内の複数の演算器に、並列実行できる複数の命令を割り当てて同時に進めるので、この説明がぴったりだよ。

出典:独立行政法人 情報処理推進機構(IPA)平成31年度春期 情報処理安全確保支援士試験 午前Ⅰ 問4(公式資料:問題冊子(PDF) / 解答例)

関連する過去問一覧

IPA Advancedは非公式の学習サイトです。解説にはAIによる補助生成を含む場合があります。公式の問題冊子・解答例・採点講評を優先し、誤りは確認後に訂正します。運営・編集方針