Power7のマルチスレッディング「SMT」は4スレッド!

power7-100

Power7のマルチスレッディング機構

Power7のCPUにはSMT(Simultaneous Multithreading)という機構を実装しています。1つのCPUで複数スレッドを実行する機構ですが、Power7は4つのスレッドを同時に実行することができます。

CPUの中身は複数モジュールの集合体なのですが、処理しているときは実は全てのモジュールを使用しているわけではなく、必要な部分だけが使われています。つまり、1スレッドを処理しているときに、空きモジュールが存在しているわけです。

この空きモジュールを有効に使って、スレッドをマルチで処理する技術が「SMT」です。

Power6までは同時2スレッドだったのですが、Power7からは同時4スレッドになりました。

WS000024

このSMTですが、AIXで有効・無効を設定することができます。
ただ、無効にするメリットは何もないと思います。



 

 SMTをAIXで確認する方法

smtctlというコマンドで確認できます。

[root@server01:/] smtctl

このシステムは SMT 対応です。
このシステムはプロセッサーにつき、最大 4 件の SMT スレッドをサポートします。
現在、SMT は使用可能です。
SMT ブート・モードが設定されていません。
SMT スレッドは、同じ物理プロセッサーにバインドされます。

proc0 には 4 個の SMT スレッドがあります。
バインド・プロセッサー 0 は proc0 でバインドされます。
バインド・プロセッサー 1 は proc0 でバインドされます。
バインド・プロセッサー 2 は proc0 でバインドされます。
バインド・プロセッサー 3 は proc0 でバインドされます。

proc4 には 4 個の SMT スレッドがあります。
バインド・プロセッサー 4 は proc4 でバインドされます。
バインド・プロセッサー 5 は proc4 でバインドされます。
バインド・プロセッサー 6 は proc4 でバインドされます。
バインド・プロセッサー 7 は proc4 でバインドされます。

[root@server01:/]

 

物理CPUコアは「proc0」と「proc4」で、CPUは2コアです。
SMTが有効なので、1コアで4スレッドで2コアなので、AIXはCPUを8コアと認識していることになります。

Power7は高速な上にSMTが4なので、とても高性能なCPUです。CPU負荷が高い処理では、かなりのパフォーマンス向上が期待できます。

 

ちなみに、SMTを無効化する場合のコマンドはこれです。

 
$ smtctl -m 'off' -w now
 

 



 

 


サブコンテンツ

このページの先頭へ