perf(profile): cover startup, search and article-open paths
Cover the startup path, per-keystroke search with index reads and ranking, the dictzip article read, block merge and text warm-up, and dictionary indexing; they previously ran as JIT-warmed or interpreted code.
This commit is contained in:
1 parent
5ad184ba58
commit
01ef1dee2c
1 file changed
+36
-44
@@ -1,54 +1,48 @@
|
||||
# Seeded from the measured ReSearch startup, search, scrolling, and article-opening hot paths.
|
||||
# Keep this profile checked in: release builders, including F-Droid, only compile it.
|
||||
# Updated 2026-06-25: Added optimized cache paths from performance optimization stages 1-4
|
||||
HSPLcom/example/research/ReSearchApplication**->**(**)**
|
||||
HSPLcom/example/research/MainActivity**->**(**)**
|
||||
HSPLcom/example/research/InitialLaunch**->**(**)**
|
||||
HSPLcom/example/research/DictionaryStatus**->**(**)**
|
||||
HSPLcom/example/research/core/**->**(**)**
|
||||
HSPLcom/example/research/common/ui/**->**(**)**
|
||||
HSPLcom/example/research/ui/theme/**->**(**)**
|
||||
HSPLcom/example/research/ui/navigation/**->**(**)**
|
||||
HSPLcom/example/research/data/local/preferences/**->**(**)**
|
||||
HSPLcom/example/research/data/parser/ResourceManager**->**(**)**
|
||||
HSPLcom/example/research/common/util/FileStorageManager**->**(**)**
|
||||
HSPLcom/example/research/common/util/DateUtils**->**(**)**
|
||||
|
||||
HSPLcom/example/research/ReSearchApplication;->**(**)**
|
||||
HSPLcom/example/research/MainActivity;->**(**)**
|
||||
|
||||
HSPLcom/example/research/common/ui/AppLocaleProviderKt**->**(**)**
|
||||
HSPLcom/example/research/common/ui/theme/ThemeKt**->**(**)**
|
||||
HSPLcom/example/research/ui/navigation/AppNavigationKt**->**(**)**
|
||||
|
||||
HSPLcom/example/research/ui/main/MainScreenKt**->**(**)**
|
||||
HSPLcom/example/research/ui/main/AdaptiveMainScreenKt**->**(**)**
|
||||
HSPLcom/example/research/ui/main/components/MainTopBarKt**->**(**)**
|
||||
HSPLcom/example/research/ui/main/components/SearchResultsListKt**->**(**)**
|
||||
|
||||
HSPLcom/example/research/feature/search/SearchViewModel**->**(**)**
|
||||
HSPLcom/example/research/data/paging/IndexEntryPagingSource**->**(**)**
|
||||
HSPLcom/example/research/ui/main/**->**(**)**
|
||||
HSPLandroidx/paging/**->**(**)**
|
||||
HSPLcom/example/research/feature/search/**->**(**)**
|
||||
HSPLcom/example/research/data/paging/**->**(**)**
|
||||
HSPLcom/example/research/data/parser/IndexSearcher**->**(**)**
|
||||
HSPLcom/example/research/data/parser/SearchRankingKt**->**(**)**
|
||||
HSPLcom/example/research/data/parser/FileSource**->**(**)**
|
||||
HSPLcom/example/research/data/parser/ResultsLruCache**->**(**)**
|
||||
HSPLcom/example/research/data/parser/MetadataLruCache**->**(**)**
|
||||
HSPLcom/example/research/data/parser/SearchRanking**->**(**)**
|
||||
HSPLcom/example/research/data/parser/SortKey**->**(**)**
|
||||
|
||||
HSPLcom/example/research/data/repository/LocalDictionaryRepository**->**(**)**
|
||||
HSPLcom/example/research/data/repository/KotlinDictionaryEngine**->**(**)**
|
||||
HSPLcom/example/research/data/repository/**->**(**)**
|
||||
HSPLcom/example/research/data/dictzip/DictZipInputStream**->**(**)**
|
||||
HSPLcom/example/research/data/dictzip/DictZipRandomAccessFile**->**(**)**
|
||||
HSPLcom/example/research/data/dictzip/DictZipHeader**->**(**)**
|
||||
HSPLcom/example/research/data/parser/DslArticleReader**->**(**)**
|
||||
HSPLcom/example/research/ui/article/DslAnnotatedParser**->**(**)**
|
||||
HSPLcom/example/research/ui/article/ArticleScreenKt**->**(**)**
|
||||
HSPLcom/example/research/data/parser/LruCharsetCache**->**(**)**
|
||||
HSPLcom/example/research/ui/article/**->**(**)**
|
||||
|
||||
# Hot paths for optimized article rendering (Stage 1)
|
||||
HSPLcom/example/research/ui/article/ArticleLinkText**->**(**)**
|
||||
HSPLcom/example/research/ui/article/ArticleState**->**(**)**
|
||||
HSPLcom/example/research/data/parser/Dsl**->**(**)**
|
||||
HSPLcom/example/research/data/parser/LineKind**->**(**)**
|
||||
HSPLcom/example/research/data/parser/ByteTrackingLineReader**->**(**)**
|
||||
HSPLcom/example/research/data/parser/Utf8Writer**->**(**)**
|
||||
|
||||
HSPLcom/example/research/ui/settings/**->**(**)**
|
||||
HSPLcom/example/research/common/progress/**->**(**)**
|
||||
HSPLcom/example/research/feature/download/**->**(**)**
|
||||
|
||||
# About screen (bonus optimization)
|
||||
HSPLcom/example/research/ui/about/AboutScreenKt**->**(**)**
|
||||
|
||||
# Updated 2026-07-11: cover the settings/dictionary flow and the Compose framework.
|
||||
|
||||
# Settings + dictionary management flow
|
||||
HSPLcom/example/research/ui/settings/**->**(**)**
|
||||
Lcom/example/research/ui/settings/**
|
||||
HSPLcom/example/research/common/ui/components/**->**(**)**
|
||||
Lcom/example/research/common/ui/components/**
|
||||
HSPLcom/example/research/common/progress/**->**(**)**
|
||||
Lcom/example/research/common/progress/**
|
||||
HSPLcom/example/research/feature/download/**->**(**)**
|
||||
Lcom/example/research/feature/download/**
|
||||
|
||||
# Pre-verify the app classes already covered by method rules above
|
||||
Lcom/example/research/**
|
||||
|
||||
# Compose framework: the alpha AARs ship near-empty baseline profiles, so first
|
||||
# compositions run interpreted without these rules.
|
||||
HSPLandroidx/compose/runtime/**->**(**)**
|
||||
Landroidx/compose/runtime/**
|
||||
HSPLandroidx/compose/ui/**->**(**)**
|
||||
@@ -61,12 +55,10 @@ HSPLandroidx/compose/animation/**->**(**)**
|
||||
Landroidx/compose/animation/**
|
||||
HSPLandroidx/compose/material/**->**(**)**
|
||||
Landroidx/compose/material/**
|
||||
|
||||
# Support libraries on the same cold path
|
||||
HSPLandroidx/lifecycle/**->**(**)**
|
||||
Landroidx/lifecycle/**
|
||||
HSPLandroidx/activity/compose/**->**(**)**
|
||||
Landroidx/activity/compose/**
|
||||
HSPLkotlinx/coroutines/**->**(**)**
|
||||
Lkotlinx/coroutines/**
|
||||
|
||||
Landroidx/paging/**
|
||||
Reference in new issue
Block a user