关于AIX 上VMO 调整参数及Memory 性能评估 二、Memory 性能评估 1、VMM 的管理简介 首先,还是简单讲解一下内存以及的 VMM 的一点工作原理。 内存和交换空间一般都是用页面来进行分配和管理的。在内存中存在两种类型的页面:计算页面(一般为可执行文件段中的页面)和文件页面(存储的数据文件的页面)。当我们执行程序或者读入数据的时候,内存中的页面就逐渐被占用。当空闲的内存只剩 maxfree 的时候,vmm的调页就被唤醒,通过调页算法,将内存中的页面转移到交换空间中。一直到空闲内存达到maxfree,才停止调页。 在这里,我们涉及到两个参数: 1) Minfree:最小空闲页链表尺寸。一旦低于该值,系统偷页以填充页链表,保证有足够的内存页面。偷页就是将不常用的页面替换出去。 2) Maxfree:最大空闲页链表尺寸。一旦高于该值,系统停止偷页。 如果发现空闲列表不足,可以用下面的方法增加 minfree 参数 #vmo -o minfree=1000 -o maxfree=1008 Setting maxfree to 1008 Setting minfree to 1000 #vmo –o minfree=1000 –o maxfree=1008 –P # -P 参数使修改永久生效 一般情况下,minfree 和 maxfree 通过下面的公式得到: maxfree=minmum(memory/128,128) ,minfree=maxfree-8 注意:在 AIX 5.2 之前的版本请使用/usr/samples/kernel/vmtune 命令。 #/usr/samples/kernel/vmtune –f 1000 –F 1008 另外,关于内存的使用,我们还有两个经常碰到的参数需要关注: Minperm:用户I/O 文件访问的最小缓冲区页数 Maxperm:用户I/O 文件访问的最大缓冲区页数 Minperm 和maxperm 这两个参数的默认值分别为20%和80%。在这里主要与性能相关的是maxperm 参数。maxperm 参数指定了文件页面可以占用内存的上限,因为文件页面不主动释放,所以很容易造成内存的文件页面过高的占用,导致其他的应用内存使用紧张。调整参数值的方法如下: #vmo -o maxperm%=80 -o minperm%=20 Setting minperm% to 20 Setting maxperm% to 80 在AIX 5.2 之前的版本请使用/usr/samples/kernel/vmtune 命令。 #/usr/samples/kernel/vmtune -p 20–P 80 将 min 和max 的值分别设置为20%和80%。 查看当前的参数设置方法如下: 1)vmo –a 显示当前所有的参数设置 在AIX 5.2 之前的版本请使用 # /usr/samples/kernel/vmtune 显示当前所有的参数设置 #vmo -a cpu_sca...