ホームページ  >  記事  >  運用・保守  >  プロセッサーのマルチスレッドは何に役立ちますか?

プロセッサーのマルチスレッドは何に役立ちますか?

anonymity
anonymityオリジナル
2019-05-06 17:15:4029706ブラウズ

プロセッサ マルチスレッドの役割: 高速コンピューティング コアで処理するデータをより多く準備し、コンピューティング コアのアイドル時間を短縮できます。負荷分散の問題を解決し、 CPU リソースと CPU 使用率の向上。複数の処理を相互に干渉することなく同時に完了できるため、多数の IO 操作や状況の処理に必要な時間が短縮されます。

プロセッサーのマルチスレッドは何に役立ちますか?

#プロセッサとは何ですか?

中央処理装置 (CPU) は、コンピュータ システムのコンピューティングおよび制御コアとして、情報処理およびプログラム実行の最終実行ユニットです。 CPUは誕生以来、論理構造、動作効率、機能拡張において大きな進歩を遂げてきました。

中央処理装置 (CPU) は、電子コンピュータの主要なデバイスの 1 つであり、コンピュータの核となるコンポーネントです。その機能は主に、コンピュータの命令を解釈し、コンピュータ ソフトウェアでデータを処理することです。 CPU は、命令を読み取り、デコードし、実行するコンピューターの中核コンポーネントです。中央処理装置は主にコントローラと演算装置の 2 つの部分で構成され、これらの部分にはキャッシュ メモリとそれらの間の接続を実現するデータおよび制御バスも含まれます。電子コンピュータの 3 つのコア コンポーネントは、CPU、内部メモリ、および入出力デバイスです。中央処理装置の主な機能は、命令の処理、演算の実行、時間の制御、およびデータの処理です。

コンピュータ アーキテクチャにおいて、CPU は、コンピュータのすべてのハードウェア リソース (メモリ、入出力ユニットなど) を制御および割り当て、一般的な操作を実行するコア ハードウェア ユニットです。 CPU はコンピュータの計算および制御のコアです。コンピュータ システム内のすべてのソフトウェア層の動作は、最終的には命令セットを通じて CPU 動作にマッピングされます。

中央処理装置は、主に演算装置(Arithmetic Logic Unit、ALU、Arithmetic Logic Unit)とキャッシュメモリ(Cache)とバス(Data)、それらの間の接続を実現する制御とステータスで構成されます。バス)。内部メモリ (Memory) および入出力 (I/O) デバイスとともに、電子コンピュータの 3 つのコア コンポーネントとして総称されます。

プロセッサーのマルチスレッドは何に役立ちますか?

今日のマルチコアおよびマルチスレッドのコンピュータ プロセッサでは、プロセス内の複数のスレッドはどのように実行されるのでしょうか?という疑問が常にありました。 (少量のリソースがシステムと JVM によって割り当てられ、最終的には時間スケジューリングのために順番に切り替えられますか? それとも、これらのスレッドは同時に実行するために別のコアに割り当てられますか?)

プロセッサ CPU ハンドル スレッド?

CPU はタイム スライス ローテーションと同様のメカニズムを使用します。つまり、プロセスが同時に実行リクエストを行うと、他のプロセスはその完了を待ってから CPU が他のリクエストを処理することになります。 。他のプロセスはキューで待機していることに相当します。もちろん、特定のプロセスが無制限に実行されることを避けるために、一般に時間は制限されており、タイムアウトになった場合、CPU は特定のスレッド スケジューリング アルゴリズムに従ってスレッドを切り替えます。これは、同時に実行されている多くのスレッドとして見ることができます。実際、ある時点で実行されているスレッドは 1 つだけです。

マルチコアの場合、各コアの原理は同じです。ただし、2 つのコアはシステムを通じてリソースを割り当て、異なるプロセスを同時に実行できますが、これはより複雑です。

各プロセスには、CPU によって割り当てられたプロセス番号があります。混乱を避ける。

CPU スレッドを増やすことの利点は何ですか。

理論的には、1 つのコアは 1 つのスレッドにのみ対応します。 Intel のハイパースレッディング テクノロジは、アイドル状態の CPU リソースを使用して仮想スレッドを統合しますが、コンピューティング パフォーマンスの点では、物理コアの実際のスレッドほど優れていません。ただし、プロセッサの並列処理能力をある程度向上させることができます。アウトオブオーダー実行と同様、ハイパースレッディングもプロセッサの使用効率を向上させるソリューションです。

CPU のマルチスレッド テクノロジは、高速コンピューティング コア用に処理するデータをより多く準備し、コンピューティング コアのアイドル時間を短縮し、負荷分散の問題を解決し、CPU リソースを最大限に活用し、 CPU 使用率が向上します。マルチスレッドを使用すると、複数の処理を互いに干渉することなく同時に完了できるため、多数の IO 操作や状況の処理にかかる時間が短縮されます。

あなたが挙げた例を見てみましょう。コアがタスク A を処理するとき、コア全体が作業に関与しているわけではなく、まだ大量のアイドル状態のリソースが存在し、これらのリソースを使用して B、C、D の 1 つ以上を前処理できます。ただし、ハイパースレッディング テクノロジの大きな問題は、メインスレッドとの競合です。たとえば、仮想スレッドと物理的な実際のスレッドの両方が特定のキャッシュ ユニットを呼び出す必要がある場合、仮想スレッドはその作業を一時停止しますが、

ただし、ユニットが物理スレッドよりも前に仮想スレッドによって呼び出された場合は、 、その場合、仮想スレッドは物理メインスレッドの作業に影響を与え、実際には実行効率を低下させます。現世代のハイパー スレッディング テクノロジでは、この問題がさらに改善されているため、物理スレッドと比較することはできませんが、その効果は依然として良好です。 I3 などの現在のデュアルコア、4 スレッド プロセッサは、並列コンピューティングにおいて物理的な 3 コアを超え、エントリーレベルの 4 コアと同等の性能を備えており、すでに非常に優れています。

以上がプロセッサーのマルチスレッドは何に役立ちますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。