ach5

マルチコアプロセッサ:より常により良いか? 2022

ach5

単一のプロセッサにいくつかのコアを追加すると、現代のオペレーティングシステムのマルチタスクの性質のおかげで重要な利点を提供します。しかし、いくつかの目的のために、それらを追加するコストに対して、コア数が増加することに対して、実際上の限界がある。

マルチコア技術の進歩

2000年代初期以来,マルチコアプロセッサはパーソナルコンピュータで利用可能である。マルチコアの設計は、プロセッサの問題に対処し、クロックの速度とどのように効果的に冷却することができますし、まだ精度を維持するための物理的な限界の天井を打つ。単一のプロセッサチップ上の余分なコアに移動することによって、製造業者は効果的にCPUによって処理できるデータ量を乗算することによってクロック速度で問題を回避しました。

彼らが最初にリリースされたとき、メーカーはただ一つのCPUでちょうど2つの芯を提供しました、しかし、現在、4、6と10さえのオプションがあります。コアの追加に加えて、インテルのハイパースレッドのような同時マルチスレッド技術は、オペレーティングシステムが見ている仮想コアを2倍にすることができます。

プロセスとスレッド

プロセスは、コンピュータ上で実行されるプログラムのような特定のタスクです。プロセスは1つ以上のスレッドからなる。

スレッドは、単にコンピュータ上のプロセッサを通過するプログラムからのデータの単一のストリームです。各アプリケーションは、どのように実行しているかに応じて独自の1つまたは複数のスレッドを生成します。マルチタスクなしで、単一のコア・プロセッサは一度に単一のねじを扱うことができるだけである。

複数のコアを持つ利点は、システムが同時に複数のスレッドを処理できることです。各コアは、データの別のストリームを処理することができます。このアーキテクチャは、同時実行アプリケーションを実行しているシステムのパフォーマンスを大いに向上させる。サーバーはある時点で多くの同時アプリケーションを実行する傾向があるので、テクノロジーは元々エンタープライズ顧客のために開発されました-しかし、パーソナルコンピュータがより複雑でマルチタスクを増やしたので、彼らは余分なコアを持つことからあまりに利益を得ました。

しかし、すべてのプロセスは、1つのコアだけを占有できるプライマリスレッドによって管理されます。このように、ゲームまたはビデオレンダラのようなプログラムの相対速度は、主スレッドが消費するコアの能力に制限される。プライマリスレッドは、セカンダリスレッドを他のコアに絶対的に委任することができますが、ゲームがコアを2倍にすると2倍速くなりません。したがって、ゲームが完全に最大の1つのコア(プライマリスレッド)に対しては珍しいことではありませんが、二次スレッド用の他のコアの部分的な利用のみを参照してください。コアダブリングの量は、主コアがアプリケーションのレートリミッターであるという事実を回避し、このアーキテクチャに敏感であるアプリは、それ以外のアプリケーションよりも実行されます。

ソフトウェア依存

マルチコアプロセッサの概念は魅力的に聞こえるが、この技術には大きな注意がある。マルチプロセッサの真の利点を享受するためには、コンピュータ上で実行されているソフトウェアをマルチスレッドをサポートするように書かなければならない。そのような特徴をサポートしているソフトウェアがなければ、スレッドは主にコンピュータの全体的な効率を分解している単一のコアを通して実行されるでしょう。結局、それがクワッドコアプロセッサーでただ一つの中心で動くことができるならば、それはより高いベースクロック速度でデュアルコア・プロセッサーでそれを走らせるために実際により速いかもしれません。

主要な現在のオペレーティングシステムのすべては、マルチスレッド機能をサポートします。しかし、マルチスレッドをアプリケーションソフトウェアに書き込む必要があります。消費者ソフトウェアのマルチスレッドのサポートは長年にわたって改善されてきたが、多くの単純なプログラムでは、マルチスレッドサポートはまだソフトウェア構築の複雑さのために実装されていない。たとえば、メールプログラムやWebブラウザは、マルチスレッドの巨大な利点が表示されない可能性がありますグラフィックスやビデオ編集プログラムは、コンピュータが複雑な計算を処理します。

この傾向を説明する良い例は典型的なコンピュータゲームを見ることです。ほとんどのゲームは、ゲームで何が起こっているかを表示するレンダリングエンジンのいくつかの形式が必要です。また、人工知能のいくつかの並べ替えのイベントやゲームの文字を制御します。単一のコアでは、両方のタスクは、それらの間の切り替えによって実行されます。このアプローチは効率的ではない。システムがマルチプルプロセッサを特徴とする場合、レンダリングおよびAIは各々マルチコアプロセッサのための別々のコアに理想的な状況に動くことができた。

8 & Gt ;4 & Gt ;2 .

与えられたコンピュータのバイヤーに対する答えが彼または彼女が通常使用するソフトウェアに依存すると考えると、2つのコアを越えて行くことは混合利益を提示する。例えば、多くの古典的なゲームは、まだ2と4つのコアの間にほとんどパフォーマンス差を提供しません。伝えられるところでは8つの芯を必要とするか、支持する現代のゲームさえ、より高いベースクロック速度で6つのコア・マシンよりよく実行しないかもしれません。

他方、個々のフレーム・レンダリングが異なるコアに通過されることができて、それからソフトウェアによって、単一のストリームに照合されることができるので、ビデオをtranscodeするビデオ符号化プログラムはおそらく非常に利点を見る。このように、8つの芯を持つことは、4を持つよりさらに有益です。本質的に、主なスレッドは比較的豊富なリソースを必要としません代わりに、プロセッサのコアを最大にする娘スレッドにハードワークをファームアウトすることができます。

クロック速度

一般に、より高いクロック速度は、より速いプロセッサを意味する。プロセッサが余分なコアのおかげで複数のデータスレッドをクランチしますが、それらのコアの各々が熱的な制限のためにより低速で稼働しているので、あなたが複数のコアに関連した速度を考慮するとき、クロック速度はより神経質になります。

例えば、デュアルコアプロセッサは、各プロセッサの3.5 GHzのベースクロック速度をサポートしてもよいが、クワッドコアプロセッサは3.0 GHzでしか実行できない。ちょうどそれらの各々の上の一つの中心を見るだけで、デュアルコア・プロセッサーはクワッド・コアより14パーセント速いです。したがって、シングルスレッドのみのプログラムがある場合、デュアルコアプロセッサは実際には効率的です。それから、あなたのソフトウェアがすべての4つのプロセッサーを使うことができるならば、Quad Coreプロセッサは実際にそのデュアルコア・プロセッサーよりおよそ70パーセント速くなります。

結論

ほとんどの場合、コア数の多いプロセッサを持つことは一般的にあなたのソフトウェアと典型的なユースケースがそれをサポートしている場合より良いです。大部分のために、デュアルコアまたはクワッドコアプロセッサは、基本的なコンピュータユーザーのための十分な電源以上である。消費者の大多数は、4つのプロセッサコアを超えて行くことによって、不当なソフトウェアがそれを利用しないので、有意義な利益を見ることができない。高コアカウントプロセッサの最良のユースケースは、デスクトップビデオ編集、ハイエンドゲームのいくつかのフォーム、または複雑な科学と数学プログラムなどの複雑なタスクを実行するマシンに関するものです。

PCのどのくらいの速さについての私たちの考えをチェックする必要がありますか?どのようなプロセッサの最良のアイデアをあなたのコンピューティングのニーズに一致するように取得します。