用戶發現macOS活動監視器程序對Apple Silicon的能源使用情況監測有誤
macOS中的活動監視器程序向Apple Silicon用戶提供的數據可能不那麼準確,一份報告稱,該工具不能正確區分性能和效率核心的區別。活動監視器為用戶和開發者提供了一種方法,告訴他們哪些應用程序在執行任務時佔用的資源最多,能量最大。
在運行Apple Silicon的Mac上測試該工具的功能要素時,似乎核心識別方面的一個小錯誤可能使一些結果大打折扣。
使用活動監視器的CPU和能源數字,用戶可以看到,據報導,在完成一項任務時,僅在效率核心上運行的應用程序代碼比性能核心消耗更多的能量。由於效率核心的目的是要比性能核心更慢,但功耗更低,這個結果是相當矛盾的。
The Electric Light Company在配備M1 Max的Mac Studio上進行的測試涉及在8個性能核心和2個效率核心上運行測試程序。當每個核心類型的8個浮點計算線程,每個線程有10億個循環時,8個性能線程在6.6秒內完成任務,而2個效率核心需要40.4秒。
然而,檢查活動監視器的能量標籤顯示,性能核心持續的能量值為800,每個線程660,總共使用了5280個單元。同時,效率核心的能量值為194,總共消耗了7838個單位,每個線程980個。
如果從表面上看,這將推斷出,在效率核心上運行這些特定的線程原來比性能核心的效率要低。報告稱,這個問題是由活動監視器造成的,因為它無法區分具有固定頻率的相同核心和具有可變頻率的兩種不同核心類型。
報告還發現,它在如何報告內核之間的負載方面也存在問題。一項測試確定在兩個效率核心上運行兩倍的代碼量,在活動監視器中被報告為使用與一半的代碼量相同的能量。
據認為,由於macOS如何控制效率核心的頻率,不同的M1芯片的結果也是不一致的,所以M1處理報告的方式與M1 Pro也有可能有極大的不同。
報告補充說:”在蘋果更新活動監測器為M1芯片返回的數字之前,核心類型和頻率的混淆使得它不僅沒有用,而且實際上對比較CPU佔用率或能量消耗具有誤導性。相反,開發者應該考慮Powermetrics等工具,因為它提供了關於集群頻率和功率使用的信息,以及活動駐留時間。”
目前還不清楚蘋果是否有更新活動監視器的打算,在Apple Silicon發布後至今的時間裡沒有看到任何明顯的改進。