總覽
Fuchsia 追蹤功能可擷取支援動態電壓和頻率調整 (DVFS) 的裝置上,CPU 頻率的變化 (在核心中稱為「處理速率」)。這些變更會以計數器的形式顯示在追蹤資料中。
使用 RPPM (相對效能電源管理) 分析裝置效能時,這些軌跡特別實用,因為頻率變化可能會大幅影響執行時間。
擷取追蹤記錄
Zircon 核心會處理 CPU 頻率追蹤,這是 kernel:power 類別的一部分。開始追蹤時,請指定這個類別:
ffx trace start --categories "kernel:power"瞭解 CPU 頻率計數器
擷取追蹤記錄後,您可以在 Perfetto 中查看及分析 CPU 頻率資料:
- 在 Perfetto 中開啟追蹤記錄檔案。
- 在軌跡清單中,找出核心程序下方的「Processing Rate:CPU:N」計數器 (其中 N 是 CPU 核心索引,例如
Processing Rate:CPU:0)。
「處理速率」計數器會顯示值,代表 CPU 相對於標準化比例的運作頻率:
- 值為 1000 代表 CPU 以最高頻率 (100%) 運作。
- 值越低代表頻率越低 (例如,值為 524 代表 CPU 的執行頻率約為最高頻率的 52.4%)。
如要計算實際頻率,請將這個百分比乘以 CPU 的最大頻率。舉例來說,如果最高頻率為 2.7 GHz,追蹤值 524 大約會轉換為 1.4 GHz (2.7 GHz 的 52.4%)。
這些值是從核心的內部處理速率乘數衍生而來,並以 1000 為比例。
瞭解頻寬需求計數器
「kernel:power」類別也包含頻寬需求計數器,也就是 Constant BW Demand:CPU:N 計數器 (其中 N 是 CPU 核心索引)。
「Constant BW Demand」計數器代表核心的總期限使用率 (要求的 CPU 頻寬)。這是具有特定時間要求的執行緒所要求的 CPU 時間比例。
與處理速率類似,這些計數器會顯示相對於標準化比例的值:
- 1000 代表 CPU 核心的最高使用率 (100%)。
- 值越低代表使用率越低 (例如,值為 750 代表要求核心總容量 75% 的期限執行緒)。
需求與處理率之間的關係
這兩個計數器通常會一起變動:
- 常數 BW 需求是需求:顯示排定的執行緒要求執行的工作量。
- 處理速率是回應:核心會根據這項需求調整 CPU 頻率。
頻寬需求增加時,核心通常會提高處理速率 (頻率),確保能趕上期限。需求減少時,處理速率可能會降低。