引用:
https://zh.wikipedia.org/wiki/SpeedStep
SpeedStep技術,最早用於Pentium III Mobile處理器——一種筆記本所用的移動版CPU中,使CPU能在高、低兩個確定的頻率間切換,而且這種切換不是即時調整的,通常設置為當用電池時降為低頻,而在用交流電源時恢復到高頻(全速)。由於降為低頻的同時也會降低電壓和功耗,一方面CPU本身耗電量減少,另一方面發熱量也會減少,這樣還能縮減甚至完全避免使用風扇散熱,進一步的節約了用電,因此能延長電池的使用時間;另一方面在用交流電的時候又能恢復為全速工作以獲得最高性能。
SpeedStep 技術的升級版本 EIST 全名為Enhanced Intel SpeedStep Technology(增強型Intel SpeedStep技術),是Intel全新的節約能源技術,最早用於Pentium M處理器,同樣也是一款筆記本所用的移動版CPU。出於和AMD台式機處理器中的Cool'n'Quiet技術競爭的目的,EIST 技術現在也推廣到Intel較新的台式機處理器中,目前使用這一技術的Intel台式機和移動版CPU包括Core系列、Pentium D系統(不包括805、820、915)、Pentium M系列和超執行緒的Pentium 4系列(不包括5XX)。
與早期的 SpeedStep 技術不同的是,增強型 SpeedStep 技術可以動態調整CPU頻率,當CPU使用率低下或接近零的時候動態降低CPU的倍率,令其工作頻率下降,從而降低電壓、功耗以及發熱;而一旦監測到CPU使用率很高的時候,立即恢復到原始的速率工作。當然,對於移動版處理器,仍然可以設置在使用電池的時候永遠不要調整到最高頻率,而始終維持在次高或者最低頻率工作
1.
SpeedStep 可用於區分筆電與桌電,SpeedStep用於切換CPU高低頻,依據比電是使用電池或者交流電來切換。而桌電使用的則是EIST (Enhanced Intel SpeedStep Technology)。
2.
增強的 SpeedStep(EIST)使得原有的性能等級從兩階增加到多階,是的性能切換更加靈活,例如,1.4G Pentium 4M的有600M和1.4G兩檔,但是對於支持1.4G Pentium M處理器而言,就有600M、800M、1G、1.2G和1.4G五個頻率檔次。增強的SpeedStep可以直接通過對處理器的MSR寄存器編 程來實現頻率,大大減少了頻率切換時間,而原來的SpeedStep依賴於對Chipset的IO端口編程實現,所以切換延時較大。
SpeedStep (GV1.1)
只有兩個模式,全效能模式和省電效能模式。通常預設插電為全效能,電池為省電效能,效能則可從控制台電源管理中進階設定調整。
Enhanced SpeedStep(GV2.1)
加入了依據工作量自動在兩主頻下切換。(此時CPU效能有三種模式 高效能、省電模式、自動模式)
Enhanced SpeedStep(GV2.2)
加入Deep Alet mode。省電模式擁有更低電壓方式運作。
EIST(Enhanced Intel SpeedStep Technology, GV3)
不再只有兩主頻可用,而是多個頻率可使用,通常以100MHz為(step)。例如:800MHz、900MHz、1GHz......
運作方式(以下是我觀察到的如果有錯誤,還請給予指教):
1.Bios會去讀去CPUID EAX[1]:ECX[7]來判斷是否支援EIST。
2.在Config Init的階段,如果CPUID有支援EIST則會填入BIOS Steup Variable。
3.最後依據這個Stepup Variable來寫入MSR的 0x1A0:[16]
4.OS會判斷目前系統附載量,來決定是否改變頻率。
如果要改變頻率則會去看ACPI的P-State,再將對應到的P-State對應的頻率寫入MSR中調整CPU頻率。
檢測EIST的方法:
1.先檢查CPUID EAX[1]:ECX[7]來判斷是否支援EIST。可以透過RW.exe command的方式dump出來。
2.如果CPUID有支援則,在看MSR 0x1A0(MISC_ENABLE)第16bit是否有舉起。
匠網論壇/ L8 } I+ r! x