ProfileInstaller
| 最新の更新 | 安定版リリース | リリース候補版 | ベータ版リリース | アルファ版リリース |
|---|---|---|---|---|
| 2024 年 10 月 2 日 | 1.4.1 | - | - | - |
依存関係の宣言
ProfileInstaller への依存関係を追加するには、Google の Maven リポジトリをプロジェクトに追加する必要があります。詳しくは、Google の Maven リポジトリをご覧ください。
アプリまたはモジュールの build.gradle ファイルに、必要なアーティファクトの依存関係を追加します。
Groovy
dependencies { implementation "androidx.profileinstaller:profileinstaller:1.4.1" }
Kotlin
dependencies { implementation("androidx.profileinstaller:profileinstaller:1.4.1") }
依存関係について詳しくは、ビルド依存関係の追加をご覧ください。
フィードバック
お寄せいただいたフィードバックは Jetpack 改善の参考にさせていただきます。新しい問題が見つかった場合や、このライブラリを改善するアイデアをお持ちの場合は、お知らせください。新しい問題を報告していただく前に、このライブラリの既存の問題をご確認ください。スターボタンをクリックすると、既存の問題に投票できます。
詳細については、Issue Tracker のドキュメントをご覧ください。
バージョン 1.4
バージョン 1.4.1
2024 年 10 月 2 日
androidx.profileinstaller:profileinstaller:1.4.1 がリリースされました。バージョン 1.4.1 に含まれる commit については、こちらをご覧ください。
バグの修正
- 複数のプロセスを順番にシグナル送信することで、マルチプロセス ベースライン プロファイルの記録のサポートを修正しました。この修正では、Macrobenchmark/ベースライン プロファイル モジュールの
androidx.benchmark:benchmark-macro:1.4.0-alpha02とアプリのandroidx.profileinstaller:profileinstaller:1.4.1の両方を更新する必要があります。(I0f519、b/366231469)
バージョン 1.4.0
2024 年 9 月 18 日
androidx.profileinstaller:profileinstaller:1.4.0 がリリースされました。バージョン 1.4.0 に含まれる commit は次のとおりです。
1.3.0 以降の重要な変更
ProfileInstallerが API 35 以降でプロファイルのキャプチャとインストールをサポートするようになりました。プラットフォーム バージョンの更新にProfileInstallerの更新が不要になりました。(6f9f6fa)。- Android U(API 34)とエミュレータでのシェーダーの削除時に発生するクラッシュを解消しました(I031ca、b/274314544)。
V_015Sプロファイル形式のメソッド フラグのトランスコードを修正。(aosp/2906631、aosp/2847740)。
バージョン 1.4.0-rc01
2024 年 9 月 4 日
androidx.profileinstaller:profileinstaller:1.4.0-rc01 がリリースされました。最後のベータ版リリースからの変更はありません。バージョン 1.4.0-rc01 に含まれる commit については、こちらをご覧ください。
バージョン 1.4.0-beta01
2024 年 8 月 21 日
androidx.profileinstaller:profileinstaller:1.4.0-beta01 がリリースされました。最後のアルファ版からの変更はありません。バージョン 1.4.0-beta01 には、これらの commit が含まれています。
バージョン 1.4.0-alpha02
2024 年 8 月 7 日
androidx.profileinstaller:profileinstaller:1.4.0-alpha02 がリリースされました。バージョン 1.4.0-alpha02 には、これらの commit が含まれています。
新機能
- プロファイル インストーラに API 35 のサポートを追加しました。(6f9f6fa)
バグの修正
- 新しいプラットフォーム API へのアクセスの手動アウトラインを削除しました。これは、AGP 7.3 以降(R8 バージョン 3.3 など)で R8 を使用する場合、および AGP 8.1 以降(D8 バージョン 8.1 など)を使用するすべてのビルドで、API モデリングによって自動的に行われるためです。AGP を使用していないクライアントは、D8 バージョン 8.1 以降にアップデートすることをおすすめします。詳しくは、こちらの記事をご覧ください。(If6b4c、b/345472586)
バージョン 1.4.0-alpha01
2024 年 2 月 7 日
androidx.profileinstaller:profileinstaller:1.4.0-alpha01 がリリースされました。バージョン 1.4.0-alpha01 に含まれる commit については、こちらをご覧ください。
バグの修正
- プロファイル検証ツールに埋め込まれたプロファイルがない場合に表示されるエラーコードを追加しました。(Ifb109、b/313928520)
- Android U(API 34)とエミュレータでのシェーダーの削除時に発生するクラッシュを解消しました(I031ca、b/274314544)。
- プロファイル インストーラでの Android U のサポートを有効にしました(Iaf177)。
- Android U でのプロファイル インストーラの現在のプロファイルがプロセス開始時に空で作成されていないことによるエラーを修正しました(Ie3899)。
V_015Sプロファイル形式のメソッド ビットマップのトランスコード処理を修正。(aosp/2906631)および(aosp/2847740)
バージョン 1.3
バージョン 1.3.1
2023 年 5 月 3 日
androidx.profileinstaller:profileinstaller:1.3.1 がリリースされました。バージョン 1.3.1 に含まれる commit については、こちらをご覧ください。
バグの修正
- プロファイル インストーラでの Android U のサポートを有効にしました(Iaf177)。
- Android U でのプロファイル インストーラの現在のプロファイルがプロセス開始時に空で作成されていないことによるエラーを修正しました(Ie3899)。
バージョン 1.3.0
2023 年 3 月 22 日
androidx.profileinstaller:profileinstaller:1.3.0 がリリースされました。バージョン 1.3.0 に含まれる commit については、こちらをご覧ください。
1.2.0 以降の重要な変更
ProfileInstallReceiverのNullPointerExceptionを修正しました。(b/243851384)- ベースライン プロファイルがコンパイル済み、スケジュール済み、または欠落しているかどうかをアプリ内から確認する
ProfileVerifierAPI を追加しました。(I263a4、b/246653809) - ベースライン プロファイルの生成に含めるための新しいシェル ブロードキャストを追加し、Macrobenchmark でメモリ内のプロファイル データをディスクに完全にフラッシュできるようにしました。これは、Macrobenchmark ライブラリを使用して
BaselineProfileRuleでベースライン プロファイルをキャプチャし、CompilationMode.Partial(warmupIterations)を使用してプロファイルのパフォーマンスを評価するために必要です。 - 圧縮されたベースライン プロファイルを検出するための診断コードを追加しました。CPU オーバーヘッドのため、Profileinstaller では圧縮ベースライン プロファイルを Macrobenchmark または本番環境でインストールできません。Studio/AGP Electric Eel または
bundletoolバージョン1.13.1に更新してアプリをビルドする際は、このプロファイルを使用しないでください(I86413、b/261998144)。 - マクロベンチマークのホックを追加して、プロファイルをキャプチャし、シェーダー キャッシュを破棄できるようにしました。これは、root 権限のないデバイスでベースライン プロファイルの生成やマクロベンチマークを行うために必要です。(Ie0a7d、b/250083467、b/253094958)(Ia5171、b/231455742)
バージョン 1.3.0-rc01
2023 年 3 月 8 日
androidx.profileinstaller:profileinstaller:1.3.0-rc01 がリリースされました。最後のベータ版からの変更はありません。バージョン 1.3.0-rc01 に含まれる commit については、こちらをご覧ください。
バージョン 1.3.0-beta01
2023 年 2 月 8 日
androidx.profileinstaller:profileinstaller:1.3.0-beta01 がリリースされました。バージョン 1.3.0-beta01 に含まれる commit については、こちらをご覧ください。
API の変更
- 圧縮プロファイルの処理のサポートを削除しました。開いて圧縮解除を行う操作によって起動時の CPU 使用量で数十ミリセカンドの回帰が生じるため、代わりに、間違って圧縮されたベースライン プロファイルを検出するための診断を追加しました。(I86413、b/261998144)
バージョン 1.3.0-alpha03
2023 年 1 月 11 日
androidx.profileinstaller:profileinstaller:1.3.0-alpha03 がリリースされました。バージョン 1.3.0-alpha03 に含まれる commit については、こちらをご覧ください。
バグの修正
- 圧縮または非圧縮のベースライン プロファイルの処理が可能になりました。(Ic61a0)
- profileinstaller マニフェストのブロードキャスト レジストリを修正し、
MacrobenchmarkScope.dropShaderCache()がクラッシュしないようにしました。(I5c728、b/258619948)
バージョン 1.3.0-alpha02
2022 年 11 月 9 日
androidx.profileinstaller:profileinstaller:1.3.0-alpha02 がリリースされました。バージョン 1.3.0-alpha02 に含まれる commit については、こちらをご覧ください。
API の変更
- 特にウォームアップの繰り返しからプロファイルを使ってコンパイルする場合を念頭に、シェーダー キャッシュを削除するためのベンチマークのフックを追加してコールド スタートアップで一貫したパフォーマンスを確保しました。この更新は、
benchmark-macro-junit4:1.2.0-alpha05以降を使用してコールド スタートアップを測定するために必要です。Benchmark ライブラリの API の変更については、Benchmark 1.2.0-alpha07 のページをご覧ください。(Ia5171、b/231455742)
バージョン 1.3.0-alpha01
2022 年 10 月 24 日
androidx.profileinstaller:profileinstaller:1.3.0-alpha01 がリリースされました。バージョン 1.3.0-alpha01 に含まれる commit については、こちらをご覧ください。
API の変更
- ベースライン プロファイルがコンパイル済み、スケジュール済み、または欠落しているかどうかをアプリ内から確認する
ProfileVerifierAPI を追加しました。(I263a4、b/246653809) - ベースライン プロファイルの生成に含めるための新しいシェル ブロードキャストを追加し、Macrobenchmark でメモリ内のプロファイル データをディスクに完全にフラッシュできるようにしました。これは、Macrobenchmark ライブラリを使用して
BaselineProfileRuleでベースライン プロファイルをキャプチャし、CompilationMode.Partial(warmupIterations)を使用してプロファイルのパフォーマンスを評価するために必要です。(Ie0a7d、b/250083467、b/253094958)
バージョン 1.2.2
バージョン 1.2.2
2023 年 1 月 11 日
androidx.profileinstaller:profileinstaller:1.2.2 がリリースされました。バージョン 1.2.2 に含まれる commit については、こちらをご覧ください。
バグの修正
- 圧縮または非圧縮のベースライン プロファイルの処理が可能になりました。(Ic61a0)
バージョン 1.2.1
バージョン 1.2.1
2022 年 12 月 7 日
androidx.profileinstaller:profileinstaller:1.2.1 がリリースされました。バージョン 1.2.1 に含まれる commit については、こちらをご覧ください。
新機能
- S_V2(API 32)と TIRAMISU(API 33)の profileinstaller を有効にしました。(b/254900303)
バージョン 1.2.0
バージョン 1.2.0
2022 年 7 月 27 日
androidx.profileinstaller:profileinstaller:1.2.0 がリリースされました。バージョン 1.2.0 に含まれる commit については、こちらをご覧ください。
1.1.0 以降の重要な変更
- Android 12 以降で使用される ART プロファイル形式のサポートを追加しました。
ProfileInstallReceiverに新しい API を追加し、ベースライン プロファイルを使用する場合にMacrobenchmarksでより一貫した結果が得られるようにしました。
バージョン 1.2.0-rc01
2022 年 6 月 15 日
androidx.profileinstaller:profileinstaller:1.2.0-rc01 がリリースされました。バージョン 1.2.0-rc01 に含まれる commit については、こちらをご覧ください。
- このバージョンは
androidx.profileinstaller:profileinstaller:1.2.0-beta03と同一です。
バージョン 1.2.0-beta03
2022 年 6 月 1 日
androidx.profileinstaller:profileinstaller:1.2.0-beta03 がリリースされました。バージョン 1.2.0-beta03 に含まれる commit については、こちらをご覧ください。
バージョン 1.2.0-beta02
2022 年 5 月 18 日
androidx.profileinstaller:profileinstaller:1.2.0-beta02 がリリースされました。バージョン 1.2.0-beta02 に含まれる commit については、こちらをご覧ください。
- Compose 1.2.0-beta02 バージョンのサポートのために必要な変更はありません。
バージョン 1.2.0-beta01
2022 年 5 月 11 日
androidx.profileinstaller:profileinstaller:1.2.0-beta01 がリリースされました。バージョン 1.2.0-beta01 に含まれる commit については、こちらをご覧ください。
API の変更
ProfileInstallReceiverに新しい API を追加し、ベースライン プロファイルを使用する際にMacrobenchmarksでより一貫した結果が得られるようにしました。(If2ae5、b/215740637)
バグの修正
- Android 12 以降でメタデータ
V_001形式を使用するときに、プロファイル インストーラで有用性の高いメッセージがスローされるようになりました。(aosp/1978526、b/217502387) - プロファイル インストーラで
androidx.startupバージョン1.1.1が使用されるようになりました。(aosp/2077099、b/229828376)
バージョン 1.2.0-alpha02
2022 年 1 月 26 日
androidx.profileinstaller:profileinstaller:1.2.0-alpha02 がリリースされました。バージョン 1.2.0-alpha02 に含まれる commit については、こちらをご覧ください。
このバージョンは 1.2.0-alpha01 と同一です。
バージョン 1.2.0-alpha01
2022 年 1 月 12 日
androidx.profileinstaller:profileinstaller:1.2.0-alpha01 がリリースされました。バージョン 1.2.0-alpha01 に含まれる commit については、こちらをご覧ください。
新機能
- Android 12 以降で使用される ART プロファイル形式のサポートを追加しました。
バージョン 1.1.0
バージョン 1.1.0
2022 年 2 月 9 日
androidx.profileinstaller:profileinstaller:1.1.0 がリリースされました。バージョン 1.1.0 に含まれる commit については、こちらをご覧ください。
バージョン 1.1.0-rc01
2021 年 12 月 15 日
androidx.profileinstaller:profileinstaller:1.1.0-rc01 がリリースされました。1.1.0-beta04 からの変更はありません。バージョン 1.1.0-rc01 に含まれる commit については、こちらをご覧ください。
バージョン 1.1.0-beta04
2021 年 12 月 1 日
androidx.profileinstaller:profileinstaller:1.1.0-beta04 がリリースされました。バージョン 1.1.0-beta04 に含まれる commit については、こちらをご覧ください。
バージョン 1.1.0-beta03
2021 年 11 月 17 日
androidx.profileinstaller:profileinstaller:1.1.0-beta03 がリリースされました。バージョン 1.1.0-beta03 に含まれる commit については、こちらをご覧ください。
バグの修正
- Compose 1.1.0-beta03 をサポートするように更新しました。
バージョン 1.1.0-beta02
2021 年 11 月 3 日
androidx.profileinstaller:profileinstaller:1.1.0-beta02 がリリースされました。バージョン 1.1.0-beta02 に含まれる commit については、こちらをご覧ください。
バグの修正
- Compose 1.1.0-beta02 をサポートするように更新しました。
バージョン 1.1.0-beta01
2021 年 10 月 27 日
androidx.profileinstaller:profileinstaller:1.1.0-beta01 がリリースされました。バージョン 1.1.0-beta01 に含まれる commit については、こちらをご覧ください。
- 1.1.0-alpha07 からの変更はありません。
バージョン 1.1.0-alpha07
2021 年 10 月 13 日
androidx.profileinstaller:profileinstaller:1.1.0-alpha07 がリリースされました。バージョン 1.1.0-alpha07 に含まれる commit については、こちらをご覧ください。
新機能
- Android N で profm のサポートを追加
バージョン 1.1.0-alpha06
2021 年 9 月 29 日
androidx.profileinstaller:profileinstaller:1.1.0-alpha06 がリリースされました。バージョン 1.1.0-alpha06 に含まれる commit については、こちらをご覧ください。
バグの修正
- N、O、O_MR1 における profileinstaller のコード変換の問題を修正しました。(I12d75)
バージョン 1.1.0-alpha05
2021 年 9 月 15 日
androidx.profileinstaller:profileinstaller:1.1.0-alpha05 がリリースされました。バージョン 1.1.0-alpha05 に含まれる commit については、こちらをご覧ください。
バグの修正
- Multidex APK の Android Nougat と Android Oreo プロファイルのコード変換を修正しました。
バージョン 1.1.0-alpha04
2021 年 9 月 1 日
androidx.profileinstaller:profileinstaller:1.1.0-alpha04 がリリースされました。バージョン 1.1.0-alpha04 に含まれる commit については、こちらをご覧ください。
バグの修正
ProfileInstallerを修正し、ベースライン プロファイルを使用するアプリでCompilationMode.BaselineProfileを使って MacroBenchmark を簡単に実行できるようにしました。(I42657、b/196074999)
バージョン 1.1.0-alpha03
2021 年 8 月 18 日
androidx.profileinstaller:profileinstaller:1.1.0-alpha03 がリリースされました。バージョン 1.1.0-alpha03 に含まれる commit については、こちらをご覧ください。
バグの修正
- ProfileInstaller のスキップの動作を変更して、PackageInfo.lastUpdatedTime をアプリのファイル ディレクトリ内のファイルに記録し、次回実行時のプロファイルのインストール前に比較するようにしました。(Ib93d1)
- P、Q、R デバイスのプロファイル形式を調整し、ART の要件を遵守するようにしました(I84e89)
バージョン 1.1.0-alpha02
2021 年 8 月 4 日
androidx.profileinstaller:profileinstaller:1.1.0-alpha02 がリリースされました。バージョン 1.1.0-alpha02 に含まれる commit については、こちらをご覧ください。
Compose 1.1.0-alpha01 との互換性を確保するために更新しました。
バージョン 1.1.0-alpha01
2021 年 7 月 21 日
androidx.profileinstaller:profileinstaller:1.1.0-alpha01 がリリースされました。バージョン 1.1.0-alpha01 に含まれる commit については、こちらをご覧ください。
バグの修正
- 特定の状況で厳格モードがトリガーされるバグを修正しました。
バージョン 1.0
バージョン 1.0.4
2021 年 10 月 13 日
androidx.profileinstaller:profileinstaller:1.0.4 がリリースされました。バージョン 1.0.4 に含まれる commit については、こちらをご覧ください。
- Compose 1.0.4 をサポートするように更新しました
バージョン 1.0.3
2021 年 9 月 29 日
androidx.profileinstaller:profileinstaller:1.0.3 がリリースされました。バージョン 1.0.3 に含まれる commit については、こちらをご覧ください。
- Compose 1.0.3 をサポートするように更新しました
バージョン 1.0.2
2021 年 9 月 1 日
androidx.profileinstaller:profileinstaller:1.0.2 がリリースされました。バージョン 1.0.2 に含まれる commit については、こちらをご覧ください。
バグの修正
- P、Q、R デバイスのプロファイルのコード変換を追加しました。この変更により、これらのデバイスではプロファイルがコード変換され、記述したプロファイルが常に ART で使用できるようになります。これらのプラットフォームでは、以前コード変換がスキップされ、ART がソース プロファイルを処理できないことがありました。デベロッパー向け API に変更はありません。
バージョン 1.0.1
2021 年 8 月 4 日
androidx.profileinstaller:profileinstaller:1.0.1 がリリースされました。バージョン 1.0.1 に含まれる commit については、こちらをご覧ください。
Compose 1.0.1 との互換性を確保するために更新しました。
バージョン 1.0.0
2021 年 7 月 28 日
androidx.profileinstaller:profileinstaller:1.0.0 がリリースされました。バージョン 1.0.0 に含まれる commit については、こちらをご覧ください。
1.0.0 の主な機能
ProfileInstaller は、ライブラリとアプリが「プロファイル ルール」を定義して ART プロファイル情報を APK にバンドルするための新しいライブラリです。このライブラリは、アプリの起動後に該当プロファイルをインストールします。これは、アプリのパフォーマンスの向上に役立ちます。
プロファイル ルールの詳細と仕組みについては、1.0.0-beta01 のリリースノートをご覧ください。
バージョン 1.0.0-rc02
2021 年 7 月 14 日
androidx.profileinstaller:profileinstaller:1.0.0-rc02 がリリースされました。バージョン 1.0.0-rc02 に含まれる commit については、こちらをご覧ください。
バージョン 1.0.0-rc01
2021 年 7 月 1 日
androidx.profileinstaller:profileinstaller:1.0.0-rc01 がリリースされました。バージョン 1.0.0-rc01 に含まれる commit については、こちらをご覧ください。
これはリリース候補版であり、ベータ版からの変更はありません。
バージョン 1.0.0-beta01
2021 年 6 月 16 日
androidx.profileinstaller:profileinstaller:1.0.0-beta01 がリリースされました。バージョン 1.0.0-beta01 に含まれる commit については、こちらをご覧ください。
ライブラリの目的
ProfileInstaller は、ライブラリとアプリが「プロファイル ルール」を定義して ART プロファイル情報を APK にバンドルするための新しいライブラリです。このライブラリは、アプリの起動後に該当プロファイルをインストールします。これは、アプリのパフォーマンスの向上に役立ちます。
このプロファイルのインストールは、androidx.startup ライブラリで行われます。なんらかの理由でプロファイルのインストールを無効にする場合は、マニフェストを変更して削除できます。
<provider
android:name="androidx.startup.InitializationProvider"
android:authorities="${applicationId}.androidx-startup"
android:exported="false"
tools:node="merge">
<meta-data android:name="androidx.profileinstaller.ProfileInstallerInitializer"
tools:node="remove" />
</provider>
これは、アプリの起動要件が複雑で、ProfileInstaller.writeProfile API を使用してプロファイルのインストールを手動でトリガーする必要がある場合、特に便利です。
プロファイル ルールとは
ライブラリのプロファイル ルールは、
src/mainまたは同等のディレクトリにあるテキスト ファイルbaseline-prof.txtで指定します。このファイルでは、1 行に 1 つずつルールを指定します。ここでのルールは、ライブラリ内のメソッドまたはクラスと合致するパターンです。ルールの構文は、人が読める ART プロファイル形式のスーパーセットで、adb shell profman --dump-classes-and-methods ...を使用する際に使用されます。ルールは、メソッドまたはクラスをターゲットとする 2 つの形式のいずれかを使用します。メソッドルールのパターンは次のようになります。
<FLAGS><CLASS_DESCRIPTOR>-><METHOD_SIGNATURE>クラスルールのパターンは次のようになります。
<CLASS_DESCRIPTOR>上記の
<FLAGS>には、このメソッドに「ホット」、「起動」、または「起動後」のフラグを付ける場合にそれぞれ文字H、S、P(1 つまたは複数)を入力します。<CLASS_DESCRIPTOR>は、ターゲットとなるメソッドが属するクラスの記述子です。たとえば、クラスandroidx.compose.runtime.SlotTableの記述子は、Landroidx/compose/runtime/SlotTable;です。<METHOD_SIGNATURE>はメソッドのシグネチャで、メソッドの名前、パラメータの型、戻り値の型を含みます。たとえば、LayoutNodeのメソッドfun isPlaced(): Booleanのシグネチャは、isPlaced()Zです。1 つのルールに複数のメソッドまたはクラスを含める場合は、これらのパターンにワイルドカード(
**、*、?)を使用できます。
ルールの機能
フラグ
Hが付いているメソッドは、このメソッドが「ホット」メソッドであり、事前コンパイルが必要であることを示します。Sフラグが付いているメソッドは、このメソッドが起動時に呼び出されるメソッドであり、コンパイルのコストと起動時にメソッドを解釈するコストを回避するために事前コンパイルが必要であることを示します。Pフラグが付いているメソッドは、このメソッドが起動後に呼び出されることを示します。このファイルに存在するクラスは、このクラスが起動時に使用されるクラスであり、クラス読み込みのコストを回避するためにヒープで事前割り当てする必要があることを示しています。
ルールの仕組み
ライブラリは、AAR アーティファクトにパッケージするルールを定義できます。それらのアーティファクトを含む APK がビルドされると、ルールが結合されます。結合されたルールは、APK に固有のコンパクト バイナリ ART プロファイルをビルドするために使用されます。ART は、アプリの特定のサブセットを事前コンパイルするために、APK がデバイスにインストールされたときにこのプロファイルを利用して、アプリのパフォーマンス(特に初回実行時)を改善できます。なお、これはデバッグ可能なアプリには影響しません。
ルールファイルには
baseline-prof.txtという名前を付けて、メイン ソースセットのルート ディレクトリに配置する必要があります(AndroidManifset.xmlファイルの兄弟ファイルにする必要があります)。現時点では、これらのファイルを利用できるのは、Android Gradle プラグイン 7.0 以降を使用し、
gradle.properties内のフラグで有効にしている場合のみです。# Enable adding baseline-prof.txt files to AAR artifacts, and binary profiles to APKs android.experimental.enableArtProfiles=true
プロファイルにはバランスが必要
- 最良の結果を得るには、起動パスに含まれ、パフォーマンス上重要な役割を果たすメソッドとクラスを正しく優先順位付けするように適切に作成されたプロファイルが必要です。しかし、プロファイルに含めるメソッドまたはクラスの数が多すぎると、メモリ消費とディスク使用に関して実質的にマイナスの影響が生じる可能性があります。したがって、独自のプロファイル ルールを定義する場合は、控えめなルールからスタートすることをおすすめします。