見出し画像

ざっくりCPU、GPU、マルチコアプロセッサ

CPUの命令実行サイクルのおさらい
①命令の取り出し(フェッチ)
②命令の解読(デコード)
③実効アドレスの計算
④オペランドの取り出し
⑤命令の実行
⑥演算結果の格納
6ステージで行われている。

逐次制御方式

1命令(6ステージ)ずつ順番に繰り返し実行する方式。制御装置、演算装置が動作しない時間ができてしまい効率が悪い

パイプライン方式

複数の命令を1ステージずつズラして並行処理を行い、処理の高速化を図る方式。
逐次制御方式に比べると効率が上がる
しかし、命令の流れが条件分岐で流れが分かれる場合、先読みしていた命令を破棄し、新たに分岐先の命令を実行する必要があります。
このような処理の順序が乱れる事をパイプラインハザードという。
なので実行される確率の高い方を予測する分岐予測、予測した分岐先の命令を開始して結果を保持しておき正しければその結果を利用する投機実行などの技術を利用している。

スーパーパイプライン方式

パイプライン方式をより細分化する事で、高速化を図る方式。

スーパースカラ方式

パイプラインを複数使用して、複数の命令を同時に実行する事で高速化を図る方式。

CPUの設計構成~CISCとRISC~

CPUは2つのアーキテクチャが存在する。
それがCISC(シスク)RISC(リスク)

・CISC (complex Instruction Set Computer)
CPUが複雑な命令体系であり、1回の命令で複雑な処理を行わせる事ができる。
主な利用:PC、サーバとして採用

・RISC (Reduce Instruction Set Computer)
CPUが単純な命令体系であり、効率よく1つ1つの命令を高速に処理する。
主な利用:スマートフォン、タブレット、組み込みシステム


マルチコアプロセッサ

CPUのコアとは、処理を行うCPUの核の部分。
そのコアを1つのCPUに複数装備させれば、処理速度がもっと高速化するんじゃないかってのがマルチコアプロセッサ

コア2個でデュアルコア、4個でクアッドコア、8個でオクタルコアと呼ばれている。
それぞれのコアに別々の処理を行わせる事で(並列処理)、処理能力の向上させる。

GPU(Graphics Processing Unit)

GPUとは3Dグラフィック処理を高速に実行するプロセッサ。
前提としてCPU、GPUどちらも演算を行う事には違いない、
どんな計算処理を行うのかが変わってくる。

・CPUとGPUでのコアの数の違い
CPUでは数個ほどであるが、膨大な並列処理を必要とするGPUには数千個ものコアが存在している。

膨大な計算処理に向いているGPUは、人工知能(機械学習など)の分野においても活躍をしている。

いいなと思ったら応援しよう!