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 優化後的好處在效能上也十分明顯。2 B# @' h& e/ x  n

; l- {8 r, T% |* A作業系統優化後除了影響 SSD 固態硬碟效能, 減小 SSD 頻繁作業亦有效增強了閒置時維護(TRIM/GC)後的高鋒寫入效能, 還會對 HDD 硬碟機有小許改善。5 I$ _3 U+ L' H0 @
, F! W7 m7 z0 _% h! b
Windows 7 SSD 一般重點優化:, D: S8 n- U* N0 _+ P, _2 N

. g' V% t- K" F! O5 D建議在 SSD 初始分割格化後即時執行對齊程序, 可減小因為分割區內大量文件檔案耗用執行對齊時間。
% {( ^, F* _" {" C' i
  r9 \) m9 Y& P/ l5 t1 s& ~$ \) _AHCI (SSD/HDD)/ x+ t  L: N1 Q; n7 ]7 ^
AHCI 模式對不同廠牌 SSD 的傳輸影響在 AS SSD 測試中 4KQD32 有達 ~400%以上(NCQ 對細小的持續讀取最明顯), 要用盡 SSD 的效能火力(尤其是配合 Intel RST AHCI)的話, 開啟 AHCI 模式是無容置疑; 如果 OS 已安裝成 IDE 模式的話, 需要在 Windows 7 內先修改 registry 機碼(及準備好驅動程式), 然後重啟電腦進入 BIOS 啟用 AHCI。. G) ?( u  @+ C, R0 \

) p# J  H1 T: r! r- e修改 Windows 7 機碼啟用 AHCI:  Z2 ^- G% w# w0 U  ]* g
以系統管理員身分執行 regedit 登錄編輯程式
: E8 A- F! i( C0 L/ k/ f1 U2 [尋找
/ K, V/ w) Y7 s8 t[HKEY_LOCAL_MACHINESystemCurrentControlSetServicesMsahci]
# L/ N8 |7 s( U8 b1 L- B
修改
/ \; B+ J) ]2 N/ ~將 start 預設值 3 修改為 0
1 ^, S+ f5 j2 k
! d3 I+ ]  m" \
msahci_service.png
3 w% U( z+ D# {0 u
參考微軟技術文件 KB922976
& k" M, x3 y* E, [: \: z6 s
. W* }; i2 c1 O* ]: K
" ?( X3 T4 F& z7 s* q8 V' f% iTRIM (SSD)9 F' h; q8 O" H+ M& z
Windows 7 新增 TRIM 功能支援專用於 SSD, 主要由於 Block、Page 及 Cell 必須首先抹除才能寫入新的數據, 寫入隨時間及空間容量縮小累積而在沒有更多 pre-erase 的 block 下持續爆發寫入(burst write)效能下降, TRIM 的作用是把 SSD 可刪除文件的 block/cell 資料立即標示為 invalid, 容許內置預先抹除, 待再有寫入動作時減去了同時要執行抹除作業。
' f5 Z) k! k8 _9 N; i
w7_ssd_trim.png
" j1 B& Y7 y+ _: B+ ~
要應用到 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 時要注意是否支援。' Y9 i8 k9 o) G' O2 Z, F- c# j
- M2 ^7 f" b. j' A
Windows 7 查看 TRIM 支援預設:7 _$ n; s7 h3 K
以系統管理員身分執行 cmd 命令提示字元
3 G# S9 d: n. t$ t' ~! b8 g執行指令:
' e& }3 F( g, W9 Y/ Vfsutil behavior query DisableDeleteNotify
1 K% U6 n8 ?% X( T0 g
正常 DisableDeleteNotify = 0 即表示 OS 內 TRIM 功能已啟用
( S, Q) e- ?' ?1 u0 H8 s% b) L6 a- l0 x! E( ?8 b5 [$ M5 I

( r% D+ V3 G# S$ Y3 O
! ?, f' y9 n) G1 t2 \; @$ L8 H/ {6 X$ z" \9 V" \
Superfetch/Prefetch (SSD)) ~) V$ b, k" M- F9 O; O
Superfetch 對軟體程序的啟動和預取增強的程式讀取載入性能, 主要針對是 HDD 硬碟機的物理機械限制, 但 SSD 跟本沒有此問題情況, Superfetch/Prefetch 只會更浪費耗用讀取時間及程序, SSD 當系統碟的話, 關閉 Superfetch/Prefetch 絕對有好處; Windows 7 把 services 服務內的 Superfetch 設定為手動啟動, 停用後可以刪除 c:windowsprefetch 目錄內的檔案文件。
* y$ V! m0 p& }  J- v; @: K' u2 h' |
停止 Superfetch 服務:
( W8 ~! w( P6 ?) m& b以系統管理員身分執行 services.msc 服務5 W3 h. {2 F. s' A
尋找 Superfetch 服務, A5 U! I2 y, Z) D
點按 將 "自動" 改為 "停用"或"手動" 及點按 "停止"7 J4 M: |' k6 M8 V  w4 n

" j* y3 a. G! l7 u1 W$ ]1 B$ r. B" i
superfetch_disable.png
3 Q1 P5 z( g+ z
停用 Superfetch 服務的話, 亦同時停止了 Prefetch 及 ReadyBoost 功能。
1 q$ ^# q8 ?0 g& i2 P$ \2 U: {* I; O7 T0 t
+ a/ W  F( r% |
+ N, j5 C5 V( v) k' w/ K( l

) C! Q4 b& U" u, P% r" oDefragment (SSD)
: k. U) W' p6 v! }5 N磁碟區塊破碎是機械硬碟機的攸久問題, defragment(破碎重組)只能有效針對 HDD 硬碟機因為檔案區塊分散影響讀取性能而已, 沒有物理機械限制的 SSD 是無需執行任何「磁碟重組」作業。. K7 L, H" f: t* a4 w% \
Windows 7 的 disk defragment(磁碟重組)是自動排程, 需要手動停止自動磁碟重組(雖然微軟宣稱 SSD 會自動停止磁碟重組)$ g2 w) \/ ?! S
8 _5 U: Q5 [5 m: J. d: `
停止磁碟重組自動排程:4 u% n6 C+ j, k% t  O" l0 v: b
以系統管理員身分執行 dfrgui.exe(disk defragment)8 l& v- w# m5 r6 s$ j9 U
在 "設定排程" 內關閉不勾選 "依排程執行"* q7 B: e8 c9 Q3 s

" k" w' L4 s/ Q; b: f" K% V
' A$ m2 F7 z( a& S* {1 S0 j; H
autodefrag_disabled.png

# R5 e! o2 l+ ?. [0 x# n. f6 v: R2 L; T: b. P" L. W- r
( i+ X3 a& A; S3 P$ M

  S* m& }2 C; y# S3 \% @
' \, a% A6 o/ z! m* m' W3 hWindows 7 SSD/HDD 其他有的無的優化:& \0 B& |* Y2 H( Q1 G9 J. s

. ?3 O, U( h' z6 f) W& t! Q8 g8 e8 D& x% R% _
1 g0 ?; J5 @- q, R0 P+ `. o
windows_search_disable.png

! x; B  `0 C7 h; S8 E( u' y6 a2 i' \) o8 j" ]$ @
timestampinterval.png - E6 b( }" h4 l
ceip.png
ceip_disable.png
3 _( ~* |& P% c' }/ G

- z1 M0 p  v* M. L' ~  R關閉了 Windows 客戶經驗改進計劃只是禁止用戶選擇加入 CEIP, 及停止將分析報告上載到微軟, 並不是停止 CEIP 的分析排程作業。1 n% n" Z; A/ E; z: G

0 I% K2 m6 X0 \# C; U停止 CEIP 自動排程+ }  Y3 b: X* R9 v( ~7 I
以系統管理員身分執行 taskschd.msc 工作排程器
0 r9 s' r6 _9 x/ B展開 工作排程器程式庫 -> Microsoft -> Windows -> Customer Experience Improvement Program: k/ S1 N- k4 G$ r+ m: R
滑鼠右點將三個排程 Consolidator KernelCeipTask UsbCeip 停用3 T' M' T: e* V# ?: Z/ E
5 C$ `3 k7 Z7 f
w7_schedule_ceip.png

. h7 i2 ~  g7 ~- {7 y% s停止 RAC 自動排程每小時一次(CEIP 關聯)
( Y  |7 J+ Q$ O/ P# E; Z以系統管理員身分執行 taskschd.msc 工作排程器
- b& b" g. m2 B; t6 H展開 工作排程器程式庫 -> Microsoft -> Windows -> RAC, h! |8 c; D, C# X; L) _$ c; N! F
滑鼠右點將排程 RacTask 停用
, `+ z7 f! ^( w5 W0 _
w7_schedule_rac.png
# i3 r- e& W" f; H- M; Z: S
0 o8 `1 H% {7 Q. k' E2 h
/ T+ ?! U: [- ?" z# ~
ipv6_disable.png 8 M5 H+ `, Z5 U% V0 N! r

1 h3 C- \8 O. I9 i7 p% J停止 IP-Helper 服務:" Z3 R9 @6 Z* A+ J7 {
IPv6 轉換技術, 主要是將非 IPv6 的地址轉換到支援 IPv6 的網絡環境(例如 在內部 IPv6 網絡連接到 IPv4 的網址), 此系統服務會在 background 內不斷對外呼號連接轉換, 利用 Resource Monitor 時會看到有持續的網絡資料傳送, 關閉了 IPv6 的話 IP-Helper 已無用處, 也停止對外呼號連接轉換。
2 N0 F" Y& t; A$ n以系統管理員身分執行 services.msc 服務6 D. R$ @4 o7 E7 k9 ]! l0 l3 q
尋找 IP-Helper6 j. v0 `, N3 Z- K' P1 |; ^
點按 將 "自動" 改為 "停用" 及點按 "停止"
! a( m2 c0 y% [' I' e
0 j: B/ h* y4 H2 a3 z. X3 S2 _$ z% m
ip_helper_disable.png
! P  ^  C* o% U3 T# c7 z3 \7 U+ G3 _

) F, h2 @+ Y+ D& @網絡裝置停止使用 IPv6 協同
' x+ y! Q& W2 i: Y5 M+ I9 Y
ipv6_off.png

7 @  ~# M1 J3 ]: x" ]- h
* }5 q8 k# Z. w) ~  I# I6 D# u  C




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