マルチスレッドアプリケーション

最終更新日 2024年01月10日

マルチスレッドアプリケーションとは

基礎

マルチスレッドアプリケーションとは、1つのプロセスをスレッド単位に分割して並列処理できるアプリケーションです。

大雑把なイメージですが、1+1,2+2,3+3、以上の足し算を行う1つのプロセスがあるとします。それぞれの足し算を並列して行うために分割した単位がスレッドです。1+1が1つのスレッド、2+2も1つのスレッド、3+3も1つのスレッドです。

スレッド

スレッドとは、OSが1つのプロセスを並列処理するために、プロセスを分割した処理単位です。厳密には並列処理するかどうかに関係なく、プロセスをスレッド単位に分割します。

プロセス

プロセスとは、CPUが処理するプログラムの実行単位です。プログラムをプロセス単位に分けてCPUが順次実行します。

プログラム

プログラムとは、CPUが処理する内容が書いてあるデータです。アプリケーションにプログラムが含まれています。

シングルスレッドアプリケーション

並列処理するかどうかに関係なく1つのプロセスをスレッド単位に分割しており、スレッド単位に分割しても並列処理できないアプリケーションをシングルスレッドアプリケーションと呼びます。

マルチスレッドアプリケーションとハイパースレッディング

マルチスレッドアプリケーションならハイパースレッディング効果あり

ハイパースレッディングとは、1つのコアを論理的に2つのコアとして動作させる技術です。別の言い方だと、1つのコアで2つのスレッドを並列処理させる技術です。ハイパースレッディングの効果がマルチスレッドアプリケーションではありますが、シングルスレッドアプリケーションではありません。

マルチスレッドアプリケーションでも少数スレッドだと低効果

マルチスレッドアプリケーションでもスレッド数が少ないとハイパースレッディングの効果が低いです。スレッド数が多いほどハイパースレッディングの効果が高くなります。

シングルスレッドアプリケーションでも複数実行ならハイパースレッディング効果あり

シングルスレッドアプリケーションでも2つ以上を同時に実行する場合、各シングルスレッドアプリケーションのスレッドを並列処理するので、ハイパースレッディングの効果があります。

出典

ASCII.jp:何もかも変わった新CPU!? Core i7 10の疑問 (2/3)(2008/11/22更新記事)
図解で納得!最新CPUはココがすごい(4ページ目) | 日経クロステック(xTECH)(2010/07/06公開記事)


キャンペーン情報(PR)
マウスコンピューター
・初夏セール
最大45,000円OFF!!
(5月22日迄)
DELL
・今週のおすすめ製品
対象製品が最大15%OFF
(キャンペーン実施中)
パソコン工房
・5月の超おすすめ!ピックアップ
ゲーミングPCやクリエイター向けパソコン等を用意
(キャンペーン実施中)


マルチスレッドアプリケーション



デル株式会社