M2 討論區

Title: Windows 7 的 SSD 效能優化進階 [Print]

Author: admin    Time: 2011-10-31 13:55
Title: Windows 7 的 SSD 效能優化進階
在進入 SSD 的門戶後, 難免要把作業系統優化, SSD 應用時有效維護及提昇運作效能, 優化主要針對 Windows 7 作業系統, 快將引退的 XP 系統有硬體及軟體上的功能限制(不支援系統原生的 TRIM 功能)也該準備退役了, 雖然 Windows 7 系統有良好的支援 SSD(微軟說的), 不過還是有很多被忽略的需要手動修改, SSD 優化後的好處在效能上也十分明顯。. V) \0 R* @$ |0 ^, m

' ]; x" R* O* n8 R' t5 x# b& k# p, I6 S作業系統優化後除了影響 SSD 固態硬碟效能, 減小 SSD 頻繁作業亦有效增強了閒置時維護(TRIM/GC)後的高鋒寫入效能, 還會對 HDD 硬碟機有小許改善。+ \" z; }' w1 Y! G+ V

. [2 ], q# [' O& s8 K' @; DWindows 7 SSD 一般重點優化:. E4 H0 b( |0 f9 x

6 M) e  P' @$ r1 a. j/ E建議在 SSD 初始分割格化後即時執行對齊程序, 可減小因為分割區內大量文件檔案耗用執行對齊時間。7 q7 R' n: T0 T
- X5 b. u0 i; x$ n6 E9 u; z; I* C$ K
AHCI (SSD/HDD)% O1 C* ]1 g+ S. D5 E/ E
AHCI 模式對不同廠牌 SSD 的傳輸影響在 AS SSD 測試中 4KQD32 有達 ~400%以上(NCQ 對細小的持續讀取最明顯), 要用盡 SSD 的效能火力(尤其是配合 Intel RST AHCI)的話, 開啟 AHCI 模式是無容置疑; 如果 OS 已安裝成 IDE 模式的話, 需要在 Windows 7 內先修改 registry 機碼(及準備好驅動程式), 然後重啟電腦進入 BIOS 啟用 AHCI。. v# R3 w2 a8 M3 f, a  P
* ~1 i/ m1 N5 B) R, ^
修改 Windows 7 機碼啟用 AHCI:
% @* i4 E- r( Q8 N以系統管理員身分執行 regedit 登錄編輯程式
1 L* W& T! C/ R( R" q, H: t尋找
* {, \0 Q. g" L7 f4 k& q[HKEY_LOCAL_MACHINESystemCurrentControlSetServicesMsahci]3 T7 n% P* s+ n' g* E
修改/ }2 f4 z. k6 U0 d% N5 B3 E
將 start 預設值 3 修改為 0
: @+ [: J3 [* q5 w( R
" e3 Z( w9 _) C9 Y7 z1 T
msahci_service.png

4 p* O/ `5 q9 S# r參考微軟技術文件 KB922976. E0 [. l& G( f8 E

! H: E& I) m2 i# U) J& l" ~. J/ a( p) H8 \' l2 g; t
TRIM (SSD)9 a) c' [4 T/ A+ Y+ C' p
Windows 7 新增 TRIM 功能支援專用於 SSD, 主要由於 Block、Page 及 Cell 必須首先抹除才能寫入新的數據, 寫入隨時間及空間容量縮小累積而在沒有更多 pre-erase 的 block 下持續爆發寫入(burst write)效能下降, TRIM 的作用是把 SSD 可刪除文件的 block/cell 資料立即標示為 invalid, 容許內置預先抹除, 待再有寫入動作時減去了同時要執行抹除作業。
% S& [5 I4 c% B; h* F6 L4 K2 K( X
w7_ssd_trim.png

1 z) V0 h+ M  g" I. i要應用到 TRIM 的話, 必須 OS、驅動程式 及 SSD 同時支援, 現時 OS 完全支援 TRIM 功能只有 Windows 7, Windows Server 2008 R2 及 Linux(kernel 2.6.33), 而 Windows 7 內的 Microsoft generic AHCI/ATA 驅動程式 及 Intel 的 RST 9.6 已支援 TRIM, 市場上的 SSD 並不是全部都支援 TRIM, 部分可以透過更新 firmware 提供升級, 部分因為 SSD 控制晶片的限制沒有 TRIM 功能, 某些舊型號 SSD 亦沒有 GC(Garbage Collection)功能內建(需要額外工具程式修復, 例如 Intel X25-M G1, 及 JMF612 控制器晶片), 採購 SSD 時要注意是否支援。; D7 [' A' w) t# ^4 |% {

( [$ T" ~9 D6 H4 XWindows 7 查看 TRIM 支援預設:$ v9 U3 P: R+ M
以系統管理員身分執行 cmd 命令提示字元4 i  q4 w7 O1 _$ k) R6 L: t
執行指令:
" J" @! E( X1 D$ g7 N  J/ C: afsutil behavior query DisableDeleteNotify: @8 a1 W8 t, N
正常 DisableDeleteNotify = 0 即表示 OS 內 TRIM 功能已啟用" I( B9 H1 V! O1 P& O( N
) |7 D. j0 j5 J. t

' P7 h0 A% U# L% j3 G
# n- G0 q! t  L* ?3 x: e0 _8 a# g) @* a2 S
Superfetch/Prefetch (SSD)
, N& E- m6 T' t2 A- cSuperfetch 對軟體程序的啟動和預取增強的程式讀取載入性能, 主要針對是 HDD 硬碟機的物理機械限制, 但 SSD 跟本沒有此問題情況, Superfetch/Prefetch 只會更浪費耗用讀取時間及程序, SSD 當系統碟的話, 關閉 Superfetch/Prefetch 絕對有好處; Windows 7 把 services 服務內的 Superfetch 設定為手動啟動, 停用後可以刪除 c:windowsprefetch 目錄內的檔案文件。
: L. ]1 a, N, ~  X/ B5 C
% n, y! n' ]" t1 B停止 Superfetch 服務:) G7 m, y6 T7 m# H0 r$ m
以系統管理員身分執行 services.msc 服務
- _* w- f/ o  `: W: I  r) F& V% v; l尋找 Superfetch 服務! i8 l9 P' d! F  [/ t# {2 F
點按 將 "自動" 改為 "停用"或"手動" 及點按 "停止"
5 T+ v! c- ?2 D8 a
' |/ C- h* P' V5 N4 c" [# @- N
superfetch_disable.png

$ A5 @9 ^: j2 K8 c7 F! m0 y停用 Superfetch 服務的話, 亦同時停止了 Prefetch 及 ReadyBoost 功能。
5 m1 @; v& D# N' A2 `7 r! b' F1 p
: o5 z- f( ?+ w0 _  s, C5 V( y$ l3 n& }. I
6 z4 x! \& [0 H: V' i3 b

+ [- t3 j6 p' Q$ N. a9 ?5 T1 }Defragment (SSD)
" [+ }  H/ y9 U磁碟區塊破碎是機械硬碟機的攸久問題, defragment(破碎重組)只能有效針對 HDD 硬碟機因為檔案區塊分散影響讀取性能而已, 沒有物理機械限制的 SSD 是無需執行任何「磁碟重組」作業。
1 F' B# a; g$ a7 \Windows 7 的 disk defragment(磁碟重組)是自動排程, 需要手動停止自動磁碟重組(雖然微軟宣稱 SSD 會自動停止磁碟重組)
0 z5 D) Z- @+ `
- v# L7 }& y; N3 E1 s* N8 _停止磁碟重組自動排程:. [7 x. \. r$ {- w( X# M0 ]
以系統管理員身分執行 dfrgui.exe(disk defragment)0 S* [. L6 _3 ~7 D6 C; n! S
在 "設定排程" 內關閉不勾選 "依排程執行"/ d  m9 a6 y- m# z6 S' o
# G: L  l% o: R+ y9 ?6 |0 \
0 Q2 T' a# T8 q  l/ M. @
autodefrag_disabled.png
, H1 O7 r8 ~  h
/ m5 S/ V- S5 Y: ]  S( \
. l% m  k. Y) Q* a
1 m5 w, g' m% C8 K5 R

2 e" G7 F/ b2 w( \Windows 7 SSD/HDD 其他有的無的優化:
! ?3 V# x9 v0 h' `' x2 K7 z. ?" r+ j) V' f# Z

3 G7 ~6 P, |, U$ ~
4 O' q' P' i1 ]- v3 ~0 A" Z
windows_search_disable.png
& a1 N( I. [7 W+ i6 F& I

" i4 y- d% u: }* u# D8 ]! |
timestampinterval.png
! h2 `; l% n% Q% T/ P7 C- @
ceip.png
ceip_disable.png
+ i- Z0 w! m- Y
, @1 L5 R4 S, C/ h; w8 |/ f
關閉了 Windows 客戶經驗改進計劃只是禁止用戶選擇加入 CEIP, 及停止將分析報告上載到微軟, 並不是停止 CEIP 的分析排程作業。4 f( y# `/ w' u( y/ D8 y
2 @  G# Y) s5 k9 K8 M
停止 CEIP 自動排程
1 n1 n$ w, d) L2 M) k6 J以系統管理員身分執行 taskschd.msc 工作排程器
: o4 N5 s/ P  W2 e4 N. w展開 工作排程器程式庫 -> Microsoft -> Windows -> Customer Experience Improvement Program% ^6 Y+ p6 T1 h4 k
滑鼠右點將三個排程 Consolidator KernelCeipTask UsbCeip 停用+ q' A( r' d2 G6 M0 V  e

7 Y6 A/ B% j# J3 _8 o
w7_schedule_ceip.png
3 ]0 j  C. m' c3 K; _
停止 RAC 自動排程每小時一次(CEIP 關聯)9 B& L" O0 ~  h" _$ n4 F
以系統管理員身分執行 taskschd.msc 工作排程器
; i9 ~+ R8 P; I- g展開 工作排程器程式庫 -> Microsoft -> Windows -> RAC7 ]/ Z, T- C. J3 |! H4 B
滑鼠右點將排程 RacTask 停用
" Q( ?  d, L8 A! i' p; t/ E, ?
w7_schedule_rac.png
% T! O* [$ h; b1 t6 x2 L% Y5 A8 {

" e: c, [$ {) O" r- ~
) `6 }; q' V$ Z
ipv6_disable.png + ^2 h; y' a; N5 C* Z+ U3 o$ g
, }( C; r& K. f5 k$ c* y7 t
停止 IP-Helper 服務:: d" `: o% _7 G; S9 d! ~5 x' e
IPv6 轉換技術, 主要是將非 IPv6 的地址轉換到支援 IPv6 的網絡環境(例如 在內部 IPv6 網絡連接到 IPv4 的網址), 此系統服務會在 background 內不斷對外呼號連接轉換, 利用 Resource Monitor 時會看到有持續的網絡資料傳送, 關閉了 IPv6 的話 IP-Helper 已無用處, 也停止對外呼號連接轉換。! _( t( ~$ D. e9 E
以系統管理員身分執行 services.msc 服務
) X3 v) P5 E! C7 J2 L) ]3 ~1 o& g% G尋找 IP-Helper6 |& s0 t3 u" N5 F
點按 將 "自動" 改為 "停用" 及點按 "停止"
2 k, }7 ^' c2 D$ x" j
) X$ F# W1 o" J6 `: U/ ^9 E7 _
ip_helper_disable.png

) y6 V7 \5 M* U  q) ?/ }6 ?6 |& k& v! x* x0 c7 y% [  X
網絡裝置停止使用 IPv6 協同% ^- {$ {" O3 z3 d" H7 X3 w8 O
ipv6_off.png

; c6 a5 n  m4 i5 f# h
) {8 M" c9 [7 k) P




Welcome M2 討論區 (https://forum.m2.hk/) Powered by Discuz! X2.5