AIX內(nèi)存調(diào)整命令簡介
今天,我們來學習關(guān)于AIX內(nèi)存的知識。AIX內(nèi)存管理在不同的操作系統(tǒng)中會有不同的實現(xiàn)。AIX 系統(tǒng)使用 VMM(Virtual Memory Manager) 實現(xiàn)物理內(nèi)存的管理,處理應(yīng)用程序的AIX內(nèi)存分配請求與內(nèi)存回收。
AIX內(nèi)存和交換空間一般都是通過頁面來進行分配和管理,VMM 將所有的內(nèi)存段劃分為若干個頁面,Power4 芯片支持 4K,64K,和 16M 大小的虛擬內(nèi)存頁, Power5 芯片支持 4K,64K,16M,16G 大小的虛擬內(nèi)存頁,每個頁面的缺省大小是 4KB。虛擬AIX內(nèi)存頁面越大,對需要大內(nèi)存塊的應(yīng)用程序可以起到優(yōu)化作用,主要是提高 TLB 的命中率。
當我們執(zhí)行應(yīng)用程序的時候,內(nèi)存中的頁面會被逐漸的占用,這里我們設(shè)計兩個重要的參數(shù): Minfree( 最小空閑頁面的大小 ) 和 Maxfree( 最大空閑頁面的大小 )。當空閑的內(nèi)存達到 Minfree 大小的時候, VMM 的調(diào)頁算法將被喚醒,將AIX內(nèi)存中的頁面轉(zhuǎn)移到交換空間中, 知道空閑內(nèi)存達到 Maxfree,才停止調(diào)頁。
上面主要是對AIX內(nèi)存管理中所涉及到的的基本概念做了簡單的介紹說明,對于任何與AIX內(nèi)存相關(guān)的操作,了解這些概念都是非常必要的。
系統(tǒng)管理員在進行正確的優(yōu)化或者問題發(fā)生之前,必須首先監(jiān)視系統(tǒng),使用合適的工具捕獲基準數(shù)據(jù),并且知道如何進行分析工作。下面筆者將介紹 AIX 系統(tǒng)所提供的工具來監(jiān)控系統(tǒng)內(nèi)存的使用情況。
AIX內(nèi)存調(diào)整命令
與其他的子系統(tǒng)相比,內(nèi)存調(diào)整更為困難,但同時收到的效果往往更加顯著,特別是在那些尚未對各種內(nèi)存參數(shù)進行優(yōu)化的運行環(huán)境中。系統(tǒng)管理員可以通過vmo 命令動態(tài)的調(diào)整內(nèi)存參數(shù),進行內(nèi)存性能優(yōu)化方面的各種實踐。
vmo
Vmo 命令用來管理虛擬內(nèi)存可調(diào)試的參數(shù)。例如如果我們發(fā)現(xiàn)空閑AIX內(nèi)存不足, 可以使用下面的命令增加 Minfree 和 Maxfree 參數(shù):
清單 1. 使用 vmo 命令調(diào)整空閑的虛擬內(nèi)存最小和最大值
# vmo – o minfree=1024 – o maxfree=30070
Setting maxfree to 30070
Setting minfree to 1024
注:-p 參數(shù)能夠使修改永久生效,而且立即生效,不需要重啟,下次重啟設(shè)置仍然有效。例如 vmo -p – o minfree=1024 命令能夠永久設(shè)置空閑的虛擬內(nèi)存值為 1024
一般情況下,minfree 和 maxfree 的設(shè)定值可以通過下面的公式計算得到:
maxfree=minnum(memory/128,128)
minfree=maxfree/8
-a 參數(shù)能夠顯示當前所有的內(nèi)存參數(shù)設(shè)置,之后系統(tǒng)管理員可以對其中的任何參數(shù)進行調(diào)整,在此必須說明的是:對內(nèi)存參數(shù)的任何微小改動都有可能造成系統(tǒng)運行的不穩(wěn)定,所以系統(tǒng)管理員做的任何修改,都必須非常慎重并且對可能造成的影響有所了解。
我們對AIX內(nèi)存調(diào)整命令就介紹到這里了。謝謝大家的閱讀。