CPUの性能を知るには
CPUの性能を知るには何処を見ればいいかとか、それぞれが何を指しているかとかをまとめたいと思います。
- クロック周波数
- マルチコア
- スレッド
今回は上記3つの観点でまとめてみました。
クロック周波数
CPUの性能を測る指標の一つとして最初に挙げられるのがクロック周波数です。ググると「CPUの中の回路が処理のテンポを合わせるためのクロック信号を1秒間当たりに何回発生させるか」とか、「電気のON・OFFの切替スピードのこと」、「人間の脈みたいなモン」などと説明されることが多いです。
より具体的に話すと、CPUが計算をする際に次のような処理群があります。
- 計算する命令をメモリから読み出す
- CPUがその命令を理解する
- 計算に必要なデータをメモリから読み出す
- 計算を行う
- 結果をメモリに書き出す
厳密にはそれぞれの処理は1クロックではないですが、簡略化して1クロックと考えれば「計算する」という処理は5クロックと考えられ、クロック周波数でこれを割れば処理にかかる時間が分かります。
つまりクロック周波数が高いということは処理に掛かる時間が短くなるというわけです。テンポが速くなるみたいな例えもしっくり来ます。
クロック周波数の単位にはGHz(ギガヘルツ)が良く使われます。ギガ=10億だから自分の使っているiPhone 6sはApple A9というCPUで、クロック周波数1.85GHzということは1秒間に約20億個の処理が出来るという事になります。
どうりで高いわけですね。
昔はクロック周波数を上げればCPUの性能は上がるという考え方が主流でしたが今は違います。というのもクロック周波数を上げるほど消費電力が上がりCPUが熱をもつからです。オーバークロック選手権とかをご存じないでしょうか。よく一生懸命液体窒素をかけてCPUを冷やす姿が見られます。液体窒素といえば-200度位の温度で一瞬でバラの花を凍らせる動画でお馴染みのアレですが、そんな液体窒素をもってしてもまだ熱いというレベルの熱なので、如何に負荷が大きいのか伝わると思います。
マルチコア
そこでどう処理能力を上げるのかというところで、マルチコアの登場です。コアとはCPUの中の命令を実行する所で、いわゆる人間の頭脳です。マルチコアとは脳が複数あるということです。
例えばSteamでゲームをしながらインターネットで検索したり、録画ソフトで録画したり、友人とチャットをしたいとします。これら全てを1つのコアに任せるよりも複数のコアに分担させた方が、効率も負荷分散も良くなるのは想像に難くないでしょう。
CPUが同時並列で演算処理を行えるということは、複数のソフトを起動させてもコア1つに比べて処理速度が落ちにくいということです。又、1つのソフトウェアであっても動画編集ソフトやゲームなどの様にあらかじめマルチコアCPUに対応したソフトウェアならば、コア1つに比べ処理速度が極端に上がる設計となっていることもあります。
スレッド
CPUの性能の指標としてスレッドもよく用いられますが、これはCPUが同時に作業を行うことの出来る数のことです。基本1コアにつき1スレッドですが、intel製のようにHT機能があるCPUは1コアで複数スレッド処理が可能です。
例えば1スレッドなら複数処理がある時、処理を1つ1つ順番に行っていきます。2スレッドならば2つの処理を並列に行えるのでスレッドの数だけ同時に複数の処理を進めることが出来ます。
つまりスレッドが多ければコアの使用率が上がるということであり、同時作業を考えている場合見逃せない指標であります。
本当はCPUの性能にはキャッシュ容量とか色々な指標があるのですが、詳しくないので今回はこの3つをまとめてみました。