Android Native CPU 火焰图实战:Simpleperf、符号文件与热点归因
Android Native CPU 火焰图实战:Simpleperf、符号文件与热点归因摘要:系统时间线能告诉我们“哪个线程在忙”,但要继续定位到 Native 动态库、函数和调用链,需要采样分析与正确符号。本文给出一条从 Simpleperf 录制、符号校验、报告下钻到火焰图解读的通用路径。一、Simpleperf 解决什么问题Simpleperf 是 Android NDK 提供的 CPU 性能分析工具。适合回答:CPU 时间主要落在哪些.so;哪些线程贡献了最多采样;热点属于函数自身还是它调用的子函数;优化前后热点占比是否发生变化。它基于采样而非每次函数调用插桩,开销相对可控,但采样结果仍是统计估计,不代表精确执行次数。二、先建立可复现的采样场景录制前固定版本、设备档位、画质、路径、预热和采样窗口。不要在“随便玩一会儿”的数据上生成漂亮火焰图。一个通用录制思路如下,具体参数需按目标设备与权限调整:simpleperf record-p