CPU節能模式引發的雲主機事件

業務的一個數據庫節點使用的是浪潮TS860服務器,突然發現業務訪問在一段時間持續變慢,經排查,發現數據庫節點存在性能問題,經廠商工程師檢測服務器確認CPU工作頻率異常,工作頻率遠低於CPU硬件基準頻率(2.5GHz),運行速度只有1.187GHz
CPU節能模式引發的雲主機事件
然後通過遠程帶外管理方式連接服務器控制檯,重啓服務器進入BIOS並修改BIOS配置,關閉CPU節能模式後恢復正常。
bios調整方法:
進入主板bios,找到cpu設置選項,找到名爲“EIST”或“Intel SpeedStep technology”或“C1E”的選項,然後將其設爲“disabled”。
圖示:
CPU節能模式引發的雲主機事件
備註:
隨機讀寫性能是固態硬盤SSD的關鍵指標,其單位爲IOPS,即每秒進行讀寫(I/O接口)操作的次數。它對應整個系統的總線帶寬。當我們開啓CPU節能選項,CPU的頻率降下來,發送指令隨之變慢,I/0接口處理的操作次數減少,因此IOPS的影響最深。

CPU節能模式有關知識補充:
一、CPU節能概念

隨着CPU的發展,Intel出現了EIST技術,它可以動態的調整CPU的頻率。當CPU使用率地下或者接近0時候,能降低CPU頻率並且降壓,從而降低功耗和發熱。當檢測到CPU使用率增高,它會馬上回到原始工作頻率,但是你必須考慮CPU被喚醒的時間,並且確保它會再次100%運行。這一系列的過程通常被稱爲“C-states”或“C-modes”,它是從C0開始的。

隨着C-states的不斷增加,CPU睡眠模式就更深,即更多的電路和信號被關閉,並且CPU將需要更多時間返回到C0模式,即喚醒。

對於每個模式也有不同的名稱與不同功耗的子模式,從而喚醒時間級別等。

而在一些case中,CPU節能會帶一些不穩定的因素,如unstable issue或performance issue,所以我們可以通過系統層面來disable CPU節能。

二、常見的幾種C-states

C0 :工作狀態,CPU完全運行。

C1 :停止狀態,主CPU停止內部時鐘經由軟件;總線接口單元和APIC保持全速運行。

C3 :深度睡眠,止所有CPU內部和外部時鐘。

C6 : 深度功率下降, 將CPU內部電壓降低到任何值,包括0V。

如何從OS層面查看cpu節能模式是否打開或關閉:
1、Linux下快速查看
CPU節能模式引發的雲主機事件
從圖上可以看出當前超線程cpu MHz各有不同,說明都不是跑在C0模式下。
2、使用i7z工具查看

Linux下查看C-state的小工具,使用簡單,直接上傳i7z_64bit文件到系統裏,命令添加可執行權限,如:chmod +x i7z_64bit,然後直接執行 ./i7z_64bit

2、CentOS 7.x 節電及處理器調頻設置

CentOS7.3 OS中使用了 Intel P-state ,導致機器BIOS關閉節電設置後,處理器的頻率依舊處於頻繁跳動狀態。通過grub禁用 Intel P-state解決OS控制處理器頻率問題。操作如下:

禁用Intel P-state
sed -i '/GRUB_CMDLINE_LINUX/{s/"$//g;s/$/ intel_pstate=disable intel_idle.max_cstate=0 processor.max_cstate=1 idle=poll"/}' /etc/default/grub
grub2-mkconfig -o /boot/grub2/grub.cfg
reboot
此前有人提到的方案爲修改scaling_governor爲performance,此方案再使用過程中處理器頻率會有瞬間掉頻的情況。故不推薦。

以下爲修改前後對比

下圖CentOS 7.3爲修改前處理器頻率狀態
CPU節能模式引發的雲主機事件
下圖CentOS 7.3爲修改後處理器頻率狀態
CPU節能模式引發的雲主機事件

3、CentOS 6.x 節電及處理器調頻設置

部分SuperMicro、dell 老機型(如 R510 R610)機器在BIOS關閉節電不生效,由於從rhel 6 開始,操作系統默認會通過intel_idle驅動來控制cpu的節能狀態,而忽略BIOS設置.所以要通過添加啓動參數禁用intel_idle,讓linux系統通過ACPI調用BIOS設置來徹底實現禁用節能.所以手動Linux kernel配置參數(grub文件)裏增加以下參數來禁用操作系統底層驅動的節能功能在grub中添加intel_idle.max_cstate=0 idle=poll

注意重啓生效,部分沒有在BIOS關閉節電的老機器也可直接用此方法,使處理器頻率運行在最高頻率。

修改示例如下 (修改當前使用kernel纔可生效)
CPU節能模式引發的雲主機事件

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章