インテル® VTune™ プロファイラーを使用してターゲット Android* デバイスでリモートでデータ収集するには、次の点に注意してください。
ハードウェア・イベントベース・サンプリングでは、Android* デバイスへのルートモードの adb アクセスを有効にします。
オプションで次の操作を行ってください。
Android* が提供するシステム・ライブラリー、デバイスドライバー、またはカーネル内の関数を表示するには、ホスト開発システムからこれらのバイナリーのシンボルが削除されていない適切なバージョンにアクセスします。
Android* が提供するシステム・ライブラリー、デバイスドライバー、またはカーネル内のソースを表示するには、ホスト開発システムからこれらのコンポーネントのソースにアクセスします。
Android* デバイスを設定するには、次の操作を行います。
デバッグ接続を許可して adb アクセスを有効にします。
[Settings] > [About <device>] を選択します。
[Developer Options] タブを有効にするには、[Build number] を 7 回タップします。
[Settings] > [Developer Options] を選択し。[USB debugging] オプションを有効にします。
[Developer Options] へのパスは、デバイスの製造元およびシステムのバージョンによって異なります。
Google Play* なしでインテル® VTune™ プロファイラーの Android* パッケージをインストールするには、[Unknown Sources] を有効にします。これには、[Settings] > [Security] を選択して、[Unknown Sources] オプションを有効にします。
Android* 向けのインテル® VTune™ プロファイラーのコレクターは、adb を介して Android* デバイスへ接続する必要があります。通常、Android* デバイスは USB を介してホストに接続されます。USB 経由でデバイスに adb アクセスできない場合、イーサネットまたは WiFi 経由で adb に接続できます。イーサーネットまたは WiFi 経由で ADB に接続するには、最初にイーサーネットに接続するか WiFi アクセスポイントに接続してから、以降の手順を行います。
ターゲットの IP アドレスを取得します。Android* デバイスのイーサーネット IP アドレスは、[Settings] > [Wireless&Networks] >[ Ethernet] > [IP Address] から、WiFI IP アドレスは [Settings] > [Wireless&Networks] > [Wi-Fi] > [<Connected Access Point>] > [IP Address] から取得できます。
ターゲットデバイスで adb が有効であることを確認してください。有効でない場合、デバイスのターミナル・アプリケーションを使用して以下を入力します。
> su > setprop service.adb.tcp.port 5555 > stop adbd > start adbd
ホストの adb をリモートデバイスに接続します。ホストのコマンドプロンプトまたはターミナルで以下を入力します。
> adb connect <IPAddres>:5555
Android* プラットフォームでパフォーマンス解析を行う場合、通常次の操作を行うため、デバイスへのルートモードの adb アクセスが必要です。
ハードウェア・イベントベース・サンプリングに必要なドライバーをインストールしてロードします。
Android* デバイスが Java* 解析をサポートできるようにします。
ハードウェア・イベントベース・サンプリング解析を実行します。
Android* システムには、ホットスポット解析 (ユーザーモード・サンプリング・モード) や Perf ベースのドライバーを使用しないイベントベース・サンプリング収集など、root 権限を必要としない解析タイプがあります。
ビルドに応じて、ルートモードの adb アクセス方法は異なります。
ユーザー/製品ビルド: ユーザービルドの Android* へのルートモードの adb アクセスは困難であり、デバイスによって方法が異なります。詳細については、製造元にお問い合わせください。
エンジニアリング・ビルド: ルートモードの adb アクセスは、エンジニアリング・ビルドではデフォルトで有効になっています。Android* のエンジニアリング・ビルドは、その性質上 「最適化」されていません。エンジニアリング・ビルドに対してインテル® VTune™ プロファイラーを使用すると、ユーザーまたはユーザーデバッグ・ビルドですでに最適化されているコードを最適化の対象として特定します。
ユーザー・デバッグ・ビルド: Android* のユーザーデバッグ・ビルドは、良好な結果と使い易いツールの妥協点をもたらします。デフォルトで、ユーザーデバッグ・ビルドはユーザーモードで adb を実行します。インテル® VTune™ プロファイラー・ツールを使用するには、デバイスへのルートモード・アクセスが必要です、これには、ホスト上で adb root を実行する必要があります。これらの手順はユーザーデバッグ・ビルドを対象とします。
ハードウェア・イベントベース・サンプリング解析を行うには、インテル® VTune™ プロファイラーのサンプリング・ドライバーをインストールする必要があります。インテルが提供する SDV 用のリファレンス・ビルドを含む、Android* システムのドライバーは、/lib/modules または /system/lib/modules です。
ハードウェア・イベントベース解析コレクター:
socperf2_x.ko
pax.ko
sep3_x.ko
sep4_x.ko
vtsspp.ko
通常は、事前インストールされたドライバーを使用すると良いでしょう。プリインストールされているドライバーを確認するには、次のコマンドを使用します。
adb shell ls [/lib/modules|/system/lib/modules]
ドライバーが利用できない、またはバージョンが要件を満たしていない場合、ドライバーのビルドとインストールを検討してください。