Windows Vista 的效能改善

Preview:

DESCRIPTION

Windows Vista 的效能改善. 謝合宜 微軟特約技術顧問 MCSE : Security/Messaging MVP/MCT BS7799/ISO27001 Lead Auditor. 預備知識. Windows 作業系統的使用與管理經驗. Level 200. 講題大綱. 現在的效能限制 最佳化記憶體使用 SuperFetch ™ 避免磁碟瓶頸 ReadyBoost ™ ReadyDrive ™ 效能支援架構 Low-priority I/O 效能診斷工具. 為何效能會出現瓶頸 ?. 不佳的記憶體內容 效能總是耗損 應用程式暫存不佳 - PowerPoint PPT Presentation

Citation preview

Windows VistaWindows Vista 的效能改善的效能改善

謝合宜謝合宜微軟特約技術顧問微軟特約技術顧問MCSE : Security/Messaging MVP/MCTMCSE : Security/Messaging MVP/MCT

BS7799/ISO27001 Lead AuditorBS7799/ISO27001 Lead Auditor

Level 200

預備知識預備知識

• WindowsWindows 作業系統的使用與管理經驗作業系統的使用與管理經驗

講題大綱講題大綱

• 現在的效能限制現在的效能限制• 最佳化記憶體使用最佳化記憶體使用

– SuperFetch™SuperFetch™

• 避免磁碟瓶頸避免磁碟瓶頸– ReadyBoost™ReadyBoost™– ReadyDrive™ReadyDrive™

• 效能支援架構效能支援架構– Low-priority I/OLow-priority I/O– 效能診斷工具效能診斷工具

為何效能會出現瓶頸為何效能會出現瓶頸 ??• 不佳的記憶體內容不佳的記憶體內容

– 效能總是耗損效能總是耗損• 應用程式暫存不佳應用程式暫存不佳• 背景程式佔掉記憶體背景程式佔掉記憶體

– 狀態轉換的影響狀態轉換的影響• 開機或休眠之後開機或休眠之後• 使用者切換之後使用者切換之後• 啟動程式或大的軟體啟動程式或大的軟體

• 零散存取的磁碟操作零散存取的磁碟操作– Page faultsPage faults– Program loadsProgram loads– Disk spin up timeDisk spin up time– Disk seeksDisk seeks

磁碟搜尋問題磁碟搜尋問題

• 磁碟製造廠持續改善技術磁碟製造廠持續改善技術– ATA/33 ATA/33 ATA/66 ATA/66 ATA/100 ATA/100 SATA SATA SATA IISATA II– 4200RPM 4200RPM 5400RPM 5400RPM 7200RPM 7200RPM 10000RPM 10000RPM– 2 MB 2 MB 8 MB 8 MB 16 MB 16 MB

• 搜尋時間改善了,不過還有空間搜尋時間改善了,不過還有空間– 3.5” 3.5” 平均搜尋時間 平均搜尋時間 ~10 mSec~10 mSec– 2.5” 2.5” 筆記型磁碟 筆記型磁碟 ~12.5 mSec~12.5 mSec– Result: Random IO rate limited to an effective Result: Random IO rate limited to an effective

1MB/sec1MB/sec• At that rate, populating 1GB of RAM takes ~1024sec!At that rate, populating 1GB of RAM takes ~1024sec!

檔案搜尋問題檔案搜尋問題

• 一般檔案與結構化檔案一般檔案與結構化檔案– 單一 單一 DLL DLL 大概至少佔掉大概至少佔掉 5~6 5~6 磁碟磁碟 SectorSector– 單一程式會使用超過 單一程式會使用超過 100 DLLs(IE, Adobe Reader, or 100 DLLs(IE, Adobe Reader, or

Microsoft Outlook)Microsoft Outlook)

• 可靠與持續性的使用可靠與持續性的使用– Logging, Transactions, Application Temp FilesLogging, Transactions, Application Temp Files

Windows VistaWindows Vista 如何處理如何處理 ??

• 提供新的記憶體管理架構提供新的記憶體管理架構• 盡量避免存取磁碟盡量避免存取磁碟• 使用使用 Prioritizes I/OPrioritizes I/O

• 提供新的診斷工具提供新的診斷工具

最佳化記憶體使用最佳化記憶體使用

動態的系統虛擬位址空間動態的系統虛擬位址空間• 在過去,系統虛擬位址空間區分成固定的區域在過去,系統虛擬位址空間區分成固定的區域

– 未分頁集區、已分頁集區、系統分頁表未分頁集區、已分頁集區、系統分頁表• 在在 32 32 位元位元 Vista Vista 中,系統記憶體空間可視需要指中,系統記憶體空間可視需要指

派派– 允許更大的未分頁、已分頁、允許更大的未分頁、已分頁、 Session Session 集區集區– 支援更大的終端機伺服器、更大的堆積記憶體支援更大的終端機伺服器、更大的堆積記憶體– 在 在 32 32 位元系統上,仍然不能使用超過 位元系統上,仍然不能使用超過 2GB 2GB 的空間的空間

• 系統虛擬記憶體空間的改進系統虛擬記憶體空間的改進 ::– 核心分頁表是動態配置,而不再是開機時配置核心分頁表是動態配置,而不再是開機時配置– 減少核心堆疊的使用,以允許在終端機伺服器上有更多減少核心堆疊的使用,以允許在終端機伺服器上有更多

的使用者的使用者– 堆積區可以動態擴展大小,而不需要重新開機堆積區可以動態擴展大小,而不需要重新開機

• 在 在 64 64 位元的 位元的 Windows Vista Windows Vista 中,各區域的記憶中,各區域的記憶體位址空間都設定到最大體位址空間都設定到最大

記憶體效能與擴展性記憶體效能與擴展性• 磁碟使用更有效率磁碟使用更有效率

– 讀取資數減少、讀取量增大 讀取資數減少、讀取量增大 (( 分頁錯誤、系統快取預讀分頁錯誤、系統快取預讀功能功能 ))

• 不再有 不再有 64 KB 64 KB 的限制,可以做大區塊的 的限制,可以做大區塊的 I/O I/O 存取存取– 分頁檔可以使用更大的叢集大小分頁檔可以使用更大的叢集大小

• I/O I/O 次數減少次數減少• 減少碎裂的狀況減少碎裂的狀況

• 減少因為分頁損毀所造成的資料遺失減少因為分頁損毀所造成的資料遺失• 支援顯示卡記憶體分頁功能支援顯示卡記憶體分頁功能• 支援支援 Superfetch™ Superfetch™ 功能功能

Internet ExplorerInternet Explorer

記憶體記憶體

OS

Startup Apps

Microsoft Word

Outlook

Photo Editor

硬碟硬碟

可用記憶體可用記憶體

記憶體快取記憶體快取

目前的記憶體管理目前的記憶體管理

SuperFetch™SuperFetch™

• Windows XP Windows XP 只會針對單一的行程,在該行只會針對單一的行程,在該行程啟動時,進行預載的動作程啟動時,進行預載的動作

• Windows Vista Windows Vista 的的 SuperFetch SuperFetch 則是事先預則是事先預載多個應用程式進入記憶體載多個應用程式進入記憶體– 統計分頁的使用頻率統計分頁的使用頻率– 跟據使用者的應用程式使用習慣跟據使用者的應用程式使用習慣– 預載時使用低優先權的 預載時使用低優先權的 I/OI/O

Internet Explorer

記憶體記憶體

OS

Startup Apps

Microsoft Word

Outlook

Photo Editor

硬碟硬碟

記憶體快取記憶體快取

Photo Editor

SuperFetch™SuperFetch™

避免磁碟瓶頸避免磁碟瓶頸

ReadyBoostReadyBoost

• 儲存唯讀分頁資料到外接的記憶體儲存裝置儲存唯讀分頁資料到外接的記憶體儲存裝置– 做為做為 SuperFetch SuperFetch 的快取區的快取區– 支援支援 USB USB 隨身碟、隨身碟、 SD SD 記憶卡、記憶卡、 CF CF 記憶卡、記憶卡、

內接的 內接的 PCI PCI 高速記憶卡高速記憶卡– 從快取載入分頁記憶體從快取載入分頁記憶體 (( 比從硬碟快 比從硬碟快 10 10 倍以倍以

上上 ))

• 資料有進行加密資料有進行加密 (AES 128bits)(AES 128bits)

• Write-through cacheWrite-through cache ,允許使用者移除裝置,允許使用者移除裝置

ReadyBoost (cont…)ReadyBoost (cont…)

• 裝置必須符合以下最低的效能需求裝置必須符合以下最低的效能需求 ::– 傳輸速度傳輸速度 : :

• 隨機 隨機 4KB 4KB 讀取至少 讀取至少 2.5 MB/sec 2.5 MB/sec 以上以上• 隨機 隨機 512KB 512KB 寫入至少 寫入至少 1.75 MB/sec 1.75 MB/sec 以上以上

– 儲存空間儲存空間 : : • 256MB - 4GB (FAT32)256MB - 4GB (FAT32)• 最多支援到 最多支援到 32GB (NTFS)32GB (NTFS)

– 每一個系統上只能有一個每一個系統上只能有一個 ReadyBoost ReadyBoost 裝置裝置

ReadyBootReadyBootReadyBootReadyBoot

ReadyDrive Hybrid Hard DrivesReadyDrive Hybrid Hard Drives

• 混合式磁碟混合式磁碟 (Hybrid Hard Drive,HHD) (Hybrid Hard Drive,HHD) 內建非內建非揮發式記憶體快取 揮發式記憶體快取 (NV Cache) (NV Cache) – 就算硬碟不運轉,都可以存取這塊記憶體快取區就算硬碟不運轉,都可以存取這塊記憶體快取區– 失去電源時資料依舊可以保留下來失去電源時資料依舊可以保留下來– 快取大小快取大小 50 MB - 2 TB 50 MB - 2 TB

(( 一般是 一般是 256 MB) 256 MB)

• 快取中包含快取中包含 ::– Superfetch Superfetch 的資料、開機檔、休眠檔案 的資料、開機檔、休眠檔案 ((部份部份 ))– OEM OEM 廠商可預載資料進去廠商可預載資料進去– 使用電池時,可以當寫入快取使用電池時,可以當寫入快取

NV

Cac

he

OS

MFT EntryMFT Entry Directory EntryDirectory Entry

DramCache

.data pages.data pages PE HeaderPE Header.text pages.text pages

直接由硬碟存取直接由硬碟存取

MFT EntryMFT Entry

Directory EntryDirectory Entry

PE HeaderPE Header

.text pages.text pages

DramCache

NV Cache

.data pages.data pages

由 由 NV Cache NV Cache 存取存取

ReadyDriveReadyDrive 的好處的好處

• 效能效能– 更快的開機速度更快的開機速度– 更快速的休眠與回復動作更快速的休眠與回復動作– 減少磁碟的搜尋並增加 減少磁碟的搜尋並增加 IO IO 速度速度

• 省電省電 // 增加電池續航力增加電池續航力• 增加可靠性增加可靠性

ReadyDriveReadyDrive 的管理設定的管理設定

• 新的 新的 ATA ATA 指令來管理 指令來管理 NV CacheNV Cache– Identify hybrid hard disk functionalityIdentify hybrid hard disk functionality– Add/Remove LBAs from NV Cache “pinned set”Add/Remove LBAs from NV Cache “pinned set”– Query NV Cache pinned setQuery NV Cache pinned set– Enter/Leave power saving modeEnter/Leave power saving mode

• 透過透過 Group PolicyGroup Policy 來集中設定來集中設定

ReadyDriveReadyDrive 的群組原則管理的群組原則管理ReadyDriveReadyDrive 的群組原則管理的群組原則管理

ReadyBoost & ReadyDriveReadyBoost & ReadyDrive

System MemorySystem Memory

HDD PlatterHDD Platter

Read CacheRead Cache

ReadyBoostReadyBoost

Write Write CacheCache

OEM OEM PinningPinning

Boot Boot DataData

Read Read CacheCache

ReadyDriveReadyDrive

NVRAMNVRAM

RAMRAM

MagneticMagnetic

ReadyBoost & ReadyDriveReadyBoost & ReadyDrive

• ReadyBoost ReadyBoost 和和 ReadyDriveReadyDrive 是互補的技術是互補的技術• 都利用都利用 SuperFetchSuperFetch• ReadyDriveReadyDrive

– 協助狀態的轉換協助狀態的轉換– 儲存、加速某些資料使用儲存、加速某些資料使用 – 增加可靠性增加可靠性– 節省電力節省電力

• ReadyBoostReadyBoost– 大量的大量的 read cacheread cache– 減輕實體記憶體的負擔減輕實體記憶體的負擔

I/O I/O 優先權優先權

I/O I/O 優先權優先權

• 背景的背景的 I/O (I/O ( 例如例如 ::病毒掃瞄、磁碟重組、病毒掃瞄、磁碟重組、…… ) ) 會會造成前景的應用程式反應變慢造成前景的應用程式反應變慢

• 在過去,只能在執行序的 在過去,只能在執行序的 CPU CPU 優先權上做調整優先權上做調整• Windows Vista Windows Vista 提供兩類的 提供兩類的 I/O I/O 優先權設定優先權設定

– I/O I/O 優先權優先權– I/O I/O 頻寬保留頻寬保留

• I/O I/O 優先權的功能在優先權的功能在 ATAPI ATAPI 和 和 USB USB 儲存裝置驅儲存裝置驅動程式中實作動程式中實作

I/OI/O 優先權優先權

• I/O I/O 優先權是基於發出 優先權是基於發出 I/O I/O 要求的執行序本身的優要求的執行序本身的優先權,也可以明確指定 先權,也可以明確指定 I/O I/O 的優先權的優先權– 五個等級五個等級 : Critical, High, Normal, Low, Very Low: Critical, High, Normal, Low, Very Low

• High High 和 和 Low Low 這兩個等級沒有實作這兩個等級沒有實作• Critical Critical 只被用於記憶體管理員只被用於記憶體管理員

– 儲存在儲存在 I/O Request Packet (IRP) I/O Request Packet (IRP) 的欄位中的欄位中• 行程或執行序可以透過呼叫行程或執行序可以透過呼叫 SetPriorityClass SetPriorityClass 和 和

SetThreadPriority SetThreadPriority 來降低 來降低 I/O I/O 優先權優先權– ““Background mode”Background mode”– Windows Vista Windows Vista 背景工作會使用到,例如索背景工作會使用到,例如索引、引、 Windows Defender Windows Defender 掃瞄掃瞄

• 驅動程式可以使用驅動程式可以使用– IoGetIoPriorityHint, IoSetIoPriorityHintIoGetIoPriorityHint, IoSetIoPriorityHint

I/OI/O 頻寬保留頻寬保留• 多媒體串流應用程式 多媒體串流應用程式 ((例如例如 : Windows Media : Windows Media

Player - WMP) Player - WMP) 可以要求 可以要求 I/O I/O 頻寬的保證頻寬的保證• 以檔案為單位來指定以檔案為單位來指定

– GetFileBandwidthReservationGetFileBandwidthReservation– SetFileBandwidthReservationSetFileBandwidthReservation

• I/O I/O 系統回報給應用程式系統回報給應用程式– 最佳的傳輸大小最佳的傳輸大小– 尚未完成的 尚未完成的 I/O I/O 數目數目

WMPWMP

未保留的 未保留的 I/OI/O

保留的 保留的 I/OI/O

WMPWMP WMPWMPWMPWMP

效能診斷工具效能診斷工具

現有工具的限制現有工具的限制

• 詳細度與協助解決不足 詳細度與協助解決不足 • 被動性被動性

– 紀錄檔是好的使用方式,可是欠缺分析工具、紀錄檔是好的使用方式,可是欠缺分析工具、不夠友善不夠友善

PerformanceAnalyzerWindows

DiagnosticInfrastructure

System Event Log

CKCL - ETW Kernel Events

Performance Diagnostics ArchitecturePerformance Diagnostics Architecture

效能調整與診斷效能調整與診斷• 降低效能問題診斷的負擔降低效能問題診斷的負擔

– 更方便診斷並協助解決更方便診斷並協助解決• 透過透過 Circular Kernel Context Logger (CKCL)Circular Kernel Context Logger (CKCL) 來收來收

集資料集資料– 提供系統最近的活動紀錄提供系統最近的活動紀錄– 自動分析自動分析– 分析結果放置於系統事件記錄分析結果放置於系統事件記錄

效能診斷工具效能診斷工具Resource MonitorResource MonitorEvent ViewerEvent ViewerReliability and PerformanceReliability and Performance

效能診斷工具效能診斷工具Resource MonitorResource MonitorEvent ViewerEvent ViewerReliability and PerformanceReliability and Performance

講題總結講題總結

• 改進的記憶體管理與使用改進的記憶體管理與使用– SuperFetchSuperFetch– ReadyBootReadyBoot– ReadyDriveReadyDrive

• 新的效能管理診斷工具協助更佳的處理新的效能管理診斷工具協助更佳的處理

For More Information…For More Information…

• TechNetTechNet– www.microsoft.com/www.microsoft.com/taiwan/technettaiwan/technet

• Windows VistaWindows Vista– www.microsoft.com/taiwan/windowsvistawww.microsoft.com/taiwan/windowsvista

• Windows Vista: Resources for IT ProfessionalWindows Vista: Resources for IT Professional– www.microsoft.com/technet/windowsvista/default.mspxwww.microsoft.com/technet/windowsvista/default.mspx

• MVP CommunityMVP Community 社群網站社群網站– www.microsoft.com/taiwan/communitywww.microsoft.com/taiwan/community

緊接的 緊接的 Vista Vista 講題講題

• 十月份十月份10/13 10/13 使用使用 Windows VistaWindows Vista 來建置穩固可靠的工作來建置穩固可靠的工作環境環境

10/17 Windows Vista10/17 Windows Vista 的系統安全建置指南的系統安全建置指南10/24 Windows Vista10/24 Windows Vista 網路架構、防火牆與網路架構、防火牆與 IPSecIPSec功能改進功能改進

Recommended