SHOEISHA iD

※旧SEメンバーシップ会員の方は、同じ登録情報(メールアドレス&パスワード)でログインいただけます

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

CDN CodeZine出張所

3rdRail 2.0のプロファイリング機能を試す


  • このエントリーをはてなブックマークに追加

プロファイリングを実行する

 R Optimizerパースぺくティブで、プロファイリングを実行します。

ステップ1

 CPUプロファイリングを開始します。R Optimizer上の「<接続済み…監視中> R Optimizer - CPUプロファイラー」を選択し、マウスの右ボタンをクリックして現れたポップアップメニューから[CPUプロファイリング | CPU記録の開始]を選択します。

CPU記録の開始
CPU記録の開始
ステップ2

 画面の右下に表示されているアプリケーションの実行画面上の[Show]リンク部分をクリックし、画面が切り替わったら[Back]リンク部分をクリックして初期画面に戻ります(何度か繰り返しても、他の操作をしてもかまいません)。

ステップ3

 初期画面に戻ったら、CPUの画面上のアイコンをクリックしてCPU記録を終了します。

CPU記録の終了
CPU記録の終了
ステップ4

 CPU記録を終了すると画面上にプロファイラーの実行結果が表示されます。

プロファイラーの実行結果
プロファイラーの実行結果
ステップ5

 [最もビジーなスレッドの選択]ボタンを押すと、ビジー率が1番高いスレッドが選択されます。

ステップ6

 選択されたスレッド上でマウスをダブルクリックすると、実行フローとホットスポットが表示されます。

ステップ7

 今回は操作待ちの時間も含まれているため、該当箇所と考えられるアイドル時間が1番短いスレッドを選択し、ダブルクリックします(実行時の操作により、該当のスレッドが異なりますので注意してください)。

ステップ8

 ホットスポットの[合計時間]の部分をマウスでクリックすると、合計時間の順に並び替えられます。

ステップ9

 時間の大きい順に並び替えると、上位にModelBlogsController#indexが表示されていると思います。

ステップ10

 このホットスポットの部分をマウスでダブルクリックすると、該当するソースコード部分が表示され、問題箇所が検出されます。

ホットスポット部分の表示
ホットスポット部分の表示

おわりに

 3rdRailsのプロファイリング手順を簡単に説明しましたが、いかがでしたでしょうか。

 CPUプロファイラーの画面は、どこを変更すればパフォーマンスが向上するかの判断となります。また、ボトルネックとなっている箇所もソースコードがすぐに表示され、その場で修正し、実行することでボトルネックが解消されたかどうかも即時に確かめることができます。

関連情報

 R Optimizerを含む3rdRail 2.0の新機能は、2009年2月17日にAP浜松町(東京・大門)で開催される「第12回エンバカデロ・デベロッパーキャンプ」でも紹介する予定です。

 詳細は、http://dn.codegear.com/jp/article/39155をご覧ください。

この記事は参考になりましたか?

  • このエントリーをはてなブックマークに追加
CDN CodeZine出張所連載記事一覧

もっと読む

この記事の著者

EDN編集部(イーディーエヌ編集部)

エンバカデロ・デベロッパーネットワーク(EDN)は、ソフトウェア開発者とデータベース技術者のための技術情報サイトです。Delphi、C++Builderをはじめとする開発ツールやER/Studioなどのデータベースツールに関連する技術記事、ビデオなどを提供しています。EDN編集部は、EDN記事と連携...

※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です

この記事は参考になりましたか?

この記事をシェア

  • このエントリーをはてなブックマークに追加
CodeZine(コードジン)
https://codezine.jp/article/detail/3562 2009/02/12 11:32

おすすめ

アクセスランキング

アクセスランキング

イベント

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

新規会員登録無料のご案内

  • ・全ての過去記事が閲覧できます
  • ・会員限定メルマガを受信できます

メールバックナンバー

アクセスランキング

アクセスランキング