Develop and Download Open Source Software

OpenSource Downloads

7-Zip  (3,583)  
CrystalDiskInfo  (1,811)  
Tera Term  (1,787)  
HandBrake Japanese Language Version  (1,743)  
CrystalDiskMark  (980)  
FFFTP  (765)  
ffdshow  (719)  
mixfont-mplus-ipa  (615)  
MergeDoc  (571)  
10  TortoiseSVN  (555)  
11  Amateras  (437)  
12  BathyScaphe  (396)  
13  FreeMind  (372)  
14  Cabos  (327)  
15  ギコナビ  (316)  
More >>

sysprofでシステム全体の動作をプロファイリングする

2008年06月03日 10:03 Ben-Martin(2008年5月30日(金)) 1 2

 sysprofの残りの機能は、記録したプロファイルの分析に関係している。sysprofウィンドウは3つの主要セクションに別れており、それらは「Funcions(関数)」、「Callers(呼び出し元)」、「Descendants(子孫)」の各リストになっている。分析の作業は関数リストから始める。デフォルトでは、実行された関数が総実行時間の長いものから順に一覧表示される。このリストには、実行可能なプロセス、共有ライブラリ、カーネル自身の実行時間も表示される。

 いずれかの関数をクリックすると、画面の右側に子孫プロセスのリストが現れる。関数リスト内のプロセスをクリックした場合は、左下の呼び出し元リストに「<spontaneous>」と表示される。関数または子孫のリストで、たとえば「f」という関数をクリックすると、この関数「f」を呼び出すすべての関数が呼び出し元リストに表示される。

 私の環境では「rmmod sysprof_module」の実行後にカーネルのOopsメッセージが出たので、プロダクション環境でのsysprofの使用は避けたほうがいいかもしれない。このOopsメッセージはすべてのコンソールに出力されたが、それでもシステムの利用やリブートは普通に行えた。その後モジュールの削除と再挿入のテストを行った際にはOopsはもう発生しなかったが、システムは初回のリブートなしではもはや使えない状態になってしまった。

 いくつか簡単な機能強化を施せば、sysprofはもっと優れたものになるだろう。まず、参照済みのプロファイル情報間を自在に行き来できる戻る/進むのボタンがインタフェースにあるとすばらしい。また、プロファイルの記録がコマンドラインから実行できれば、グラフィカルなクライアントのリモート実行に必要なX Windowライブラリがインストールされていないサーバでもプロファイリングが簡単に行えるようになる。コンソールクライアントがあれば、自動記録も容易になるはずだ。また、残念なことにsysprofはi386およびx86-64アーキテクチャにしか対応していない。ARMプラットフォームでも間違いなく役に立つはずなのだが。

 sysprofはすでに多くのディストリビューションにパッケージングされており、アプリケーションの再コンパイルが不要なので、すぐにでもパフォーマンスのボトルネック調査に利用できる。

Ben Martinは10年以上もファイルシステムに携わっている。博士号を持ち、現在はlibferrisや各種ファイルシステム、検索ソリューションを中心としたコンサルティングサービスを提供している。

Linux.com 原文

最終更新:2008年08月03日 17:07
SourceForge.JP is a Japanese version of SourceForge.net. For developments that are not related to Japan, we recommend you to use SourceForge.net.