NVIDIA Nsight Tegra 3.0

NVIDIA Nsight Tegra を更新しました

AndroidWorks なるパッケージが NVIDIA から公開されて、その中に NVIDIA Nsight Tegara 3.0 なるものが入っていました。以前にも Nsight Tegra は Android 開発において、デバッグ効率を上げる可能性を秘めていることは説明しました。ただし当時は TEGRA 専用という制約がありました。
今回、AndroidWorks の説明の中で、 Tegra に限定しないというような文章があったので再び試してみることにしました。

インストール

以前と同様ですが登録して AndroidWorks をダウンロード&インストールします。ほぼ全自動で Android の開発環境がインストールされます。
 だいたい問題なくいくのでしょうが、自分の環境では VisualStudio でのプロジェクト作成時に Min Target が選べないという症状に出遭ってしまいました。一応 NVIDIA のTegra Android Development Pack (TADP) をインストールした後で、 NVIDIA Nsight Tegra をインストールするという方法で、対処を行っています。もし同症状に見舞われたら TADP をインストールしてみると解決するかもしれません。

実行

プロジェクトの作り方等はウィザードで簡単にできます。適当に作って早速自分の端末 XPERIA Z1 Compact でデバッグを試してみます。初回デバッグ起動時には以下のように端末の情報を色々と取得するため時間がかかります。
nsighttegra-3-launch-debugger

しかし、非 Tegra 端末であっても問題なくデバッグが開始&ブレークポイントで停止ができました。もちろん従来のバージョン同様 Java, C++ どちら側にもブレークポイントが設定できます。

nsighttegra-3-breakpoint
上記を見てわかるように、ネイティブコードの変数のチェックやコールスタックの確認も問題なく出来ています。

またメニューから TEGRA / Windows / Log Cat とたどって、LogCat のウィンドウを開くことも出来ます。すると以下のように VisualStudio に統合されている LogCat のウィンドウが出てきます。
nsighttegra-3-logcat

逆アセンブルウィンドウも開いて、該当部分を確認することも出来ました。
nsighttegra-3-disasm

その他の気になるポイント

メモリウィンドウを確認してみました。このウィンドウでメモリ領域を編集することも可能でした。VisualStudio 2015 ではこのあたりは読み込み専用だったのでよく出来ていたポイントです。ただし、書き込んだ後、ウォッチウィンドウその部分が反映されるタイミングがよくわからない感じでした。エディット後は反映されていないが、気付くと更新されているという・・・。

そして、実行位置の移動が出来るか確認してみました。なんとこれもまた機能するようです!先ほどの実行位置から移動させてみました。
nsighttegra-3-edit-pc
ただ色々とやっていると落ちてしまうようなので、通常のWindowsアプリでのVisualStudio デバッガのような安定度はなさそうです。

またツールチェインも選択可能でした。
nsighttegra-3-toolchain
ターゲットもこんな感じで選択可能でした。手元に ARM(32bit)なものしかないので他が同様にデバッグできるかは確認していませんが・・・。一応ARM以外は Experimental となっているようですが。

nsighttegra-3-target

まとめ

デバイスの制限がなくなり、TEGRAを搭載していない機種でも使える可能性があるのでかなり有力な開発ツールになったと思いました。また VisualStudio 2015 では標準的に Android 開発をサポートするとはいえ、こちらの Nsight Tegra のほうが一日の長があるように思います。
またプロジェクトのウィザードを見てみたらネイティブのスタティックライブラリ用も用意されていました。これもまた使い勝手がよいポイントでした。アプリのひな形として基本的に生成されるのが Java + jni という形のものなのも現時点での開発にあっていると思いました。

以前の情報

シェアする

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

フォローする