検索
特集

カーネル挙動を追尾する「DTrace」の実力OS選択の新常識(6/8 ページ)

Solaris 10の強化機能としてクローズアップされることが多い「DTrace」。さまざまなサービスが並列稼働する基幹サーバでは、カーネル挙動によってボトルネックを判断することも多い。DTraceは、解決するための打開策となるのか? 実例サンプルで検証していく。

PC用表示 関連情報
Share
Tweet
LINE
Hatena

quantize集計関数で頻度をグラフ表示する

 コマンドごとの読み取りに要した時間総計を見るのではなく、「何回の呼び出しがあって、それぞれの所用時間はどの程度の配分になっているのか」を知りたいケースもある。

 この目的のためには、quantize集計関数とlquantize集計関数が用意されている。

 quantize集計関数は結果を2の累乗で、lquantize関数は指定した数値単位ごとに区切り、それぞれ「どの値がどの頻度で現われるのか」をグラフ化するものだ。ここでは、リスト2のreturnプローブ処理を次のように変更する。

*** 一部省略されたコンテンツがあります。PC版でご覧ください。 ***

 すると、実行結果は、次のようになる。

*** 一部省略されたコンテンツがあります。PC版でご覧ください。 ***

 この出力形式の読み取り方は、例えばcatの部分について見れば、

  • 8192ナノ秒〜16384ナノ秒が1回
  • 16485ナノ秒〜32768ナノ秒が2回
  • 32768ナノ秒〜65536ナノ秒が1回

の計4回の呼び出しがされたという意味になる。

 このようにquantize集計関数を使えば、単純な総計を見るのではなく、「どの値がどのような頻度で発生するのか」を調べることができるのだ。

Copyright © ITmedia, Inc. All Rights Reserved.

ページトップに戻る