63 lines
3.9 KiB
Plaintext
63 lines
3.9 KiB
Plaintext
【Issue#1001 動作確認】
|
|
□ テスト内容
|
|
1. 既存のperf_event_open機能に影響がないことを確認
|
|
CT_001: 単一イベント種別での計測
|
|
1. perf_event_open を1回呼び出し、1つのカウンタの設定とfdの取得を行う
|
|
2. PERF_EVENT_IOC_RESET を取得したfdにioctlで送信し、
|
|
カウンタの値が0になっていることを確認する
|
|
3. PERF_EVENT_IOC_ENABLE を取得したfdにioctlで送信し、計測を開始する
|
|
4. 計測対象プログラム(calc_task(), memory_task())を実行する
|
|
5. PERF_EVENT_IOC_DISABLE を取得したfdにioctlで送信し、計測を終了する
|
|
6. 計測終了時のカウンタの値を取得し、表示する
|
|
7. カウンタが停止していることを確認するため、計測対象プログラムを再び実行する
|
|
8. カウンタの値が前回取得時から変化していないことを確認する
|
|
|
|
CT_002: 複数のイベント種別での計測
|
|
1. perf_event_open を4回呼び出し、4つのカウンタの設定とfdの取得を行う
|
|
1つ目のカウンタをリーダーとし、4つのカウンタを1つのグループとして設定する
|
|
2. PERF_EVENT_IOC_RESET を各fdにioctlで送信し、
|
|
各カウンタの値が0になっていることを確認する
|
|
3. PERF_EVENT_IOC_ENABLE をグループリーダーのfdにioctlで送信し、計測を開始する
|
|
4. 計測対象プログラム(calc_task(), memory_task())を実行する
|
|
5. PERF_EVENT_IOC_DISABLE をグループリーダーのfdにioctlで送信し、計測を終了する
|
|
6. 計測終了時の各カウンタの値を取得し、表示する
|
|
7. 各カウンタが停止していることを確認するため、計測対象プログラムを再び実行する
|
|
8. カウンタの値が前回取得時から変化していないことを確認する
|
|
|
|
2. 既存のpa_info機能に影響がないことを確認
|
|
CT_003: 単一のイベント種別での計測
|
|
1. ihk_os_setperfevent を呼び出し、1種類のイベントの設定を行う
|
|
2. ihk_os_perfctlをPERF_EVENT_ENABLE指定で呼び出し、計測を開始する
|
|
3. 計測対象プログラム(calc_task(), memory_task())をmckernel上で実行する
|
|
4. ihk_os_perfctlをPERF_EVENT_DISABLE指定で呼び出し、計測を終了する
|
|
5. 計測終了時の各カウンタの値を取得し、表示する
|
|
6. カウンタが停止していることを確認するため、計測対象プログラムを再び実行する
|
|
7. カウンタの値が前回取得時から変化していないことを確認する
|
|
|
|
CT_004: 複数のイベント種別での計測
|
|
1. ihk_os_setperfevent を呼び出し、4種類のイベントの設定を行う
|
|
2. ihk_os_perfctlをPERF_EVENT_ENABLE指定で呼び出し、計測を開始する
|
|
3. 計測対象プログラム(calc_task(), memory_task())をmckernel上で実行する
|
|
4. ihk_os_perfctlをPERF_EVENT_DISABLE指定で呼び出し、計測を終了する
|
|
5. 計測終了時の各カウンタの値を取得し、表示する
|
|
6. カウンタが停止していることを確認するため、計測対象プログラムを再び実行する
|
|
7. カウンタの値が前回取得時から変化していないことを確認する
|
|
|
|
3. LTPによる動作の確認
|
|
LT_001: perf_event_open01 で、PERF_TYPE_HARDWARE 種別の計測が行えることを確認
|
|
1. 上記テスト中の 1-5件目のテストがTPASSであることを確認
|
|
1. 上記テスト中の 6,7件目のテストがTCONFであることを確認
|
|
(PERF_TYPE_SOFTWARE指定はMcKernelでは未サポートのため)
|
|
|
|
□ 実行手順
|
|
$ make test
|
|
|
|
McKernelのインストール先や、OSTEST, LTPの配置場所は、
|
|
$HOME/.mck_test_config を参照している
|
|
.mck_test_config は、McKernelをビルドした際に生成されるmck_test_config.sample ファイルを
|
|
$HOMEにコピーし、適宜編集する
|
|
|
|
□ 実行結果
|
|
result.log 参照。
|
|
すべての項目をPASSしていることを確認。
|