 |
|
前のページ 1 2 3 4 次のページ
|
 |
従来LKSTに対する機能拡張
|
カーネルの処理を大きく分類し、それぞれの性能指標を得ることができるように、従来のLKSTに対して主要なカーネル処理の入口と出口にフックを追加した。各性能指標のための評価項目とフックの追加箇所を表1に示す。
|
項番 |
収集情報区分 |
評価項目 |
測定箇所 |
1 |
システムコール |
処理時間 |
システムコールの入口と出口 |
2 |
使用傾向 |
システムコールの入口 |
3 |
ソフトウェア割り込み |
実行遅延時間 |
ソフトウェア割り込み要求の実行場所 |
4 |
応答性能 |
タイマ割り込みの実行場所 |
5 |
メモリ確保 |
処理時間 |
メモリ確保の入口と出口 |
6 |
メモリ解放 |
処理時間 |
メモリ解放の入口と出口 |
7 |
ブロックIO |
処理時間 |
ブロックIOの入口と出口 |
8 |
IOリクエストキュー |
ブロックIOの入口 |
9 |
ネットワークIO |
処理時間 |
ネットワークIOの入口と出口 |
10 |
通信サイズ傾向 |
ネットワークIOの入口 |
11 |
ロック |
競合傾向 |
ロック取得待ちの開始と終了 |
12 |
ロック時間 |
ロック取得とロック解放 |
13 |
スケジューラ |
ランキューの傾向 |
スケジューラの入口 |
14 |
ウェイトキューの傾向 |
ウェイトキューの入口と出口 |
15 |
ウェイト処理遅延時間 |
ウェイトキューの入口と出口 |
16 |
スケジューラ処理時間 |
スケジューラの入口と出口 |
17 |
プロセス |
プロセスの生存時間 |
フォーク、プロセス終了 |
18 |
プロセスの状態遷移 |
フォーク、コンテキストスイッチ、ウェイクアップ、プロセス終了 |
表1:測定項目と箇所
|
なお、フックの追加は、従来のLKSTが提供している"フックポイントの追加方法"にしたがって実現した。この方法については、LKSTのパッケージに同梱しているhowto.txtを参照して頂きたい。
|
性能解析ツール(lkstla)
|
性能解析ツールlkstla(LKST Log Analyzer)は、新たに取得した性能情報を解析するためのコマンドである。これが今回の目玉機能と言っても過言ではない。LKSTのコマンドlkstbufやlkstlogdが出力したバイナリログデータを解析し、あるイベント処理の実行時間の分布や平均値などを出力する。
lkstlaコマンドはアナライザを指定して実行する。アナライザとは、ログデータを解析し、解析できたイベントごとに「キー」「評価値」「イベント開始時間」「PID」に該当する値を返す機能である。現在は表2に示す20種類のアナライザと、3通りの表示形式(可視化ツール使用)をサポートしている。
|
分類 |
アナライザ名 |
解析対象 |
ブロックIO関連 |
blkqueue |
リクエストキューごとのブロックIOキューの長さ |
biotime |
ブロックデバイスごとのブロックIO要求処理時間 |
bioqueue |
ブロックIO要求処理時間とブロックIOキューの関係 |
スピンロック関連 |
busywait |
スピンロックの呼び出し位置と、ビジーウェイト時間 |
spinlock |
スピンロックの呼び出し位置と、ロック時間 |
ネットワーク関連 |
netroute |
IPv4ルーティングテーブルの検索時間 |
netsend |
パケットを送出するのにかかった時間 |
メモリ管理関連 |
palloc |
ページの確保時間 |
vmscan |
ページの回収方法ごとのページ回収時間 |
プロセス関連 |
procstat |
プロセスごとの状態遷移 |
proclive |
プロセスごとの生存時間 |
runqueue |
CPUごとのランキューの長さ |
schedule |
プロセスごとのスケジューリング処理時間 |
schedrun |
ランキューの長さと、スケジューリング処理時間 |
ソフトウェアIRQ関連 |
softirq |
ソフトウェアIRQの種類ごとに、割り込み要求があってから実行するまでの時間 |
timer |
ソフトウェアタイマが実行された時間と設定した時間との差 |
システムコール関連 |
syscall |
システムコールごとのシステムコールを実行している時間 |
ウェイトキュー関連 |
waitqueue |
ウェイトキューにたまっているプロセスの数 |
waittime |
ウェイトキューで待っていた待ち時間 |
その他 |
event |
記録されたイベントの種類 |
表2:性能解析ツールのアナライザ一覧
|
lkstlaの詳細仕様については、下記URLより公開されている「lkstlogtools version1.0.1 使用説明書」を参照して頂きたい。
|
http://lkst.sourceforge.jp/
|
 |
可視化ツール
|
可視化ツールは、解析ツールにより得られた情報をグラフとして表示するツール群であり、4種類を提供している。
- 時系列グラフプロットツール:lkst_plot_log
- lkstlaで解析した時系列ログから、gnuplotでグラフとしてプロットしたものをpdf化し表示する。
- 統計結果グラフプロットツール:lkst_plot_stat
- lkstlaで解析した統計結果から、gnuplotでグラフとしてプロットしたものをpdf化し表示する。
- 対数分布ヒストグラムプロットツール:lkst_plot_dist
- lkstlaで解析した対数分布結果を、gnuplotでヒストグラムとしてプロットしたものをpdf化し表示する。
- システム情報グラフプロットツール:lkst_plot_sysinfo
- lkst_fmt_sysinfoで解析したシステム情報の時系列ログから、gnuplotでグラフとしてプロットしたものをpdf化し表示する。
|
 |
前のページ 1 2 3 4 次のページ
|

|
|

|
著者プロフィール
株式会社日立製作所 平松 雅巳
1996年大阪大学に入学。以来今に至るまで、優秀なハッカー達に囲まれて過ごしてきた。大学ではロボット制御を主に研究。2002年にシステム開発研究所に入所以降は、Linuxカーネル及びOSSに関連した研究開発に従事。LKSTのメンテナ。OSS関連のカンファレンスやコミュニティ活動にも参加している。
|

|
著者プロフィール
株式会社日立製作所 杉田 由美子
システム開発研究所に勤務。OS、コンパイラなどの研究開発を経て、90年代後半からシステムの高信頼化研究に着手。Linuxカーネルの研究は2001年から担当。現在もLinux/OSSを中心とした研究開発に従事。LKST/DAVLのメンテナ。OSS関連のコミュニティ活動にも参加し、普及にも取り組んでいる。
|
|
|
|