すでにメンバーの場合は

無料会員登録

GitHubアカウントで登録 Pikawakaが許可なくTwitterやFacebookに投稿することはありません。

登録がまだの方はこちらから

Pikawakaにログイン

GitHubアカウントでログイン Pikawakaが許可なくTwitterやFacebookに投稿することはありません。

IT用語

【IT用語】 CPUとは?処理速度に最も影響するパーツについて解説!

ぴっかちゃん
ぴっかちゃん

CPUとは、PCの制御・演算処理を担っているパーツで、PCの頭脳と言えます。プログラムの実行に直接関わるため、とても重要なパーツです。

CPUとは何か?

CPUはPC上でどんな役割をもち、どういった動作をしているのでしょうか。
この記事では、CPUの概要、CPUのスペックによる違い、CPUの選び方について順を追って説明します。

CPUの概要

最初に、CPUとは具体的にどのようなものか説明します。

どのような役割があるか

CPUとは"Central Processing Unit"(中央演算装置)の略であり、その名の通りPCの"核"となるパーツです。CPUはプログラムを実行するほか、マウスやキーボードなどのデバイスの制御といった、重要な役割を担っています。
例えば、PCを起動した時にOSを立ち上げ、起動アニメーションを再生し、ホーム画面を表示する...といった一連の動作は、すべてCPUによって行われているのです。

PCでどのように動作しているか

CPUは以下の写真のような見た目をしたパーツです。

CPUの画像

CPUはメモリというパーツから受け取ったデータに対して演算処理を行います。CPUとメモリは密接な関係があり、CPUはメモリと処理するデータ、処理をしたデータをやり取りしています。

それでは、CPUの動作についてもう少し詳しく解説しましょう。

動作の流れ

  • ① 「1,2番地にデータ1,2をロードする」という命令を受けてメモリからデータ1,2を読み込む
  • ② 「データ1,2を足して3番地に置く」という命令を受けてデータ1,2を足したデータaを作る
  • ③ メモリに処理が完了したデータaを送る

簡略化してありますがこのような流れでCPUは動作しています。

メモリ内には、データとそのデータをどう処理するかの命令のセットが順番に置かれています。CPUは一回の動作でそのセットを読み出し、命令に従ってデータを処理します。一回では単純なことしかできませんが、それを何千何万回も繰り返して複雑な動作を実現しているのです。

メモリとは

メモリは、PCの処理に必要なデータをCPUに渡せるように一時保管しておくパーツです。CPUの処理は非常に高速なため、その速さに対応できるようにデータを高速転送できるようになっています。
→メモリとは?

プログラミングする上でのCPUの重要性

CPUは実際にプログラムの処理を行う部分であるため、その性能は実行時間などに大きく影響します。
画像処理や機械学習など、大量の処理を必要とする場合は少しでも実行時間を短くするため性能の高いCPUを用いることが重要です。

スペックが高いと何が変わる?

CPUがPCにおいてとても重要な役割を持つパーツであると理解していただけたと思います。そんなCPUの性能が高いとどんなよいことがあるでしょう。また、性能が低いとなにがいけないのでしょう。

性能が高いとどんなメリットがあるのか

CPUの性能が高いと、単純に処理が高速になります。つまり、PCの動きそのものが早くなるということです。例えば、動画のエンコード(変換)がすぐに完了したりといった、私たちの待ち時間が短くなることでPCを使用する上でのストレスを大きく減らすことができます。

では実際に、プログラムを実行して一連の処理にかかる時間を比較してみましょう。

GitHub - ildoonet/tf-pose-estimation: Deep Pose Estimation implemented using Tensorflow with Custom Architectures for fast inference.
https://github.com/ildoonet/tf-pose-estimation

実験にはこちらのプログラムをお借りしました。実行すると、画像から人物の姿勢を推定します。
CPUの性能が異なる2つのマシンを使って、処理にかかる時間を比較しました。

処理時間の比較

上の図を見ていただければわかるように、実行時間に1秒以上の差が生まれています。もし動画に対して同じ処理を行ったとしたらこの差は何倍にも膨れあがるでしょう。そう考えると、性能の高いCPUを導入することは大きなメリットがあるといえます。

また、動作の高速化のほかに大きなメリットとして、非常に多くの処理を必要とするアプリケーションが実行できたり、たくさんのアプリケーションを同時に使えます。

性能が低いと起こること

CPUの性能が低いと、次から次へと要求される処理にCPUが追いつけなくなります。

例えば、ゲームにおいてはボタンを入力したら即座に攻撃のアニメーションや効果音を流す必要があります。ここで、CPUの性能が低く処理の順番待ちが起こってしまっている場合、入力の数秒後にやっと動き始めたり、効果音再生の処理が無視されてしまったりといったことが起こります。これを処理落ちといい、CPUの処理が追いつかないときに発生します。

処理落ちとは

処理落ちが頻繁に起こってしまうような状況ではPCを正しく動作させることができません。アプリケーションによってはそもそも使うことさえできず、やりたいことができない事態におちいってしまいます。
CPUのグレードが低いことでできることが大幅に制限されてしまうことがあるので、PCを選ぶ際にはCPUの性能をよく確認するようにしましょう。

性能についてのまとめ
性能が高いと...
  1. 動作が高速に
  2. 同時にたくさんのアプリケーションを開くことができる
性能が低いと...
  1. 動作が遅くなる(カクカクに)
  2. 使いたいアプリケーションがそもそも開けないことも...

CPUを選ぶときに何に気をつければいい?

では、あなたがPCを購入する際に、CPUについて何を知っておくべきなのか、これから説明します。

自分の用途にはどんなCPUを選べばいいか

CPUはその性能に合わせて、メーカーがグレード分けしており、以下の表では下に行くほど高いグレードになっています。

プログラミングをする方であればMacを選ぶことが多いと思いますが、基本的にどのMacを購入しても開発は可能です。プログラミング以外の使い道がある方、動作の高速さ(快適性)を求める方はCPUのアップグレードを検討してもよいかもしれません。
この表を参考に、あなたの使用用途にあったグレードのCPUを選びましょう。

グレード 用途
Celeron, Pentium エクセルやワードなどの事務作業、ネットサーフィン
Core i3, Ryzen 3 軽量なゲーム、画像編集
Core i5, Ryzen 5 (Mac Book Airはここまで) プログラミング、作曲
Core i7, Ryzen 7 (Mac Book Pro 13inchはここまで) 高負荷なゲーム、動画編集 ほとんどすべてのことができる
Core i9 (Mac Book Pro 16inchはここまで) ほとんどすべてのことができる とにかく高速化を求める
Xenon サーバー用 通常用途には向かない

CPUは基本的に毎年リニューアルされます。そのため、同じCore i5でも新しいモデル(世代)の方が高性能になります。

スペック表の見方

だいたいのグレードは決まったけど、その中にもいろいろ種類があって選べない!という方も多いと思います。
そこで、実際に販売されている下記のCPUのスペックを例に、CPUを選ぶ際に確認すべき主なスペックについてさらに説明します。

スペック 説明
Core i5-10400 プロセッサナンバーと呼ばれます。一般に、千の位の数字が世代(このCPUは第10世代)、百の位の数字がグレードを表しています。数字が大きい方が新世代、高性能です。末尾にKやXがついている場合はオーバークロックが可能であることを示しています。
6 コア CPUのコア数です。コア数が多いほど、より多くの処理を同時並行できます。この例では、6つの処理が並行できるという意味になります。
2.90 GHz (最大4.3 GHz) CPUのクロック数です。この周波数が高いほど、一秒間に行える処理の数が多くなります。最大~Hzとあるのは、必要な処理が集中した時一時的に動作できるクロック数のことで、高負荷時に自動的に性能をブーストしてくれます。
FCLGA1200 CPUの規格です。PCを自作する際はマザーボードというパーツとこの規格を合わせる必要があります。
オーバークロックとは

CPUは繊細なパーツであるため、メーカーはある程度安全性や耐久性を保つためにCPUの性能をセーブさせています。この制限を突破して、100%の性能を発揮できるようにすることを"オーバークロック"といいます。 オーバークロックには性能が向上するメリットがありますが、CPUが突然故障したり寿命が縮まるといったリスクもあるので行う際には細心の注意が必要です。

intelとAMD

現在CPUを製造しているメーカーは、主にintelとAMDの二つあります。
CeleronやPentium、Core i3などはintel製、Ryzen7などはAMD製のCPUになります。

IntelとAMD

intel製CPUはコア数が少なくクロック数が高い、AMD製はコア数が多くクロック数が低いという特徴があります。つまり、intelはシングルタスク、AMDはマルチタスクに向いているといえます。
とはいえ、同じグレードであればそれほど大きな違いがあるわけではないので(例えば、Core i3とRyzen3はほぼ同等)、好みで選んでしまっても構いません。

内蔵グラフィックについて

IntelのCPUにはグラフィック処理用のチップが内蔵されていますが、AMDのCPUにはそれがありません。なので、Ryzenを使う場合は別途グラフィックボード(GPU)というグラフィック用のパーツを用意しなければならないので注意が必要です。

この記事のまとめ

  • CPUはPCの処理を行うパーツ
  • コア数が多いほど同時にできる処理が多い
  • クロック数が高いほど処理が高速