Linux – Intel EIST & Turbo boost

現今的處理器被期待能夠有出色效能的表現. 透過 Intel Turbo boost Technology 和 Intel 其他技術一起合作. 處理器可以依據你的需求讓 他的效能做動態的調整, 處理器會依據標準規格的 Power , temperature 和 current 的最大限制來動態調高需要高性能核心的工作頻率. 通常執行在 PC 上的 Legacy Application 只需單一核心做處理, Intel Turbo boost Technology 可以依據這 Legacy Application 的需求來調整他工作核心的工作頻率. Intel Turbo boost Technology 還可以同時調整所有的核心的工作頻率. 讓處理器依據我們的需求以達到何時 "When" 何地 "Where" 的高效能表現.

乍看之下 EIST & Turbo boost 這兩種東西都可以調整 CPU 的速度但差在哪裡呢!!

  • EIST (Enhanced Intel SpeedStep)
    主要的功能就是讓 CPU 在負載輕的時候可以讓 CPU 工作在低電壓低時脈的狀態,已達到節省電源的目的,當工作量大時 CPU 才以全速來運轉.如果你的 CPU 有支援,那還要在看一下你的 OS 有沒有支援這個功能.
    檢查 EIST 是否有支援.

    [root@benjr boot]# cat config-2.6.18-53.el5 | grep -i speedstep
    CONFIG_X86_SPEEDSTEP_CENTRINO=y
    CONFIG_X86_SPEEDSTEP_CENTRINO_ACPI=y
    # CONFIG_X86_SPEEDSTEP_LIB is not set
    

    看 cpu speed step 支援哪一些工作頻率.

    [root@benjr ~]# cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_available_frequencies
    2400000 900000
    

    其中的 cpu0 代表你 logical 的 CPU 數目,不同的 logical 都會有它的工作頻率.
    看目前的 cpu 工作頻率.

    [root@benjr ~]# cat /sys/devices/system/cpu/cpu0/cpufreq/cpuinfo_cur_freq
    

    相當於看 /proc/cpuinfo 的資訊是一樣的.

    如果你想讓它工作在最高頻率可以用下面的方式.

    [root @unsvr root]# echo performance > /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor
    [root @unsvr root]# cat /proc/cpuinfo
    
  • Turbo boost
    通常應用程式在執行時所消耗的 CPU 資源都只會用到單一個核心,所以不管你的 CPU 是幾核心對於單一應用程式他的效能還是一樣不會有太大的改變.
    所以 Intel 透過 Turbo boost 這技術,只要是符合 TDP(thermal design power:當 CPU 在最大負荷時,所釋放出的熱量) 的規範 CPU 可以將單一核心的效能做超頻的動作.讓應用程式可以獲得更高的效能.要使用 Turbo boost 模式的前提是 EIST 必須同時啟動.

關於 CPU 的省電模式 Sleep States (Global states) , Processor Operating States (C-states) & Processor Performance States (P-states) 請參考 http://benjr.tw/257

沒有解決問題,試試搜尋本站其他內容

發表迴響

你的電子郵件位址並不會被公開。 必要欄位標記為 *

這個網站採用 Akismet 服務減少垃圾留言。進一步瞭解 Akismet 如何處理網站訪客的留言資料