検索

14.5. taskset ユーティリティーを使用したプロセスの CPU へのバインド

download PDF

taskset ユーティリティーは、タスクのプロセス ID (PID) を使用して、その CPU アフィニティーを表示または設定します。このユーティリティーを使用して、選択した CPU アフィニティーでコマンドを実行できます。

アフィニティーを設定するには、CPU マスクを 10 進数または 16 進数にする必要があります。mask 引数は、変更されるコマンドまたは PID に対して有効な CPU コアを指定する bitmask です。

重要

taskset` ユーティリティーは NUMA (Non-Uniform Memory Access) システムで動作しますが、ユーザーが CPU および最も近い NUMA メモリーノードにスレッドをバインドすることはできません。このようなシステムでは、taskset は推奨されるツールではなく、その高度な機能を使用するには、代わりに numactl ユーティリティーを使用する必要があります。

詳細は、numactl(8) の man ページを参照してください。

手順

  • 必要なオプションおよび引数を指定して taskset を実行します。

    • CPU マスクの代わりに -c パラメーターを使用して CPU リストを指定できます。この例では、my_embedded_process は、CPU 0、4、7 - 11 でのみ実行するように指示されています。

      # taskset -c 0,4,7-11 /usr/local/bin/my_embedded_process

      ほとんどの場合、この呼び出しは便利です。

    • 現在実行されていないプロセスのアフィニティーを設定するには、taskset を使用して、CPU マスクとプロセスを指定します。

      この例では、my_embedded_process は、CPU 3 のみを使用するように指示されています (CPU マスクの 10 進数バージョンを使用)。

      # taskset 8 /usr/local/bin/my_embedded_process
    • ビットマスクで複数の CPU を指定できます。この例では、my_embedded_process は、プロセッサー 4、5、6、および 7 で実行するように指示されています (CPU マスクの 16 進数バージョンを使用)。

      # taskset 0xF0 /usr/local/bin/my_embedded_process
    • 変更するプロセスの CPU マスクと PID を指定して、-p (--pid) オプションを使用することにより、すでに実行されているプロセスの CPU アフィニティーを設定できます。この例では、PID が 7013 のプロセスは CPU 0 でのみ実行するように指示されています。

      # taskset -p 1 7013
注記

リスト表示されているオプションを組み合わせることができます。

関連情報

  • taskset(1) の man ページ
  • numactl(8) の man ページ
Red Hat logoGithubRedditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

Red Hat ドキュメントについて

Red Hat をお使いのお客様が、信頼できるコンテンツが含まれている製品やサービスを活用することで、イノベーションを行い、目標を達成できるようにします。

多様性を受け入れるオープンソースの強化

Red Hat では、コード、ドキュメント、Web プロパティーにおける配慮に欠ける用語の置き換えに取り組んでいます。このような変更は、段階的に実施される予定です。詳細情報: Red Hat ブログ.

会社概要

Red Hat は、企業がコアとなるデータセンターからネットワークエッジに至るまで、各種プラットフォームや環境全体で作業を簡素化できるように、強化されたソリューションを提供しています。

© 2024 Red Hat, Inc.