multi-threaded-application.out
PID 10000を使用してUbuntuで実行されるCPU集約型アプリケーションがあるとします。 Tidが10001、10002、10003、10004の4つのスレッドがあります。各スレッドが特定の時間にどのスレッドコアで予約されているかを知りたいです。
試しましたが、/proc/<pid>/tasks/<tid>/status
特定のスレッドの実行を担当するコアIDに関する情報が見つかりませんでした。
この質問はある程度関連しています。これで。
どんな助けでも大変感謝します。
ベストアンサー1
次のコマンドはトリックを実行します。
ps -mo pid,tid,%cpu,psr -p <main process ID>
オプションの説明:
-m
- プロセス後のスレッドの表示-o
- プロセスID、「ディスパッチ可能なエンティティを表す一意の番号」(スレッドID)、CPU使用率、およびプロセスが存在するプロセッサを表示するカスタムフォーマット今割り当て-p
特定のプロセスIDについて
上記はps
macOS / BSDではなくLinuxにのみ適用されます。