這是繼之前《[-Fx-] 比較 youtube HTML5及Flash的 CPU 使用率》
https://www.ptt.cc/bbs/Browsers/M.1425685059.A.708.html
以及《OS X主流瀏覽器觀看YouTube H.264的CPU使用率》
https://www.ptt.cc/bbs/Browsers/M.1430256608.A.672.html
再次再行的測試。
這次要測試的是 OS X 10.11.2 之下,
三種主流瀏覽器觀看 YouTube H.264 (+Dash) 的
CPU 使用量和 POWER 使用量。
測試的瀏覽器有:
Firefox 43.0.4
Safari 9.0.2
Google chrome 47.0.2526 + h264ify 1.0.2
不想再看細節的板友請直接看結果:
http://i.imgur.com/Csm1ide.png
原始資料請見
https://gist.github.com/chenpanliao/eb101ed83595928d0268
其中 data.csv 是各 command 加總後用來繪圖的資料,
rawdata.csv 是各 command 加總前資料。
主要的結果有:
1. Safari 在 720P 以上影片,CPU usage 會明顯下降。
這大概是 Safari 支援這台機器硬解的關係。
相似地,Firefox 也有這種現象,但不似 Safari 明顯。
至於 Google Chrome 似乎沒讓硬解有多少作用。
2. 和之前的測式相比,Firefox 對 H.264 的解碼似乎進步了,
且不輸於 Google Chrome。
3. Power impact 大多和 CPU usage 相似,除了 Safari 在 60 fps 的情況。
我事後確實以同樣方法多次測試了 Safari 在 60 fps 的實驗,數據非常相似,
但我也發現 Activity Monitor.app power impact 對 Safari 60 fps 的監測
數據如同 CPU usage 般驚人地低。
但其它瀏覽器與影片的測試並沒有顯示出 Activity Monitor.app
和 top 有明顯差別。
我認為,Activity Monitor.app 在計算 power impact 時並未加入
WindowServer 程式的值;
在 top 的結果中,極高的 power impact 都是由 WindowServer 貢獻來的。
在我的結果中,若不考慮 WindowServer 貢獻的 POWER 量,
那 Safari 還是最省電的沒錯。
至於 top 再加總和 Activity Monitor.app 對電量使用量計算,誰對誰錯我不知道,
但有興趣的朋友可以看看 http://preview.tinyurl.com/o6gjhzd 這篇文章。
以下是方法,有點細。==============================
測試前,瀏覽器的 profile 都已先清空,
並在 https://www.youtube.com/html5 確認過是否已開啟 H.264 +Dash。
CPU 使用率與 power impact 計算方法:
開啟影片網址後,設定好所需模式。
若有廣告,都會先手動關掉。
在暫停播放的情況下把指標拉到影片開始時間。
同時,在 terminal 中下
https://gist.github.com/chenpanliao/eb101ed83595928d0268#file-shellscript-sh
這組指令。內容大概是會取得每秒 1 次共 61 次的測量值。
我所挑出偵測的 command 是根據事前觀察
並與 Activity Monitor.app 相互比較的經驗。
之後,將同時間下多個 command 的 CPU 或 POWER 數值相加。
因為每個第 1 次測量值沒有可用資料,所以刪除之。
所以,在同一個播放模式進行上述測量一次,可得 60 個測量值。
上述動作會重覆 5 種模式 × 3 種瀏覽器 = 15 種情況。
在測量期間,儘可能排除開啟其它軟體。
測量的順序並不一定,但並沒有完全隨機。
在觀看所有影片時,所有影片以我眼力所及並未有失幀的現象。