CPU Profiler 性能分析是用来分析CPU性能瓶颈的工具,可以实时查看应用/服务的CPU使用率和线程活动,也可以查看记录的方法跟踪数据、方法采样数据和系统跟踪数据的详情。基于CPU性能分析,您可以了解在一段时间内执行了哪些方法,以及每个方法在其执行期间消耗的CPU资源,可以有针对性的优化应用/服务的CPU使用率,提供更快、更顺畅的用户体验,以及延长设备电池续航时间。
录制CPU活动数据
录制HarmonyOS应用或服务的CPU活动数据,需要将待分析的应用或服务运行起来,当前仅支持本地真机。
NOTE
录制JS的CPU活动数据,应用/服务只能以Debug模式运行。
1.在DevEco Studio菜单栏上单击View > Tool Windows > Profiler,或者在DevEco Studio底部工具栏单击Profiler按钮,打开Profiler分析器。在Profiler分析器的SESSIONS窗口,单击+按钮,在弹出下拉列表中先选择设备,然后选择待分析的进程。
2.在实时变化视图,单击CPU区域,进入CPU详情页面。
3.在CPU详情页面选择CPU数据的录制模式,然后单击Record,开始录制CPU活动数据。
开始录制后,会在SESSIONS窗口的当前会话下生成应用/服务的数据记录。CPU数据的录制模式分为以下几种:
- 对Java 方法采样(Sample Java Methods):在应用/服务的Java代码执行期间,定期捕获应用/服务的调用堆栈。分析器会比较捕获的数据集,以推导与应用/服务的 Java 代码执行有关的时间和资源使用信息。
- 跟踪Java 方法(Trace JavaMethods):在运行时检测应用/服务,在每个方法调用开始和结束时记录一个时间戳。系统会收集并比较这些时间戳,以生成方法跟踪数据,包括时间信息和CPU使用率。
- 跟踪JS 方法(Trace JSMethods):在运行时检测应用/服务,在每个方法调用开始和结束时记录一个时间戳。系统会收集并比较这些时间戳,以生成方法跟踪数据,包括时间信息和CPU使用率。
- 跟踪系统调用(Trace SystemCalls):捕获应用/服务运行的细节,以便您检查应用/服务与系统资源的交互情况。您可以检查线程状态的确切时间和持续时间、直观地查看所有内核的CPU瓶颈在何处,并添加需分析的自定义跟踪事件。
除了使用以上几种数据录制模式外,还可以单击模式选择下拉列表中的Edit Configurations自定义数据录制模式。