タスクマネージャーは地味な存在だが、Windows 8で大きく改良されたユーティリティーだ。今回はマルチコアプロセッサーに対する、タスクマネージャーの変更点について解説しよう。
Windowsでのマルチプロセッサーの
基本をおさらい
タスクマネージャーの変更点について説明する前に、Windowsでのマルチプロセッサーの扱いについて説明する必要があるだろう。少し長いがお付き合いいただきたい。まずWindowsはマルチプロセッサー(マルチコア)システムについて、以下のような区分けで考えている。
パッケージの中↑ | 論理プロセッサー(LP) |
---|---|
コア(物理プロセッサー) | |
ソケット(プロセッサーパッケージ) | |
NUMAノード | |
パッケージの外↓ | プロセッサーグループ |
いわゆる物理的なCPU(プロセッサー)に当たるのが「ソケット」であり、その下にコア(物理プロセッサー)と論理プロセッサーがある(図1)。論理プロセッサーは、インテルのハイパースレッディング・テクノロジー(以下SMT)のように、ひとつの物理プロセッサーが実現する複数のプロセッサーを指す。例えばPentium IIIのようなシングルスレッド・シングルコアのプロセッサーならば、「1LPで1コア、1ソケット」。現代のCore i7-3770ならば、「8LPで4コア、1ソケット」になるわけだ。
また最近のCPUは、パッケージ内にメモリーコントローラーを内蔵するのが当たり前になっている。複数のソケットを使うマルチプロセッサーシステムの場合、それぞれのソケットに接続されたメモリーを合わせて、ひとつの物理メモリー空間を作る。そうなると、自分以外のソケットに接続されているメモリーにアクセスするには、ソケット間で通信する必要があるので、自分に接続されているメモリーに比べるとアクセスが遅くなる。こうした仕組みを「Non Uniform Memory Access」(NUMA)という。つまり物理メモリー空間の中に、アクセスが高速な場所とそうでない場所ができるため、メモリーの使い方を工夫する必要があるということだ。
さらにプロセッサーのアーキテクチャーによっては、外付けのチップセット(グルー・ロジックと呼ぶ論理回路)なしに接続できるソケット数の限界は異なる。これを超えるソケット数を実現しようとすると、そのためのチップセットが必要になるので、そこを経由することでさらに遅れが出る。
CPU同士が直接通信できるソケット同士を、まとめて「NUMAノード」と呼ぶ。NUMAノード内のアクセスの場合、他のソケットへのアクセスにはもちろん時間がかかるが、それでも比較的短い時間で済む。しかしNUMAノード間のアクセスになると、お互いのNUMAノードが別々のタイミングで動作しているうえ、チップセットを挟むのでさらに時間がかかる。なお、LPやコア、ソケットはどのプロセッサーにも存在するが、NUMAノードは存在しないシステムもある。店頭販売されているコンシューマー向けパソコンには、もちろん存在しない。
この連載の記事
-
第34回
PC
Windows 8の狙いは、UIの変化よりもAPIの変化が本質 -
第33回
PC
Windows 8が動作しなくなった? 新しくなった修復機能 -
第32回
PC
Windows 8でIMEに求められる新しい要素とはなにか? -
第31回
PC
Windows 8の無線LANをコマンドラインで細かく制御 -
第30回
PC
Windows 8をマウスで使いやすくするレジストリの小技 -
第29回
PC
周辺機器・アプリがWindows 8/RTで動くか確認する方法 -
第28回
PC
Windows 8のキーボードショートカットを全公開 -
第27回
PC
Windows 8が使いにくい? マウスを変えると印象も変わる -
第26回
PC
実はNFCに対応しているWindows 8 ただしアプリは不足 -
第25回
PC
実は扱いがまったく異なるWindows 8でのタッチパネル -
第24回
PC
Surfaceから見えるWindows RTの実像と、将来PCへの影響 - この連載の一覧へ