Actions
機能 #3713
closedCPU affinityを設定する機能を追加する。
Start date:
11/21/2016
Due date:
% Done:
100%
Estimated time:
Updated by katami over 7 years ago
実装¶
インターフェース(ICPUAffinity)を準備して、その実装クラスとして、Linux用クラスとWindows用クラスを作成。
システムプロパティ(System.getProperty) から OS の種類(os.name)を取得して、OSにあったクラスのインスタンスを生成する。
Linux用実装クラス¶
Java Native Access(JNA) を使って libc の関数をコール。
Windows用実装クラス¶
Java Native Access(JNA) を使って Kernel32 の関数をコール。
動作確認¶
- rtc.conf に以下を追加
manager.cpu_affinity: 1
- component.conf に以下を追加
exec_cxt.periodic.cpu_affinity: 1
Linux用実装クラス¶
- topコマンドで確認
$ top -p 5544
[f]でフィールドマネージャで「P = Last Used Cpu」を有効にする。
Windows用実装クラス¶
- タスクマネージャーでプロセスを確認
[詳細]タブで PIDによりプロセスを探して、右クリック。
「関係の設定」を開いて指定のCPUだけにチェックが入っていることを確認。
- スレッドはどうやって確認するか?
Updated by katami over 7 years ago
- Status changed from 新規 to 担当
- % Done changed from 80 to 100
Actions