




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、優化AIX 7內存性能第1部分內存概述和內存參數的調優簡介作為系統管理員,您應該已經對內存的基本知識非常熟悉了 ,如物理內存和虛擬內存之間的區別。您可能還不很清楚 AIX? 7中的虛擬內存管理器(VMM是如何工作的,以及它與性能調優之間的關系如何。在 AIX 7中,還有必要考慮虛擬內存的影 響以及在工作負載分區(WPAR中如何使用和應用它。本文將介紹一些可以用來優 化系統的監視工具,概述一些比較重要的AIX 7內存管理功能,包括虛擬內存管理器是如何工作的以及動態可變的頁面大小的影響。通過將這些增強功能的實現應用于 系統環境,可以在系統中優化內存性能。盡管您可能會發現,與其他子系統相比,內存的調
2、優更為困難,但是收到的效果往 往更加顯著。根據所運行的系統的類型,可能還有一些應該在系統中采用的特定的 調優建議。為了幫助說明這些內容,我將使用一個特定的示例并討論設置這些參數 的一些最佳實踐。在某些情況下,動態地調整一兩個參數可能會使系統的總體性能 產生顯著的變化。無論要對哪個子系統進行調優,有一個方面是相同的,即始終應該將系統調優看 作一個正在進行的過程。開始對系統進行監視的最佳時間是在首次將系統應用到生 產環境中并正常運行時(而不是等到用戶抱怨系統性能非常糟糕的時候。必須在系 統正常運行的時候建立系統運行狀態的基準,這樣在系統可能不正常時才能確認是 否真的有問題。另外,應該一次僅進行一項
3、更改,應該在更改之后盡快捕捉并分析數 據,以便判斷更改的影響(如果有影響的話。內存概述本節概述與AIX 7有關的內存知識。我們將介紹 AIX 7如何使用虛擬內存來尋址比系統物理內存更大的內存。還將解釋 VMM的工作方式以及它如何處理各種請求。任何有關內存和AIX 7的討論都必須先介紹 VMM。有時候,令AIX新手感到吃驚的是VMM處理系統的所有內存請求,而不僅僅是虛擬內存本身。在訪問 RAM時,VMM需要分配空間,即使是在系統中有足夠的物理內存的情況下。它實現分頁空間的預分配過程。通過使用這種方法,VMM在幫助管理實際內存方面扮演了重要的角色,而不僅是在虛擬內存方面。F面說明它的工作原理。在
4、AIX 7中,將所有的虛擬內存段劃分為若干個頁面。在AIX 7中,每個頁面的默認大小為4KB,但是可以根據使用的處理器環境在不同的范圍內調整。P0WER5+或更高版本的處理器也可以使用 64KB、16MB和 16GB的頁面大小。P0WER4架構也可以支持16MB的頁面大小。16MB的頁面稱為大頁面,16GB稱為超大頁面,它們用于內存需求非常大的應用程序。在P0WER6中,引入了可變頁面大小支持(VPSS,這意味著當應用程序需要更大 的內存塊時,系統將使用更大的頁面。可以在 OS中同時使用不同的頁面大小,不同的應用程序使用不同的頁面大小。另外,可以動態地改變頁面大小,這會收集4KB頁 面以形成6
5、4KB的頁面。這讓應用程序能夠訪問更大的內存塊,而不是許多小內存塊, 從而提高性能。頁面大小可以動態地從 4KB改為64KB??梢允褂胿mo調優工具管理VP SS的調優。所分配的頁面可以位于 RAM或者分頁空間(存儲在磁盤上的虛擬內存。VMM還維護一個稱為空閑列表的對象,此對象定義為未分配的頁幀。它們用于處理缺頁 的情況。通常存在非常少的未分配頁面(可以自行配置,VMM使用這些頁面來騰出 空間并為其重新分配頁幀。使用 VMM的頁面置換算法來選擇要重新分配頁幀的虛擬內存頁面。這種分頁算法決定對當前位于 RAM中的哪些虛擬內存頁面的頁幀進行回收,并放回到空閑列表中。AIX 7使用所有可用的內存,除
6、了那些配置為未分配并用作空閑列表的內存之外。要重申的是,VMM的目的是管理RAM和虛擬頁面的分配。由此可以看出,它 的目標是幫助最大限度地縮短缺頁響應時間,并在可能的情況下減少虛擬內存的使用。由于要在RAM和分頁空間之間進行選擇,在RAM可用的情況下,大多數人顯 然都更希望使用物理內存。VMM還將虛擬內存段劃分為兩個不同的類別。它們是 使用計算內存的工作段和使用文件內存的持久段。了解這兩個類別之間的區別是非 常重要的,因為這有助于實現系統的最優化。計算內存當進程對計算信息進行實際處理時,將使用計算內存。這些工作段是臨時的(暫 時的,當進程終止或者頁面被偷取時,這些工作段將不復存在。它們沒有對應
7、的持久 磁盤存儲位置。在許多情況下,當一個進程終止時,會釋放其物理內存和分頁空間。在監視系統的過程中,當可用頁面數量出現較大的峰值時,可以發現這種情況。當空 閑的物理內存較少時,可以將最近沒有使用過的程序從 RAM轉移到分頁空間,以幫助釋放物理內存,從而完成更多的實際工作。文件內存與計算內存不同,文件內存使用持久段并在磁盤上有持久存儲位置。數據文件 或者可執行程序通常都映射到持久段,而不是工作段。數據文件可以與文件系統相 關,如JFS、JFS2或NFS。它們一直都位于內存中,直到文件被卸載、頁面被偷取或 者取消到文件的鏈接。在將數據文件復制到 RAM中之后,VMM控制何時對這些頁面進行覆蓋或者
8、使用它們存儲其他數據。在可以選擇的情況下 ,大多數人更希望將文件內存換出到磁盤,而不是換出計算內存。當進程引用磁盤上的某個頁面時,必須將其換入,這可能會導致將其他頁面換 出。VMM 一直在后臺運行,嘗試使用前面介紹的頁面置換算法偷取最近沒有引用 過的頁幀。它還幫助檢測系統顛簸,當內存量非常低并且不斷地換入和換出頁面以 支持處理時,可能會出現系統顛簸。VMM實際上采用一種內存負載控制算法,它可 以檢測系統是否出現顛簸并嘗試解決這種情況。如果不加以處理,系統顛簸可能會 導致系統停滯,因為內核過分地關注于為頁面騰出空間,而不是完成任何有實際意義 的工作?;顒觾却鏀U展除了核心內存設置和環境之外,AIX
9、 7還可以利用P0WER7 CPU提供活動內存擴展(AME。AME壓縮內存中的數據,這樣就可以在內存中保存更多的數據,還可以減少在裝載數據時換出到磁盤的頁面數量。 AME的配置針對各個LPAR,因此可以為數據庫 分區啟用它,以便在內存中保存更多從磁盤讀取的數據,同時對web服務器禁用它(對 于web服務器,存儲在內存中的信息經常要換出。為了避免壓縮所有信息,內存劃分為兩個池,一個壓縮的池和一個不壓縮的池。AIX 7會根據邏輯分區的工作負載和配置自動地調整這兩個池的大小。用壓縮率定義壓縮量,例如如果分配給LPAR的內存量是2048MB,可以指定壓縮率為2.0,那么 有效的內存容量就是4096MB
10、。因為不同的應用程序和環境能夠采用不同的壓縮率(例如,使用大量文本的應用程序可以受益于比較高的壓縮率,可以使用amepat命令進行監視,判斷對于給定的工作負載可能實現的壓縮率。在運行正常應用程序的同時,在后臺以一定的時間間隔(以分鐘為單位運行amepat定的次數。這會提供在 看到一個示例。LPAR中使用的壓縮率的建議。在 清單1中可以清單1.獲取活動內存擴展統計數據Comma nd Inv oked : ame pat 1 1Date/Time of in vocation : Fri Aug 13 11:43:45 CDT 2010Total Mon itored time : 1 mi n
11、s 5 secsTotal Sam pies Collected : 1System Con figurati on:Partitio n Name : 1488pp065_pubProcessor Imp leme ntatio n Mode : PO WER7Number Of Logical C PUs : 4P rocessor En titled Cap acity : 0.25Processor Max. Ca pacity : 1.00True Memory : 2.00 GBSMT Threads : 4Shared P rocessor Mode : En abled-U n
12、cappedActive Memory Shari ng : DisabledActive Memory Expansion : DisabledSystem Resource Statistics: Curre ntCPU Util (P hys. P rocessors 0.04 4%Virtual Memory Size (MB 1628 79%True Memory In-Use (MB 1895 93%Pinned Memory (MB 1285 63%File Cache Size (MB 243 12%Available Memory (MB 337 16%Active Memo
13、ry Expansion Modeled Statistics :Modeled Expanded Memory Size : 2.00 GBAchievable Comp ressi on ratio :2.10Expan sion Modeled True Modeled CPU UsageFactor Memory Size Memory Gai n Estimate1.002.00 GB 0.00 KB 0% 0.00 0%1.14 1.75 GB 256.00 MB 14% 0.00 0%Active Memory Expansion Recomme ndati on:The rec
14、omme nded AME con figurati on for this workload is to con figure the LPAR with a memory size of 1.75 GB and to con figure a memory expansion factorof 1.14. This will result in a memory gain of 14%. With this con figurati on, the estimated CPU usage due to AME is app roximately 0.00 p hysical p roces
15、sors, and the estimated overall p eak CPU resource required for the LPAR is 0.04 p hysical p rocessors.NOTE: ame pats recomme ndati ons are based on the workloads utilizati on levelduri ng the mon itored p eriod. If there is a cha nge in the workloads utilizatio n level or a cha nge in workload itse
16、lf, ame pat should be run aga in.amepat報告的活動內存擴展CPU使用量只是估計值。根據工作負載不 同,AME實際的CPU使用量可能更低或更高??梢允褂胹vmon工具監視LPAR中當前的壓縮情況,見清單2。清單2.使用svmon獲取壓縮統計數據# svm on -G -O summary=lo ngame,u nit=MBUnit: MBActive Memory ExpansionSize Inuse Free DXMSz UCMI nuse CMI nuse TMSz TMFr1024.00 607.91 142.82 274.96 388.56 219
17、.35 512.00 17.4CPSz CPFr txf cxf CR106.07 18.7 2.00 1.46 2.50在這里QXMSz欄非常重要,它表示擴展內存的赤字。當無法達到指定的壓縮 率,系統開始使用無法通過壓縮節省出的內存時,就會出現赤字。因此,應該注意不要 指定過高的壓縮率。AME的另一個重要問題是,vmstat等大多數工具顯示的內存大小通常是擴展內 存的大小(即配置的內存乘以壓縮率,而不是實際內存大小。要想查明在不壓縮的情 況下可用的實際內存,應該在不同工具的輸出中尋找真實內存大小。回頁首調優我們來研究一些可以用來調優 VMM以優化系統性能的工具。下面是一個環境示例,我們要在其
18、中使用某種方法進行參數調優。我要介紹一些需要注意的關鍵 參數。在AIX 7中,由vmo工具負責VMM系統的可調參數的所有配置。它替代 AIX 5中的 vmt une工具。更改頁面大小可以最直接地提高性能,這是因為Tran slation Lookaside Buffer (TLB現在可以映射到更大的虛擬內存范圍,從而提高TLB的命中率。例如,對于高 性能計算(HPC或Oracle ?數據庫,無論是在線事務處理(OLTP還是數據倉庫應用程 序,都可以受益于大頁面的使用。這是因為 Oracle使用大量的虛擬內存,特別是對于其系統全局區域(SGA,這個區域用于緩存表數據和其他東西。清單3中的命令分配
19、16777216字節以提供128個大頁面。清單3.分配字節# vmo -r -o Igp g_size=16777216 Igp g_regio ns=128如果希望與HPC和數據庫應用程序中常用的共享內存結合使用大頁面,還需要 設置v_pn shm 值:# vmo -p -o v_pin shm=1。最重要的vmo設置是mi np erm和max perm。將這些參數設置為適合自己系統 的值,以確保針對計算內存或者文件內存進行優化。在大多數情況下,并不希望換出工作段,因為這樣做會導致系統進行不必要的頁面換出,會降低性能。以前,它的工作 方式非常簡單:如果文件頁面數量(n um perm%大于
20、max perm%那么頁面置換過程僅 偷取文件頁譽天 Cisco /Linux 認證社區 面。當它小于 minperm 時,可以偷取文件頁面和計算頁面。如果它的值介于兩者之間,那么僅偷取文件頁面,除非重新分頁的文件頁面的數量大于計算頁面。還有另一種考慮 方法,如果num perm大于max perm,就開始偷取持久的存儲。基于這種原理,以前調 整 minperm 和 maxperm 參數的方法是,將 maxperm 設置為小于 20,將 minperm 設 置為小于等于10。通常使用這種方法來優化數據庫服務器。現在調優方法完全不一樣了。新的方法將 max perm設置為一個比較高的值(例如,大
21、lru_file_re page是 在帶ML4的于80)并確保將lru_file_repage參數設置為0。,AIX Version 5.2 和AIX Version 5.3的ML1中首次引入的。這個參數表示是否應該考慮VMM重分頁計數,以及它應該偷取什么類型的內存。默認設置為1,所以需要更改它。當將這個參數設置為0時,它告訴VMM希望僅偷取文件頁面,而不是計算頁面。如果 numperm小于 mi np erm 或者大于 maxp erm, 那么情況會發生變化,這正是希望將max perm設置得較高而將minp erm設置得較低的原因。我們不要忘記一個事 實:對這 些值進行調優的主要原因是希望
22、保護計算內存。回到前面的示例,Oracle使用它自己 的緩存,同時使用AIX 7文件緩存只會產生混亂,所以希望停止它。 在這個場景中,如果降低max perm,那么會錯誤地停止正在運行的應用程序緩存 程序。清單4設置這些關鍵的調優參數。清單4.設置調優參數vmo -p -ominp erm%=5 vmo -p -o maxp erm%=90 vmo -p -o maxclie nt%=90 盡管您已經習慣于 更改這些參數,但是現在只需保持 strict_max perm和strict_maxclie nt的默認值即 可。如果將strict_maxperm改為1,那么它將對可用于持久文件緩存的內
23、存量設置 硬限制。通過將max perm值作為緩存的上限實現這一點?,F在,沒有必要這樣做,因為并不希望使用AIX 7文件緩存,所以更改lru_file_re page參數是更有效的 調優方法。還有兩個重要的參數需要注意,它們是 minfree和maxfree。如果空閑列表中的頁面 數降低到低于minfree參數,那么VMM開始偷取頁面(僅僅是為 了把頁面添加到空閑 列表中)這樣做并不好。,它將繼續進行這種操作, 直到 空閑列表至少包含 maxfree參 數中指定的頁面數。 在較早版本的AIX中,minfree 設置為默認值120時,當常常會看到空閑列表為120或者更低,這會導致進行不 必要的分
24、頁;更糟糕的是,這會阻塞那些需要空閑幀的線程,因為這個值設置得 過低了。為了解決這個問題, AIX Version 5.3中,minfree和在將maxfree的默 認值分別提高到了 960和1088。如果正在運行AIX Version 5.2或者 更低的版本, 建議采用下面的設置,可以使用 清單5中的命令手動更改。 武漢譽天.獨家授權Cisco / RHCE 培訓 譽天Cisco / Linux認證社區 清單5.手動設置minfree和maxfree參數www.51ch on gdia n.n et/BBS vmo -p -o min free=960 vmo -p -o maxfree=1
25、088酉 S置可變頁面大小支持VPSS通過使用默認的4KB頁面大小起作用。 假設給應用程序分配 了 16個4KB的塊,當前所有的塊都在使用,那么它們被提升為一個 64KB的 塊。重復執行這個過程,處理 應用程序正在使用的連續16個4KB塊的所有序 列。兩個可配置參數控制VPSS的運行方式。第一個參數啟用多種頁面大小支 持。通過vmo配置的vmm_support可調項設置VPSS的運行方式。 值表示只支持4KB和16MB的0頁面大小。值允許VMM使用處理器支持的所有頁面大小。值允許VMM對每個段使1 2用多種頁面大小,這是所有全新安裝的默認設置。在啟用多種頁面大小支持的情況下,vmm_defau
26、lt_pspa參數控制提升為64KB頁面需 要多少個連續的4KB頁面。一些應用程序(尤其是使用大量內存的應用程序) 使用64KB頁面大小可能性能更好,即使它們不使用完整的64KB頁面。在這種情況下,可以使用vmm_default_pspa參數指定提升需要的4KB頁面數小于16 個,表示為百分數形式。默認值 0表示需要16個頁面。50表示只需要8個頁面。0值表示把所有4KB頁面提升為64KB頁面?;仨撌捉Y束語如前所述,在對AIX 7進行優化或監視之前,必須建立一個基準。在進行調優之后,必須捕捉數據并分析更改的結果。如果沒有這類信息, 就無法真正了解調優工作的實際 效果。在本 系列的第1部分中,我
27、們討論了使用 VMM提升系統內存容量的效果。還對 一個Oracle系統進行了調優以優化內存子系統的使用。研究了一些重要的內核參數、 它們的作用以及如何對它們進行調優,包括如何最適當地使用可變頁面大小支持。第2部分重點關注系統監視的細節, 以確定內存瓶頸并分析趨勢和結果。 3部分 重第點關注分頁空間和對VMM進行調優以盡可能提高性能的其他方法。參考資 料學習 武漢譽天.獨家授權Cisco / RHCE培訓理員和數據庫管理員設計、規劃、實現、維護、監視和優化譽天 Cisco / Linux 認證社區? AIX memory affinity support:通過IBM System p? and
28、AIX 信息中心了解關于 AIX內存的更多信息。 IBM Redbooks:“ Database Performa nee Tuning on AIX幫助系統設計人員、系統管Po wer to the peopleIBM在芯片制造方面AIX 上的 RelationalDatabase Management System (RDMBS 從而實現最佳性能。(developerWorks, 2004年5月):閱讀這篇文章,以了解的歷史。AIX中的處理器關聯(developerWorks, 2006年11月):使用進程關 聯設置對線程進行 綁定或取消綁定,這有助于找到麻煩的掛起或死鎖問題的原因。通過閱
29、讀這篇文章了解如 何使用處理器關聯對進程進行限制,讓進程只在指 定的 CPU 上運行。CPU monitoring and tuning( 2002 年 3 月):了解如何使用 標準的 AIX 工具幫助判斷 CPU 瓶頸。Operating system and device management IBM的這份文檔向用戶和系統管理員提供全面的系統管理和設備管理信息,可以幫助您在執行各種任務時選擇適當的選項,比如系統備份和恢復系統、管理物理和邏輯存儲以及調整分頁空間。nmon性能:分析AIX和Linux?性能的免費工 具(developerWorks,2006年2月):這個免費工具可以在一個屏幕上提供大量 的信息。nmon analyser 生成AIX性能報告的免費工具(developerWorks,2006年4月):通過閱讀這篇文章,了解如何從 nmon的輸出生成各種便于報告的圖表。AIX 7.1信息中心 提供AIX操作系統的技術信息。Th
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 小孩畫畫活動方案
- 工廠活動首秀活動方案
- 少兒演講活動策劃方案
- 工區活動策劃方案
- 帆板運動活動方案
- 小學班會活動方案
- 工程作假活動方案
- 小班小吃活動方案
- 居民中秋活動方案
- 市扶貧日活動方案
- 從乙醇的結構看其發生化學反應時鍵的斷裂位置和方式
- 2024年江西贛州旅游投資集團限公司招聘13人高頻考題難、易錯點模擬試題(共500題)附帶答案詳解
- 小學信息技術所有知識點大匯總(最全)
- 好老師是民族的希望
- 項目建設審批流程課件
- 2024高海拔地區模塊化增壓式建筑技術標準
- 陜西史上最全的2024屆數學七年級第二學期期末綜合測試試題含解析
- 零碳建筑評價標準
- 烹飪面點職業生涯規劃書
- 低碳新型材料項目建議書
- 設計授權委托書
評論
0/150
提交評論