- ベストアンサー
2個のコア、4個のロジカル プロセッサの意味
- 「2個のコア、4個のロジカル プロセッサ」とは、Core i3-3120M CPUのスペックを表す言葉です。
- ロジカルプロセッサはスレッド数を指し、複数の命令を同時に処理できることを表します。
- マルチスレッドの場合、1クロックで複数の命令を処理できるため、効率的な処理が行われます。
- みんなの回答 (6)
- 専門家の回答
質問者が選んだベストアンサー
> ロジカルプロセッサとはスレッド数のこと はい。 この同時に複数のスレッドを動かす仕組みを一般的に「同時マルチスレッディング」と呼び、Intelは「ハイパースレッディング・テクノロジー」と呼びます。 > 最大で四つの機械語の命令を同時処理 > コアが二つなので二つの機械語命令 どちらも違います。もっと多いです。 まず、1コア1スレッドであっても、1つのプログラムの中の連続する命令を同時に実行することができます。(さらに言えば連続していない命令も順序を変えて同時に実行することすらあります(アウトオブオーダー実行)) これが同時マルチスレッディング対応で1コア2スレッドならば、「2つの別のプログラムの中の命令を」同時に実行することができます。
その他の回答 (5)
- 007MUKADE
- ベストアンサー率41% (286/694)
シニア向けパソコンの指導をしてます。 初級~中級クラスでの説明は・・・・・ 長机一杯のそろばんを CPU と思って貰い 2コア なら 2台 I5なら 3台 i7 なら 4台 そろばんを並べて 手分けして複数の計算を するとき・・・ 長いそろばんを一人で全ての桁を使う事はまず無いので 長いそろばんを 左右に分けて そろばん1台で 2つの計算を 同時に行ってます。 ・・・以上のように説明してます。 ご参考に・・・
お礼
ご回答、痛み入ります。 そろばんの例えは面白いですね! コアが2つ、でスレッドが4つがCore i3のスペックなのでそろばんが二つで二人が一つのそろばんを使って四人が計算している。 雰囲気はつかめますが何故、そんなことができているのか? 私が知りたいのは具体的な(M)CPUの動作レベルの話です。 専門用語も当方で調べますので、具体的にご存知でしたらご回答の程、宜しくお願いします。 ご回答ありがとうございました。
- bin-chan
- ベストアンサー率33% (1403/4213)
タスクマネージャ立ちあげて、パフォーマンスタブを開いてみる?
お礼
ご回答、痛み入ります。 OSの扱っているプロセス数やスレッド数を知るには便利ですね! (M)CPUのスペックのスレッド数(core i3はコア2、スレッド4)です。 (M)CPUレベルのお話をご存知でしたらご回答お願いします。 ご回答ありがとうございました。
- notnot
- ベストアンサー率47% (4900/10358)
>【質問1】 あなたがスレッド数という言葉をどういう意味で使っているかにもよりますが、多分あってるでしょう。 >【質問2】 プログラムカウンタが4つあって、OSがソフトウェア的に切り替えたりしなくても4つのプログラムが同時に実行できると言うことですが、実際には2コアしかないので、ある瞬間に実行しているのは2プログラムです。
お礼
ご回答、ありがとうございました。 >あなたがスレッド数という言葉をどういう意味で使っているかにもよりますが、多分あってるでしょう。 Core i3の添付リンク、CPUスペックのスレッド数です。 多分、同じように推測されたと思います。 後述の記載が迷わせたようで、すみません。 >実際には2コアしかないので、ある瞬間に実行しているのは2プログラムです。 調べた範囲ですがパイプラインなどを介して複数命令を1CPUクロック(内部クロック)で処理可能な感触です。 参考になる回答を賜り、ありがとうございました。
補足
現在、回答を理解するため色々調べております。 どこまで出来るか分かりませんが回答を噛み砕いて理解の上それぞれの回答にお礼したいと存じます。 少し、お礼が遅れるかもしれませんが取り急ぎ、回答3さんの補足にて皆様にお礼、申し上げます。 回答1~3の皆様、早速の回答ありがとうございました。
- neuron-x
- ベストアンサー率52% (139/266)
▼ロジカルプロセッサ数 ロジカルプロセッサ数は、OSから見た論理的なプロセッサ数の事を表しています。つまり、OSとして4つのプロセッサが搭載されていると認識していることになります。(スレッド数の事を指しているわけではありません) 物理的なプロセッサ数(CPUのコア数)は、2つです。CPUの中に、実際に2つのプロセッサが搭載されている状態です。 これに、Intelのハイパースレッディングと呼ばれる技術を使って、1つのプロセッサを、2つの(論理的な)プロセッサとして扱っています。 よって、物理的に2コアのCPUでハイパースレッディングを利用した場合、2×2で計4個のプロセッサがあると認識されます。 ▼マルチスレッドで動作時の状態 物理的には2つのプロセッサしか無いので、実際には2つのプロセッサを使って、「うまい具合に4プロセッサで動いているように」してあるだけです。 1プロセッサには複数のパイプラインが存在(例えば整数演算のパイプラインと、浮動小数点演算のパイプライン…というような感じで)しているため、実際に整数演算を処理している間は、浮動小数点演算のパイプラインが空いている状態になります。このような部分のスケジュールなどを最適化して、整数演算と浮動小数点演算を同時に(別のパイプライン上で)処理することで、複数の命令を同時に処理できるようになっています。 機械語命令は1クロックで終了する物は少ない(たいていは数~数十クロック必要)ですが、パイプラインが分かれていれば1クロックで複数命令の実行を同時に行えるはずです。 そのため、物理的なプロセッサ数(コア数)が2つであったとしても、各プロセッサ単位に複数のパイプラインが流れているので、1クロックにおいても2つ以上の機械語命令を平行して進めることが可能だと思いますよ。 ちなみに、ハイパースレッディングを使って仮想的にコア数を増やしたとしても、常に全てのコアが有効に使われるわけではありません。実行する処理の内容によっては並列実行が困難で、一部のプロセッサしか動作していない…ということも良くあります。 CPUの専門家では無いので、詳細な部分までは分かりませんが、ご参考になれば。
お礼
ご回答ありがとうございます。 >スレッド数の事を指しているわけではありません CPUのスペックのスレッド数のことなのですが「ハイパースレッディング」などで調べた範囲で1コア、2スレッドの場合(CPU)からバスが2系統あり、OSから見るとCPUが二つあると認識する との記載がありました。 博学でいらっしゃるので勘違いか、それとも私の調べ方が悪かったかな? と思っています。 バスだけでなくALUなども複数持つものもあるようですが、参考までにcore i3を調べてみましたがその辺までは今のところ確認できませんでした。 理論的には複数、CPUのスレッド数だけALUやレジスタ関係を持っていないとうまく動作しないと思います。 >複数の命令を同時に処理できるようになっています。 >各プロセッサ単位に複数のパイプラインが流れているので、1クロックにおいても2つ以上の機械語命令を平行して進めることが可能だと思いますよ。 私の質問の二つ目に相当する回答ですがこの辺を今、理解しようと思って調べています。 例えば、スレッド1の処理結果をパイプラインで受けてスレッド2が処理をするということを1CPUクロック(内部クロック)で実行してしまう。ということのようですね! その辺は「ハイパースレッディング」や「命令パイプライン」少し外れるかもしれませんが「スーパースカラ」などを検索して今、調査中、勉強中です。 随分、CPUも進歩していてびっくりです。 大変、勉強になるご回答を賜り、感謝いたします。 重ねて、ありがとうございました。
- nora-sky
- ベストアンサー率58% (24/41)
>ロジカルプロセッサという言葉の検索でWeb上であまりいい処にヒットせず、調べがつきませんでした。 ハイパースレッディング・テクノロジで検索して調べてください。
お礼
ご回答、ありがとうございます。 早々にご回答を賜ったにもかかわらず、お礼が遅れすみません。 ご指摘の通り「ハイパースレッディング・テクノロジで検索」して、色々読んでみました。 とても勉強になりました。 重ねて、ありがとうございました。
お礼
ご回答ありがとうございます。 既出の回答で「ハイパースレッディング・テクノロジー」などを調べて改めて拝見させて頂くと調べた範囲で私の疑問に対し、一番ストレートなご回答のように思います。 新しい、用語「アウトオブオーダー」もとても勉強になりました。 とても、勉強になる回答を賜り感謝します。 重ねて、ありがとうございました。
補足
皆さま、ご回答有難うございました。 現時点で私が調べた限り、二つの疑問に対して一番的確なご回答だと判断しこの回答をベストアンサーとさせていただきます。 なお、現時点での別サイトを読んだりして理解した私なりの判断なので間違った理解があるかもしれませんがご容赦ください。 時間を見てもっと、勉強したいと思います。 重ねて、皆さま、ご回答有難うございました。