下面是在AIX平台上面关于SGA的大页面的配置与监控

1,aix支持的页的大小

   AIX支持4种页的大小,但是并不是每一个硬件平台都同时支持4种,可以使用下面的命令来查看

 
  
  1. pagesize -a  
  2.   
  3. 4096  
  4. 65536  
  5. 16777216  
  6. 17179869184

2,ORACLE启用大页的前提

   ORACLE有下面三种类型的内存支持大页SGA,.DATA,.TEXT,这里只介绍SGA,因为正常情况下我们也只配置SGA的。

   如果ORACLE要启用大页,那么ORACLE的user需要具有 CAP_BYPASS_RAC_VMM and CAP_PROPAGATE属性,如果是在RAC环境中,ROOT,GRID(11G)用户也要有CAP_BYPASS_RAC_VMM and CAP_PROPAGATE属性使用如下命令查看与修改

 
  
  1. [$(hostname):root:/u02]lsuser -a capabilities oracle 
  2. oracle 
  3. [$(hostname):root:/u02]chuser capabilities=CAP_BYPASS_RAC_VMM,CAP_PROPAGATE oracle  
  4. [$(hostname):root:/u02]set -o vi 
  5. [$(hostname):root:/u02]lsuser -a capabilities oracle                               
  6. oracle capabilities=CAP_BYPASS_RAC_VMM,CAP_PROPAGATE 

3,AIX于大页相当的参数

lgpg_regions控制大页的个数lgpg_size控制页的大小,使用如下命令查看与修改

 
  
  1. [$(hostname):root:/u02]vmo -L  lgpg_regions -L lgpg_size 
  2. NAME                      CUR    DEF    BOOT   MIN    MAX    UNIT           TYPE 
  3.      DEPENDENCIES 
  4. -------------------------------------------------------------------------------- 
  5. lgpg_regions              n/a    0      0      0                               B 
  6.      lgpg_size 
  7. -------------------------------------------------------------------------------- 
  8. lgpg_size                 n/a    0      0      0      16M    bytes             B 
  9.      lgpg_regions 
  10. -------------------------------------------------------------------------------- 
  11. [$(hostname):root:/u02] 
  12.  
  13. [$(hostname):root:/u02]vmo -p -o lgpg_size=16777216 -o lgpg_regions=64  

4,计算lgpg_regions的个数

 
  
  1. num_of_large_pages = INT((total_SGA_size-1)/16MB)+1 
  2. 比如32G的SGA num_of_large_pages=int(32*1024-1)/16+1=2048 

5,修改 lru_file_repage

 
  
  1. 修改lru_file_repage为0,默认是1 

6,查看oracle sga是否使用了large page

 

使用svmon命令来查看

 

 
  
  1. su - oracle 
  2. ps vg|grep ora_smon* 
  3. svmon -p PID 

由于写文档这里登陆的主机不支持large page,所以这里拿了网上的一个图片

7,使用vmstat来查看large page使用情况

 
  
  1. [$(hostname):root:/u02]vmstat -l     
  2.  
  3. System configuration: lcpu=1 mem=2048MB 
  4.  
  5. kthr    memory              page              faults        cpu     large-page  
  6. ----- ----------- ------------------------ ------------ ----------- ----------- 
  7.  r  b   avm   fre  re  pi  po  fr   sr  cy  in   sy  cs us sy id wa   alp   flp 
  8.  1  1 91018 408381   0   0   0 725 5081   0  29 1274  80  3  9 76 11     0     0