minperm%, maxperm%和maxclient%
(1) minperm%
如果由檔案頁面佔有的實際記憶體的百分比低於這個級別,則頁面替換演算法既替換檔案頁面也替換計算頁面,而不管repage rate。
# vmo -a |grep minperm%
minperm% = 20
[@more@](1) minperm%
如果由檔案頁面佔有的實際記憶體的百分比低於這個級別,則頁面替換演算法既替換檔案頁面也替換計算頁面,而不管repage rate。
# vmo -a |grep minperm%
minperm% = 20
(2) maxperm%
如果由檔案頁面佔有的實際記憶體的百分比高於這個級別,則頁面替換演算法僅替換檔案頁面。
# vmo -a |grep maxperm%
maxperm% = 80
(3) maxclient%
如果由檔案頁面佔有的實際記憶體的百分比高於這個級別,則頁面替換演算法僅替換客戶機頁面。
# vmo -a |grep maxclient%
maxclient% = 80
當由檔案頁面佔有的實際記憶體的百分比處於 minperm 和 maxperm 之間時,VMM
通常只替換檔案頁面,但是如果檔案頁面的重新調頁(repaging)率高於計算頁面的重新調頁率的話,計算頁面也被替換。頁面替換演算法的主要意圖是確保
計算頁面得到合理的待遇。例如,對於可能會很快再次使用的程式文字頁,順序讀取長的資料檔案到記憶體中應該不會使它們丟失。對閾值和重新調頁率使用頁面替換
演算法可確保合理地對待這兩種型別的頁面,但仍稍微偏向有利於計算頁面的一方。
透過vmstat -v可以看到當前persistent或者client page的數目和百分比,可以作為系統調優的依據.
# vmstat -v
4079616 memory pages
3870685 lruable pages
601736 free pages
2 memory pools
535883 pinned pages
80.0 maxpin percentage
20.0 minperm percentage
80.0 maxperm percentage
66.2 numperm percentage
2565739 file pages
0.0 compressed percentage
0 compressed pages
66.7 numclient percentage
80.0 maxclient percentage
2583086 client pages
0 remote pageouts scheduled
28222 pending disk I/Os blocked with no pbuf
0 paging space I/Os blocked with no psbuf
2740 filesystem I/Os blocked with no fsbuf
0 client filesystem I/Os blocked with no fsbuf
106338 external pager filesystem I/Os blocked with no fsbuf
List-based LRU (page_steal_method)
在AIX 5.3, LRU演算法可以用lists或者page frame table,在AIX 5.3之前,只有page frame
table的演算法, The list-based algorithm provides a list of pages to scan for
each type of segment. 下面是段型別的列表:
# vmo -a |grep page_steal_method
page_steal_method = 0
如果page_steal_method = 1, 將採用list-based LRU演算法, 如果page_steal_method
parameter 為 0, 將採用physical-address-based scanning的方式.
page_steal_method引數值只有在bosboot and reboot後生效.
# vmo -L page_steal_method
NAME CUR DEF BOOT MIN MAX UNIT TYPE
DEPENDENCIES
-------------------------------------------------------------------------------
page_steal_method 0 0 0 0 1 boolean B
-------------------------------------------------------------------------------
strict_maxperm
預設為0. 當strict_maxperm 設定成 1, places a hard limit on how much memory
is used for a persistent file cache by making the maxperm value be the
upper limit for this file cache. 當達到上線的時候least recently used
(LRU)將執行在persistent pages上.
# vmo -a |grep strict_maxperm
strict_maxperm = 0
Enhanced JFS file system cache 相關的引數: maxclient, strict_maxclient和lru_file_repage
Enhanced JFS file system cache使用client page來作為buffer
cache,透過maxclient%來控制page stealing. 如果strict_maxlient設定為0,
maxclient%將用來作為一個soft limit. 也就是說client
pages可以超過maxclient引數,如果超過這個值,只有client file page被stolen.
當lru_file_repage設定為1的時候,如果client pages的數目介於minperm和maxclient之間,
LRU演算法將參考repage的計數. 最近沒有被referenced的page將被stolen. If the value of the
file repage counter is higher than the value of the computational
repage counter, computational pages, which are the working storage, are
selected for replacement. If the value of the computational repage
counter exceeds the value of the file repage counter, file pages are
selected for replacement.
當lru_file_repage設定為0的時候, 如果client pages的數目大於minperm,將選擇file pages被替換.如果小於minperm,任何沒有被referenced的page將被替換.
注意:maxclient同樣影響NFS client和compressed pages.
# vmo -a |grep lru_file_repage
lru_file_repage = 1
# vmo -a |grep strict_maxclient
strict_maxclient = 1
工程經驗
記憶體調優主要集中在幾個關鍵引數中,往往這幾個關鍵引數就能很大地提高系統的記憶體使用效能. 這幾個引數是minperm%, maxperm%, maxclient%和lru_file_repage.
原則:首先了解你的應用型別,是檔案讀寫型還是資料庫型別. 儘量保證你的應用執行所需要的資料充分地利用實體記憶體. 具體的工程Tips例子請參見記憶體調優的工程經驗篇
如果由檔案頁面佔有的實際記憶體的百分比低於這個級別,則頁面替換演算法既替換檔案頁面也替換計算頁面,而不管repage rate。
# vmo -a |grep minperm%
minperm% = 20
[@more@](1) minperm%
如果由檔案頁面佔有的實際記憶體的百分比低於這個級別,則頁面替換演算法既替換檔案頁面也替換計算頁面,而不管repage rate。
# vmo -a |grep minperm%
minperm% = 20
(2) maxperm%
如果由檔案頁面佔有的實際記憶體的百分比高於這個級別,則頁面替換演算法僅替換檔案頁面。
# vmo -a |grep maxperm%
maxperm% = 80
(3) maxclient%
如果由檔案頁面佔有的實際記憶體的百分比高於這個級別,則頁面替換演算法僅替換客戶機頁面。
# vmo -a |grep maxclient%
maxclient% = 80
當由檔案頁面佔有的實際記憶體的百分比處於 minperm 和 maxperm 之間時,VMM
通常只替換檔案頁面,但是如果檔案頁面的重新調頁(repaging)率高於計算頁面的重新調頁率的話,計算頁面也被替換。頁面替換演算法的主要意圖是確保
計算頁面得到合理的待遇。例如,對於可能會很快再次使用的程式文字頁,順序讀取長的資料檔案到記憶體中應該不會使它們丟失。對閾值和重新調頁率使用頁面替換
演算法可確保合理地對待這兩種型別的頁面,但仍稍微偏向有利於計算頁面的一方。
透過vmstat -v可以看到當前persistent或者client page的數目和百分比,可以作為系統調優的依據.
# vmstat -v
4079616 memory pages
3870685 lruable pages
601736 free pages
2 memory pools
535883 pinned pages
80.0 maxpin percentage
20.0 minperm percentage
80.0 maxperm percentage
66.2 numperm percentage
2565739 file pages
0.0 compressed percentage
0 compressed pages
66.7 numclient percentage
80.0 maxclient percentage
2583086 client pages
0 remote pageouts scheduled
28222 pending disk I/Os blocked with no pbuf
0 paging space I/Os blocked with no psbuf
2740 filesystem I/Os blocked with no fsbuf
0 client filesystem I/Os blocked with no fsbuf
106338 external pager filesystem I/Os blocked with no fsbuf
List-based LRU (page_steal_method)
在AIX 5.3, LRU演算法可以用lists或者page frame table,在AIX 5.3之前,只有page frame
table的演算法, The list-based algorithm provides a list of pages to scan for
each type of segment. 下面是段型別的列表:
- Working
- Persistent
- Client
- Compressed
# vmo -a |grep page_steal_method
page_steal_method = 0
如果page_steal_method = 1, 將採用list-based LRU演算法, 如果page_steal_method
parameter 為 0, 將採用physical-address-based scanning的方式.
page_steal_method引數值只有在bosboot and reboot後生效.
# vmo -L page_steal_method
NAME CUR DEF BOOT MIN MAX UNIT TYPE
DEPENDENCIES
-------------------------------------------------------------------------------
page_steal_method 0 0 0 0 1 boolean B
-------------------------------------------------------------------------------
strict_maxperm
預設為0. 當strict_maxperm 設定成 1, places a hard limit on how much memory
is used for a persistent file cache by making the maxperm value be the
upper limit for this file cache. 當達到上線的時候least recently used
(LRU)將執行在persistent pages上.
# vmo -a |grep strict_maxperm
strict_maxperm = 0
Enhanced JFS file system cache 相關的引數: maxclient, strict_maxclient和lru_file_repage
Enhanced JFS file system cache使用client page來作為buffer
cache,透過maxclient%來控制page stealing. 如果strict_maxlient設定為0,
maxclient%將用來作為一個soft limit. 也就是說client
pages可以超過maxclient引數,如果超過這個值,只有client file page被stolen.
當lru_file_repage設定為1的時候,如果client pages的數目介於minperm和maxclient之間,
LRU演算法將參考repage的計數. 最近沒有被referenced的page將被stolen. If the value of the
file repage counter is higher than the value of the computational
repage counter, computational pages, which are the working storage, are
selected for replacement. If the value of the computational repage
counter exceeds the value of the file repage counter, file pages are
selected for replacement.
當lru_file_repage設定為0的時候, 如果client pages的數目大於minperm,將選擇file pages被替換.如果小於minperm,任何沒有被referenced的page將被替換.
注意:maxclient同樣影響NFS client和compressed pages.
# vmo -a |grep lru_file_repage
lru_file_repage = 1
# vmo -a |grep strict_maxclient
strict_maxclient = 1
工程經驗
記憶體調優主要集中在幾個關鍵引數中,往往這幾個關鍵引數就能很大地提高系統的記憶體使用效能. 這幾個引數是minperm%, maxperm%, maxclient%和lru_file_repage.
原則:首先了解你的應用型別,是檔案讀寫型還是資料庫型別. 儘量保證你的應用執行所需要的資料充分地利用實體記憶體. 具體的工程Tips例子請參見記憶體調優的工程經驗篇
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/25462274/viewspace-2125332/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 關於aix的maxperm,minperm和lru_file_repageAI
- AIX maxperm引數導致監聽問題AI
- ../和./和/的區別
- 路徑中./和../和/
- !=和<>
- #和&
- linux中/bin和/sbin和/usr/bin和/usr/sbinLinux
- redis的安裝和啟動和檢測和停止Redis
- 深度解析 Delegate 和 Notification 和 KVO
- ♻️同步和非同步;並行和併發;阻塞和非阻塞非同步並行
- xftp和xshell,xftp和xshell的下載和安裝FTP
- 找工作學習筆記1------=和==、&和&&、|和||的區別筆記
- workman 和swoole 區別 和異同
- @NotEmpty和@NotBlank和@NotNull小結Null
- 檔案路徑問題( ./ 和 ../ 和 @/ )
- csv和excel讀取和下載Excel
- Cookie 和 Session 關係和區別CookieSession
- 堆和棧的概念和區別
- js中的typeof和instanceof和===JS
- hbase和zookeeper的安裝和部署
- JSF和Struts、Tiles Portlets和TapestryJS
- oracle中關於in和exists,not in 和 not existsOracle
- js == 和 ===JS
- 字首和
- XML基本操作-建立(DOM和LOINQ)和LINQ查詢和儲存XML
- 函式fgets和fputs、fread和fwrite、fscanf和fprintf用法小結函式
- DOORS和Reqtify — 需求管理和需求追溯工具QT
- Golang 陣列和切片 Slice 和 Map 使用Golang陣列
- count (*) 和 count (1) 和 count (列名) 區別
- DOORS 和Reqtify — 需求管理和需求追溯工具QT
- MySQL 裡的 find_in_set () 和 in () 和 likeMySql
- 淺談mouseenter和mouseover,mouseout和mouseleave
- 和AI談倫理、道德和謊言AI
- count(*) 和 count(1)和count(列名)區別
- ssr、ss和vpn介紹和區別
- Redis RDB和AOF取捨和選擇Redis
- 堆和棧的解釋和區別
- DOORS和Reqtify—需求管理和需求追溯工具QT