[Xcode 5] Xcode 5のデバッグ機能 “Debug gauges”

iOS 7とともに登場したXcode 5ではデバッグ機能が強化がされています。
今回は新たに追加された"Debug gauges"という機能を試してみます。

Debug gaugesとは

プログラムの実行がエラーなどで中断した場合や、意図的にプログラムを一時停止させた場合に、「デバッグナビゲータ」にその時点でのプログラム実行の履歴が表示されますが、Xcode 5からはデバッグナビゲータにCPU、メモリなどのリソースの消費状況も表示されるようになりました。

実機の場合、iOS 7が動作するデバイスでのみ表示されます(iOSシミュレータは未確認)。

xcode5_debug_new_feature_06

実際に使ってみた。

iOS 7が動作する端末で実際に試してみます。
MapViewの表示であればCPUやメモリに負荷がかかりそうだと思ったので、単にMapViewを表示するサンプルアプリを作って動かしてみました。
xcode5_debug_new_feature_07

MapView表示時

デバッグナビゲーターに表示されるそれぞれの項目(CPU、Memory)をクリックすると、リソースの使用率の詳細を表示することができます。
MapViewが表示された直後のCPUへ負荷はこんな感じです。
xcode5_debug_new_feature_08

同様にメモリ使用量はこんな感じでした。
xcode5_debug_new_feature_10

ズーム/表示座標変更時

ズームしたり、表示位置を移動させたりすると、瞬間的にCPUへの負荷が増加しました。
xcode5_debug_new_feature_09

また、メモリ使用量も増加しました。
xcode5_debug_new_feature_11

詳細について

"Profile in Instruments"ボタンをクリックすると、Instrumentsが起動し、アプリのパフォーマンスのより深い分析を実行できます。
xcode5_debug_new_feature_12-2

まとめ

Xcode 5で追加されたデバッグゲージによって、CPUやメモリの使用量が急増したタイミングが明確にわかるようになりました。リソースの消費状況を見るだけならInstrumentsを起動する必要もないので、アプリのパフォーマンス改善の作業がやりやすくなりそうです。

参考ページ