CPUのコア
最終更新日
2023年09月07日
CPUのコアとは
基礎
CPUのコアとは、計算を行う演算回路です。実際には計算を行う回路以外に、どのような計算を行うのか記憶する回路、計算途中や計算結果のデータを記憶する回路等もあります。よくCPUを人間の脳に例えることがありますが、コアは脳の中枢部分にあたります。コアがダイを指す
CPUのコアがダイを指す場合があります。昔の話であり今では指しません。昔は1つの演算回路を持つCPUのみでしたが、今では複数の演算回路を持つCPUが普及し、複数のコアがある等と言います。ダイを指すとしてコアという用語を使用するとわかりにくいです。ビッグコアとスモールコア
サイズが大きいコアをビッグコア、サイズが小さいコアをスモールコアと呼びます。
ビッグコアは高性能ですが、消費電力、発熱量、コストが上がります。
スモールコアは低性能ですが、消費電力、発熱量、コストが下がります。
ビッグコアは高性能ですが、消費電力、発熱量、コストが上がります。
スモールコアは低性能ですが、消費電力、発熱量、コストが下がります。
ビッグコア | ・コアのサイズが大きい ・高性能、高消費電力、高発熱、高コスト ・主にデスクトップパソコンとノートパソコン向け |
---|---|
スモールコア | ・コアのサイズが小さい ・低性能、低消費電力、低発熱、低コスト ・主にタブレット向け |
シングルコアとマルチコア
コアを増やす理由
昔のCPUには1つのコアしかなく、クロック周波数を上げて性能を上げてきました。クロック周波数を上げるほど消費電力が増加し、それに伴い発熱量も増加し、クロック周波数の向上に限界が生じてきました。そこでクロック周波数を下げ、コアを1つから2つにしました。それぞれのコアは独自に処理を行い、人間で言うと2つのコアがあることは、1つの仕事を2人で担当と同じです。コア数を増やせば消費電力と発熱量の増加を抑えながら性能を上げられるので、CPUのメーカーはクロック周波数を上げるよりも、コア数を増やすことを重視し開発を進めています。コア数は増えていき、1つのコアから2つのコア、さらにもっと多いコア数を持つCPUが普及しました。マルチコアとは
1つのコアだとシングルコアと呼び、複数のコアだとマルチコアと呼びます。2コアをデュアルコア、3コアをトリプルコア、4コアをクアッドコア、6コアをヘキサコア、8コアをオクタコアと呼びます。さらにコア数が多いと、メニーコアと呼びます。ネイティブマルチコア
ネイティブマルチコアとは、1つのダイのみで複数のコアを実現するマルチコアです。コア数ごとに呼び方があり、2コアであればネイティブデュアルコア、4コアであればネイティブクアッドコアです。複数のダイにより複数のコアでもマルチコア
同じパッケージに格納していればダイが複数でもマルチコアです。パッケージに封入しているダイの数に関係なく、パッケージに複数のコアを封入していればマルチコアです。デュアルコアが登場した当初、インテルではダイが複数だとデュアルコアではないと定義していました。シングルコアのダイを2つ同じパッケージに格納したCPUはデュアルコアではないとしていました。後にデュアルコアにすると定義し直しました。
コア数の呼び方
一覧
CPUコアが2個であれば2コア等、数字とコアを組み合わせた呼び方の他に、以下の呼び方もあります。呼び方 | コア数 |
---|---|
シングルコア | 1 |
デュアルコア | 2 |
トリプルコア | 3 |
クアッドコア | 4 |
ヘキサコア | 6 |
オクタルコア | 8 |
デカコア | 10 |
ドデカコア | 12 |
ヘキサデカコア | 16 |
以上の呼び方は、パソコン等のコンピューター関連で比較的よく利用される呼び方です。
上記には記載していない呼び方もあり、例えばコア数が5の場合はペンタコアと呼びます。
コア数が4を超えると数字とコアを組み合わせた呼び方が利用される場合が多く、例えばコア数が6の場合はヘキサコアではなく6コアと呼ぶことが多いです。
メニーコア
コアが何個以上だとメニーコアに当てはまるのか、その明確な定義はありません。コアが数十個や数百個の場合、メニーコアと呼ぶのに相応しいほど多いです。
6〜8個や10個程度でもメニーコアと呼ぶことがあります。
コア数の増加と性能向上
マルチコアが主流の時代になり、クロック周波数以外で性能の高さを決める大きな要素にコア数の違いが加わりました。
コア数が多いほど性能が高いですが、コア数が2倍になっても性能も2倍にはなりません。
見方を変えて言うと、クロック周波数とコア数を掛けた結果の値が同じであれば、性能も同じになるように見えますが、実際は同じにはなりません。
例えば、2コアのCPUのクロック周波数1GHzとコア数2を掛けた結果の値は、2GHz(コア2×1GHz)です。
1コアのCPUのクロック周波数2GHzとコア数1を掛けた結果の値は、2GHz(コア1×2GHz)です。
両者のCPUは性能が同じのように見えますが、実際は同じにはなりません。
簡単に言うと、コア数を2倍にすると処理速度が2倍になるわけではありません。
ソフトウェアが複数のコアを持つCPUに対応し、複数のコアを活用して処理速度が向上するように作られていなければ、コア数が増えても処理速度の向上は望めません。
人間の世界だと1つの仕事を複数の人にやってもらうためには仕事を分ける必要がありますが、CPUも同じように複数のコアに処理を実行してもらうためには処理が並列化されていなければなりません。
並列化されていない処理だと1つのコアで処理を行います。
それならば処理を並列化すればよいですが、並列化が簡単な処理も難しい処理も多いです。
ソフトウェアが複数のコアを持つCPUに対応するように作られており、大部分の処理が並列化されていれば、大幅な処理速度の向上が望めますが、一般的に何もかも複数のコアに分担させて処理させることは難しいので、コア数が2倍になったら処理速度も2倍とはならず、大体1.25倍〜1.5倍くらい速くなります。
ソフトウェアによっては2倍近くまで速くなりますが、大体平均すると高くても1.5倍程度です。
コア数が多いほど性能が高いですが、コア数が2倍になっても性能も2倍にはなりません。
見方を変えて言うと、クロック周波数とコア数を掛けた結果の値が同じであれば、性能も同じになるように見えますが、実際は同じにはなりません。
例えば、2コアのCPUのクロック周波数1GHzとコア数2を掛けた結果の値は、2GHz(コア2×1GHz)です。
1コアのCPUのクロック周波数2GHzとコア数1を掛けた結果の値は、2GHz(コア1×2GHz)です。
両者のCPUは性能が同じのように見えますが、実際は同じにはなりません。
簡単に言うと、コア数を2倍にすると処理速度が2倍になるわけではありません。
ソフトウェアが複数のコアを持つCPUに対応し、複数のコアを活用して処理速度が向上するように作られていなければ、コア数が増えても処理速度の向上は望めません。
人間の世界だと1つの仕事を複数の人にやってもらうためには仕事を分ける必要がありますが、CPUも同じように複数のコアに処理を実行してもらうためには処理が並列化されていなければなりません。
並列化されていない処理だと1つのコアで処理を行います。
それならば処理を並列化すればよいですが、並列化が簡単な処理も難しい処理も多いです。
ソフトウェアが複数のコアを持つCPUに対応するように作られており、大部分の処理が並列化されていれば、大幅な処理速度の向上が望めますが、一般的に何もかも複数のコアに分担させて処理させることは難しいので、コア数が2倍になったら処理速度も2倍とはならず、大体1.25倍〜1.5倍くらい速くなります。
ソフトウェアによっては2倍近くまで速くなりますが、大体平均すると高くても1.5倍程度です。
多すぎるコア数と性能向上効果
技術進歩によりコア数が増えており、個人向け家庭用CPUに限れば18コアのCPUがあります。(2018/03/01時点)
性能重視の場合、できるだけコア数が多い方がよさそうであり、予算が十分あれば18コアがよさそうです。
しかし、コア数が2倍になったら処理速度は大体1.25倍〜1.5倍くらいになりますが、コア数が多いほど処理速度が向上しにくくなります。
何か1つの仕事を複数の人が分担して行うとき、仕事内容によっては人数が多すぎると分担が難しくなり、無理に分担すると逆に仕事の効率が落ちます。
CPUでも同様にコア数が多いほど複数のコアに処理を分散させて効率よく並列化することが難しくなり、処理内容によっては並列化に限度がありコア数が増えても処理速度が変わらず、無理に並列化した結果、逆に処理速度が落ちることもあります。
性能重視の場合、できるだけコア数が多い方がよさそうであり、予算が十分あれば18コアがよさそうです。
しかし、コア数が2倍になったら処理速度は大体1.25倍〜1.5倍くらいになりますが、コア数が多いほど処理速度が向上しにくくなります。
何か1つの仕事を複数の人が分担して行うとき、仕事内容によっては人数が多すぎると分担が難しくなり、無理に分担すると逆に仕事の効率が落ちます。
CPUでも同様にコア数が多いほど複数のコアに処理を分散させて効率よく並列化することが難しくなり、処理内容によっては並列化に限度がありコア数が増えても処理速度が変わらず、無理に並列化した結果、逆に処理速度が落ちることもあります。
コアとスレッド
スレッドとは
スレッドとはコアで行う処理の単位です。コアが複数あればスレッドが複数あります。スレッド数が同じでもコア数が多い方が高性能
CPUが同期マルチスレッディング技術に対応だと、スレッド数がコア数の2倍です。例えばコア数が1のCPUが同期マルチスレッディング技術に対応だと、スレッド数が2です。同期マルチスレッディング技術に非対応のCPUと比較すると、スレッド数は同じだがコア数は違う場合があります。例えばコア数1スレッド数2のCPUと、コア数2スレッド数2のCPUがあるとします。前者は同期マルチスレッディング技術に対応、後者は非対応です。CPUの性能はコア数やスレッド数だけで決まらないが、コア数やスレッド数以外の仕様が同じであれば、スレッド数が同じでもコア数が多い方が高性能です。例にあげたCPUだと、コア数2スレッド数2の方が高性能です。CPUが同期マルチスレッディング技術に対応だと、1つのコアで2つの処理を同時に実行できますが、あくまでも擬似的に同時に実行なので、2つのコアそれぞれにて処理を実行し2つの処理を行う方が効率的です。繰り返しになりますが、CPUの性能はコア数やスレッド数だけで決まらないので、スレッド数が同じでもコア数が多い方が高性能とは限りません。
コアアンロック
コアアンロックとは
コアアンロックとは、無効化しているコアやキャッシュを有効化にする機能です。この機能にマザーボードが対応だと利用可能です。AMD CPU向け機能
コアアンロックは、過去に発売されたAMD CPU向けの機能です。Phenom II X2、Phenom II X3、Athlon II X3は、Phenom II X4、Athlon II X4と比べてコアやキャッシュの数が少ないです。製造で不良が発生し正常に動作しないコアやキャッシュを無効化したためです。コアアンロックにより無効化していたコアやキャッシュが正常に動作する場合があります。Phenom II X2はPhenom II X3かPhenom II X4として、Phenom II X3はPhenom II X4として、Athlon II X3はAthlon II X4として使用できる可能性があります。無効化のコアやキャッシュを有効化できる個体の存在理由
正常動作しないコアやキャッシュがある個体のみPhenom II X2、Phenom II X3、Athlon II X3に回すと十分な商品量にならず、正常動作するが無効化しているコアやキャッシュがある個体も回しているためです。後者の個体であればコアアンロックが成功します。前者の個体であれば失敗し有効化できない、有効化でき動作してもパソコンの電源が突然落ちたり正常に動作しない等のトラブルが発生する場合があります。出典
・CPUコア - 意味・説明・解説 : ASCII.jpデジタル用語辞典(2008/04/16更新記事)
キャンペーン情報(PR) |
---|
マウスコンピューター
・オータムセール 最大50,000円OFF (10月9日迄) DELL ・今週のおすすめ製品 対象製品が特別価格でお買い得 (キャンペーン実施中) パソコン工房 ・決算セール セール対象BTOパソコン最大55,000円OFF (10月1日迄) |