smtctl コマンド
目的
smtctl コマンドは、プロセッサー同時マルチスレッド化モードの使用可能化および使用不可化を制御します。
構文
smtctl [ -m off | on [ -w boot | now ]]
smtctl [-t #SMT [-w boot | now ]]
smtctl [-m suspend [-w boot ]]
smtctl [ -m limit [-t #SMT ][-w boot ]]
smtctl [ -m recommended [ -w boot | now ]]
説明
このコマンドは、同時マルチスレッド化サポートのあるプロセッサーの使用状況を制御するために、特権ユーザーおよび特権アプリケーションに提供されます。 同時マルチスレッド化モードでは、プロセッサーに命令レベルでスレッド・レベルの並列性を持たせることができます。 このモードは、即時に、または次のシステム・ブート時に、すべてのプロセッサーを使用可能または使用不可にすることができます。 このコマンドは同時マルチスレッド化オプションを制御します。
物理プロセッサー・コアの個々の同時マルチスレッド化 (SMT) スレッドは、AIX® によって、独立した論理プロセッサーとして取り扱われます。 AIX オペレーティング・システムは、AIX に割り当てられるすべての物理プロセッサー・コアにわたる対称性を維持するために、割り当てられた物理プロセッサー・コアと SMT モードの組み合わせを制限します。この制限があるため、論理プロセッサーの数は、AIX 7.1 の場合は 1024 以下に、AIX 6.1 の場合は 256 以下になります。
- スレッドの数
- P8 論理区画 (LPAR) をブートする場合、デフォルトの SMT スレッド数は 4 です。デフォルトの SMT スレッド数を動的に増やすには、以下のように入力します。
SMT-8 への変更はすぐに有効になります。リブートは不要です。リブート後も設定が持続するようにするには、bosboot コマンドを使用してブート・イメージを再構築する必要があります。デフォルトの SMT-4 は、既存のアプリケーションが 4 個を超えるスレッド用に設計またはコンパイルされていない場合に、パフォーマンスを上げるためのものです。smtctl -m on smtctl -t 8
- コアの数
- 1 つの LPAR に 128 個を超えるコアを割り振ると、デフォルトによって 128 個のコアが使用されます。これは、SMT-8 が使用可能にされた場合に、論理プロセッサー数が最大 1024 という AIX の制限を超えないようにするためです (128 コア * SMT8 = 合計 1024)。LPAR で 128 個を超えるコアを使用するには、以下の一連の AIX コマンドを実行して、コアごとに使用可能な SMT スレッドの数に制限を設定する必要があります。
リブート時に、AIX は、最大 256 個のコアを使用できるようにファームウェアとネゴシエーションします。これは、4 SMT スレッドという制限が指定されているため、1024 個のプロセッサーというオペレーティング・システムの制限を超えることはないためです。前に述べたように、smtctl コマンドを実行すると 256 コアを超えることができますが、スレッドの制限は 4 ではなく、2 になります。以下のコマンドでは、SMT 機能を一時停止して追加コアを許可します。smtctl -m limit -t 4 bosboot -a shutdown -Fr
smtctl -m suspend bosboot -a shutdown -Fr
フラグ
項目 | 説明 |
---|---|
-m off | 同時マルチスレッド化 モードを disabled に設定します。このオプションを -t フラグと一緒に使用することはできません。
|
-m on | 同時マルチスレッド化 モードを enabled に設定します。-m フラグを使用すると、プロセッサーごとにサポートされる最大数のスレッドが使用可能になります。
このオプションを -t フラグと一緒に使用することはできません。
|
-t #SMT | プロセッサーごとの同時スレッド数を設定します。この値を 1 に設定して同時マルチスレッド化を使用不可にすることができます。 2Way 同時マルチスレッド化をサポートするシステムの場合はこの値を 2 に設定し、4Way 同時 マルチスレッド化をサポートするシステムの場合は この値を 4 に設定することができます。 |
-w boot | 次のシステム・リブートの前に bosboot コマンドを実行する場合、次回とそれ以降のリブート時に 同時マルチスレッド化モードの変更を有効にします。 |
-w now | 同時マルチスレッド化モードの変更を即時に有効にしますが、リブート以後は持続しません。
-w boot オプションまたは -w now オプションが指定された場合、モード変更はすぐに行われ、次のシステム・リブートの前に bosboot コマンドが実行された場合、後続のリブート以後も持続します。 |
-m limit | 同時マルチスレッド化のスレッドの数を 2 つに制限するか、-t フラグが使用されている場合は指定の値に制限して、より多くのプロセッサー・ノード (使用可能な場合) を次回のリブート時に有効にします (ブート・イメージを再構築するために bosboot を実行する必要があります)。この制限は実行時には動的に変更することはできず、作動状態を変更するためにリブートする必要があります。 |
-m suspend | 同時マルチスレッド化機能を中断し、より多くのプロセッサー・ノード (使用可能な場合) を次回のリブート時に有効にします (ブート・イメージを再構築するために bosboot を実行する必要があります)。 この制限は実行時には動的に変更することはできず、作動状態を変更するためにリブートする必要があります。 |
-m recommended | スレッドの値を、基本物理プロセッサー・タイプに基づく、最も一般的なタイプのワークロードのベスト・パフォーマンスを実現する値に設定します。 この設定は、すぐに適用されます。 新しい値を次のブート時に使用し始めるよう指定することもできます。 |
項目 | 説明 |
---|---|
SMT Capability | 物理または仮想プロセッサーが同時マルチスレッド化可能であることを示すインジケーター。 |
SMT Mode | disabled または enabled の現行ランタイム 同時マルチスレッド化 モード。 |
SMT Boot Mode | disabled または enabled の現行ブート時 同時マルチスレッド化 モード。 |
SMT Threads | 物理または仮想プロセッサー当たりの同時マルチスレッド化スレッドの数。 |
SMT Bound | 同時マルチスレッド化スレッドが同じ物理または仮想プロセッサーに結合されていることを示すインジケーター。 |
SMT Thread Capability | システムでサポートされた物理プロセッサーまたは仮想プロセッサーごとの同時マルチスレッド化の 最大スレッド数。 |
終了状況
項目 | 説明 |
---|---|
0 | 要求された操作を正常に完了しました。 |
>0 | エラーが発生しました。 |
セキュリティー
例
- 現在のブート・サイクルに同時マルチスレッド化を使用可能にするには、次のように入力します。
システムは、以下のようなメッセージを表示します。smtctl -m on -w now
smtctl: SMT is now enabled.
- 4Way までサポートするシステム上で 2Way 同時マルチスレッド化を使用可能にするには、
次のように入力します。
システムは、以下のようなメッセージを表示します。smtctl -t 2 -w now
smtctl: SMT is now enabled.
- 現在の同時マルチスレッド化モード設定値とプロセッサー情報を表示するには、次のように入力します。
システムは、以下のようなメッセージを表示します。smtctl
This system is SMT capable. This system supports up to 4 SMT threads per processor SMT is currently enabled. SMT boot mode is set to disabled. proc0 has 2 SMT threads Bind processor 0 is bound with proc0 Bind processor 1 is bound with proc0 proc2 has 2 SMT threads Bind processor 2 is bound with proc2 Bind processor 3 is bound with proc2
- 現在のブート・サイクルおよび以降のすべてのブートに同時マルチスレッド化を使用不可にするには、次のように入力します。
システムは、以下のようなメッセージを表示します。smtctl -m off
現在のブート・サイクルおよび以降のブートの同時マルチスレッド化を使用不可にする もう 1 つの方法があります。 次のように入力します。smtctl: SMT is now disabled. It will persist across reboots if you run the bosboot command before the next reboot.
smtctl -t 1
注: ブート・イメージは、次回のリブートより前に bosboot コマンドで再作成する必要があります。
位置
/usr/sbin/smtctl
ファイル
項目 | 説明 |
---|---|
/usr/sbin/smtctl | smtctl コマンドが入っています。 |