优化AIX7内存性能第一部分内存概述和内存参数的调优精Word格式文档下载.docx
- 文档编号:21780161
- 上传时间:2023-02-01
- 格式:DOCX
- 页数:8
- 大小:24.69KB
优化AIX7内存性能第一部分内存概述和内存参数的调优精Word格式文档下载.docx
《优化AIX7内存性能第一部分内存概述和内存参数的调优精Word格式文档下载.docx》由会员分享,可在线阅读,更多相关《优化AIX7内存性能第一部分内存概述和内存参数的调优精Word格式文档下载.docx(8页珍藏版)》请在冰豆网上搜索。
下面说明它的工作原理。
在AIX7中,将所有的虚拟内存段划分为若干个页面。
在AIX7中,每个页面的默认大小为4KB,但是可以根据使用的处理器环境在不同的范围内调整。
POWER5+或更高版本的处理器也可以使用64KB、16MB和16GB的页面大小。
POWER4架构也可以支持16MB的页面大小。
16MB的页面称为大页面,16GB称为超大页面,它们用于内存需求非常大的应用程序。
在POWER6中,引入了可变页面大小支持(VPSS,这意味着当应用程序需要更大的内存块时,系统将使用更大的页面。
可以在OS中同时使用不同的页面大小,不同的应用程序使用不同的页面大小。
另外,可以动态地改变页面大小,这会收集4KB页面以形
成64KB的页面。
这让应用程序能够访问更大的内存块,而不是许多小内存块,从而提高性能。
页面大小可以动态地从4KB改为64KB。
可以使用vmo调优工具管理VPSS的调优。
所分配的页面可以位于RAM或者分页空间(存储在磁盘上的虚拟内存。
VMM还维护一个称为空闲列表的对象,此对象定义为未分配的页帧。
它们用于处理缺页的情况。
通常存在非常少的未分配页面(可以自行配置,VMM使用这些页面来腾出空间并为其重新分配页帧。
使用VMM的页面置换算法来选择要重新分配页帧的虚拟内存页面。
这种分页算法决定对当前位于RAM中的哪些虚拟内存页面的页帧进行回收,并放回到空闲列表中。
AIX7使用所有可用的内存,除了那些配置为未分配并用作空闲列表的内存之外。
要重申的是,VMM的目的是管理RAM和虚拟页面的分配。
由此可以看出,它的目标是帮助最大限度地缩短缺页响应时间,并在可能的情况下减少虚拟内存的使用。
由于要在RAM和分页空间之间进行选择,在RAM可用的情况下,大多数人显然都更希望使用物理内存。
VMM还将虚拟内存段划分为两个不同的类别。
它们是使用计算内存的工作段和使用文件内存的持久段。
了解这两个类别之间的区别是非常重要的,因为这有助于实现系统的最优化。
计算内存
当进程对计算信息进行实际处理时,将使用计算内存。
这些工作段是临时的(暂时的,当进程终止或者页面被偷取时,这些工作段将不复存在。
它们没有对应的持久磁盘存储位置。
在许多情况下,当一个进程终止时,会释放其物理内存和分页空间。
在监视系统的过程中,当可用页面数量出现较大的峰值时,可以发现这种情况。
当空闲的物理内存较少时,可以将最近没有使用过的程序从RAM转移到分页空间,以帮助释放物理内存,从而完成更多的实际工作。
文件内存
与计算内存不同,文件内存使用持久段并在磁盘上有持久存储位置。
数据文件或者可执行程序通常都映射到持久段,而不是工作段。
数据文件可以与文件系统相关,如JFS、JFS2或NFS。
它们一直都位于内存中,直到文件被卸载、页面被偷取或者取消到文件的链接。
在将数据文件复制到RAM中之后,VMM控制何时对这些页面进行覆盖或者使用它们存储其他数据。
在可以选择的情况下,大多数人更希望将文件内存换出到磁盘,而不是换出计算内存。
当进程引用磁盘上的某个页面时,必须将其换入,这可能会导致将其他页面换出。
VMM一直在后台运行,尝试使用前面介绍的页面置换算法偷取最近没有引用过的页帧。
它还帮助检测系统颠簸,当内存量非常低并且不断地换入和换出页面以支持处理时,可能会出现系统颠簸。
VMM实际上采用一种内存负载控制算法,它可以检测系统是否出现颠簸并尝试解决这种情况。
如果不加以处理,系统颠簸可能会导致系统停滞,因为内核过分地关注于为页面腾出空间,而不是完成任何有实际意义的工作。
活动内存扩展
除了核心内存设置和环境之外,AIX7还可以利用POWER7CPU提供活动内存扩展(AME。
AME压缩内存中的数据,这样就可以在内存中保存更多的数据,还可以减少在装载数据时换出到磁盘的页面数量。
AME的配置针对各个LPAR,因此可以为数据库分区启用它,以便在内存中保存更多从磁盘读取的数据,同时对web服务器禁用它(对于web服务器,存储在内存中的信息经常要换出。
为了避免压缩所有信息,内存划分为两个池,一个压缩的池和一个不压缩的池。
AIX7会根据逻辑分区的工作负载和配置自动地调整这两个池的大小。
用压缩率定义压缩量,例如如果分配给LPAR的内存量是2048MB,可以指定压缩率为2.0,那么有效的内存容量就是4096MB。
因为不同的应用程序和环境能够采用不同的压缩率(例如,使用大量文本的应用程序可以受益于比较高的压缩率,可以使用amepat命令进行监视,判断对于给定的工作负载可能实现的压缩率。
在运行正常应用程序的同时,在后台以一定的时间间隔(以分钟为单位运行amepat一定的次数。
这会提供在LPAR中使用的压缩率的建议。
在清单1中可以看到一个示例。
清单1.获取活动内存扩展统计数据
CommandInvoked:
amepat11
Date/Timeofinvocation:
FriAug1311:
43:
45CDT2010
TotalMonitoredtime:
1mins5secs
TotalSamplesCollected:
1
SystemConfiguration:
---------------------
PartitionName:
l488pp065_pub
ProcessorImplementationMode:
POWER7
NumberOfLogicalCPUs:
4
ProcessorEntitledCapacity:
0.25
ProcessorMax.Capacity:
1.00
TrueMemory:
2.00GB
SMTThreads:
SharedProcessorMode:
Enabled-Uncapped
ActiveMemorySharing:
Disabled
ActiveMemoryExpansion:
SystemResourceStatistics:
Current
-------------------------------------------
CPUUtil(Phys.Processors0.04[4%]
VirtualMemorySize(MB1628[79%]
TrueMemoryIn-Use(MB1895[93%]
PinnedMemory(MB1285[63%]
FileCacheSize(MB243[12%]
AvailableMemory(MB337[16%]
ActiveMemoryExpansionModeledStatistics:
-------------------------------------------
ModeledExpandedMemorySize:
AchievableCompressionratio:
2.10
ExpansionModeledTrueModeledCPUUsage
FactorMemorySizeMemoryGainEstimate
---------------------------------------------------
1.00
2.00GB0.00KB[0%]0.00[0%]
1.141.75GB256.00MB[14%]0.00[0%]
ActiveMemoryExpansionRecommendation:
---------------------------------------
TherecommendedAMEconfigurationforthisworkloadistoconfiguretheLPARwithamemorysizeof1.75GBandtoconfigureamemoryexpansionfactor
of1.14.Thiswillresultinamemorygainof14%.Withthisconfiguration,theestimatedCPUusageduetoAMEisapproximately0.00physicalprocessors,andtheestimatedoverallpeakCPUresourcerequiredfortheLPARis0.04physicalprocessors.
NOTE:
amepat'
srecommendationsarebasedontheworkload'
sutilizationlevelduringthemonitoredperiod.Ifthereisachangeintheworkload'
sutilizationlevelorachangeinworkloaditself,amepatshouldberunagain.
amepat报告的活动内存扩展CPU使用量只是估计值。
根据工作负载不同,AME实际的CPU使用量可能更低或更高。
可以使用svmon工具监视LPAR中当前的压缩情况,见清单2。
清单2.使用svmon获取压缩统计数据
#svmon-G-Osummary=longame,unit=MB
Unit:
MB
ActiveMemoryExpansion
--------------------------------------------------------------------
SizeInuseFreeDXMSzUCMInuseCMInuseTMSzTMFr
1024.00607.91142.82274.96388.56219.35512.0017.4
CPSzCPFrtxfcxfCR
106.0718.72.001.462.50
在这里,DXMSz栏非常重要,它表示扩展内存的赤字。
当无法达到指定的压缩率,系统开始使用无法通过压缩节省出的内存时,就会出现赤字。
因此,应该注意不要指定过高的压缩率。
AME的另一个重要问题是,vmstat等大多数工具显示的内存大小通常是扩展内存的大小(即配置的内存乘以压缩率,而不是实际内存大小。
要想查明在不压缩的情况下可用的实际内存,应该在不同工具的输出中寻找真实内存大小。
回页首
调优
我们来研究一些可以用来调优VMM以优化系统性能的工具。
下面是一个环境示例,我们要在其中使用某种方法进行参数调优。
我要介绍一些需要注意的关键参数。
在AIX7中,由vmo工具负责VMM系统的可调参数的所有配置。
它替代AIX5中的vmtune工具。
更改页面大小可以最直接地提高性能,这是因为TranslationLookasideBuffer(TLB现在可以映射到更大的虚拟内存范围,从而提高TLB的命中率。
例如,对于高性能计算(HPC或Oracle®
数据库,无论是在线事务处理(OLTP还是数据仓库应用程序,都可以受益于大页面的使用。
这是因为Oracle使用大量的虚拟内存,特别是对于其系统全局区域(SGA,这个区域用于缓存表数据和其他东西。
清单3中的命令分配16777216字节以提供128个大页面。
清单3.分配字节
#vmo-r-olgpg_size=16777216lgpg_regions=128
如果希望与HPC和数据库应用程序中常用的共享内存结合使用大页面,还需要设置
v_pnshm值:
#vmo-p-ov_pinshm=1。
最重要的vmo设置是minperm和maxperm。
将这些参数设置为适合自己系统的值,以确保针对计算内存或者文件内存进行优化。
在大多数情况下,并不希望换出工作段,因为这样做会导致系统进行不必要的页面换出,会降低性能。
以前,它的工作方式非常简单:
如果文件页面数量(numperm%大于maxperm%,那么页面置换过程仅偷取文件页
誉天Cisco/Linux认证社区面。
当它小于minperm时,可以偷取文件页面和计算页面。
如果它的值介于两者之间,那么仅偷取文件页面,除非重新分页的文件页面的数量大于计算页面。
还有另一种考虑方法,如果numperm大于maxperm,就开始偷取持久的存储。
基于这种原理,以前调整minperm和maxperm参数的方法是,将maxperm设置为小于20,将minperm设置为小于等于10。
通常使用这种方法来优化数据库服务器。
现在调优方法完全不一样了。
新的方法将maxperm设置为一个比较高的值(例如,大lru_file_repage是在带ML4的于80)并确保将lru_file_repage参数设置为0。
,AIXVersion5.2和AIXVersion5.3的ML1中首次引入的。
这个参数表示是否应该考虑VMM重分页计数,以及它应该偷取什么类型的内存。
默认设置为1,所以需要更改它。
当将这个参数设置为0时,它告诉VMM希望仅偷取文件页面,而不是计算页面。
如果numperm小于minperm或者大于maxperm,那么情况会发生变化,这正是希望将maxperm设置得较高而将minperm设置得较低的原因。
我们不要忘记一个事实:
对这些值进行调优的主要原因是希望保护计算内存。
回到前面的示例,Oracle使用它自己的缓存,同时使用AIX7文件缓存只会产生混乱,所以希望停止它。
在这个场景中,如果降低maxperm,那么会错误地停止正在运行的应用程序缓存程序。
清单4设置这些关键的调优参数。
清单4.设置调优参数vmo-p-ominperm%=5vmo-p-omaxperm%=90vmo-p-omaxclient%=90尽管您已经习惯于更改这些参数,但是现在只需保持strict_maxperm和strict_maxclient的默认值即可。
如果将strict_maxperm改为1,那么它将对可用于持久文件缓存的内存量设置硬限制。
通过将maxperm值作为缓存的上限实现这一点。
现在,没有必要这样做,因为并不希望使用AIX7文件缓存,所以更改lru_file_repage参数是更有效的调优方法。
还有两个重要的参数需要注意,它们是minfree和maxfree。
如果空闲列表中的页面数降低到低于minfree参数,那么VMM开始偷取页面(仅仅是为了把页面添加到空闲列表中)这样做并不好。
,它将继续进行这种操作,直到空闲列表至少包含maxfree参数中指定的页面数。
在较早版本的AIX中,minfree设置为默认值120时,当常常会看到空闲列表为120或者更低,这会导致进行不必要的分页;
更糟糕的是,这会阻塞那些需要空闲帧的线程,因为这个值设置得过低了。
为了解决这个问题,AIXVersion5.3中,minfree和在将maxfree的默认值分别提高到了960和1088。
如果正在运行AIXVersion5.2或者更低的版本,建议采用下面的设置,可以使用清单5中的命令手动更改。
武汉誉天.独家授权Cisco/RHCE培训
誉天Cisco/Linux认证社区清单5.手动设置minfree和maxfree参数vmo-p-ominfree=960vmo-p-omaxfree=1088配置可变页面大小支持VPSS通过使用默认的4KB页面大小起作用。
假设给应用程序分配了16个4KB的块,当前所有的块都在使用,那么它们被提升为一个64KB的块。
重复执行这个过程,处理应用程序正在使用的连续16个4KB块的所有序列。
两个可配置参数控制VPSS的运行方式。
第一个参数启用多种页面大小支持。
通过vmo配置的vmm_support可调项设置VPSS的运行方式。
值表示只支持4KB和16MB的0页面大小。
值允许VMM使用处理器支持的所有页面大小。
值允许VMM对每个段使12用多种页面大小,这是所有全新安装的默认设置。
在启用多种页面大小支持的情况下,vmm_default_pspa参数控制提升为64KB页面需要多少个连续的4KB页面。
一些应用程序(尤其是使用大量内存的应用程序)使用64KB页面大小可能性能更好,即使它们不使用完整的64KB页面。
在这种情况下,可以使用vmm_default_pspa参数指定提升需要的4KB页面数小于16个,表示为百分数形式。
默认值0表示需要16个页面。
50表示只需要8个页面。
0值表示把所有4KB页面提升为64KB页面。
回页首结束语如前所述,在对AIX7进行优化或监视之前,必须建立一个基准。
在进行调优之后,必须捕捉数据并分析更改的结果。
如果没有这类信息,就无法真正了解调优工作的实际效果。
在本系列的第1部分中,我们讨论了使用VMM提升系统内存容量的效果。
还对一个Oracle系统进行了调优以优化内存子系统的使用。
研究了一些重要的内核参数、它们的作用以及如何对它们进行调优,包括如何最适当地使用可变页面大小支持。
第2部分重点关注系统监视的细节,以确定内存瓶颈并分析趋势和结果。
3部分重第点关注分页空间和对VMM进行调优以尽可能提高性能的其他方法。
参考资料学习武汉誉天.独家授权Cisco/RHCE培训
誉天Cisco/Linux认证社区•AIXmemoryaffinitysupport:
通过IBMSystemp™andAIX信息中心了解关于AIX内存的更多信息。
IBMRedbooks:
“DatabasePerformanceTuningonAIX”帮助系统设计人员、系统管理员和数据库管理员设计、规划、实现、维护、监视和优化AIX上的RelationalDatabaseManagementSystem(RDMBS,从而实现最佳性能。
"
Powertothepeople"
(developerWorks,2004年5月):
阅读这篇文章,以了解IBM在芯片制造方面的历史。
AIX中的处理器关联"
(developerWorks,2006年11月):
使用进程关联设置对线程进行绑定或取消绑定,这有助于找到麻烦的挂起或死锁问题的原因。
通过阅读这篇文章了解如何使用处理器关联对进程进行限制,让进程只在指定的CPU上运行。
CPUmonitoringandtuning"
(2002年3月):
了解如何使用标准的AIX工具帮助判断CPU瓶颈。
Operatingsystemanddevicemanagement:
IBM的这份文档向用户和系统管理员提供全面的系统管理和设备管理信息,可以帮助您在执行各种任务时选择适当的选项,比如系统备份和恢复系统、管理物理和逻辑存储以及调整分页空间。
nmon性能:
分析AIX和Linux®
性能的免费工具"
(developerWorks,2006年2月):
这个免费工具可以在一个屏幕上提供大量的信息。
nmonanalyser——生成AIX性能报告的免费工具"
(developerWorks,2006年4月):
通过阅读这篇文章,了解如何从nmon的输出生成各种便于报告的图表。
AIX7.1信息中心提供AIX操作系统的技术信息。
TheIBMAIXVersion6.1DifferencesGuide有助于了解AIX6.1中的变动。
AIXandUNIX专区:
developerWorks的“AIXandUNIX专区”提供了大量与AIX系统管理的所有方面相关的信息,您可以利用它们来扩展自己的UNIX技能。
AIXandUNIX新手入门:
访问“AIXandUNIX新手入门”页面可了解更多关于AIX和UNIX的内容。
AIXandUNIX专题汇总:
AIXandUNIX专区已经为您推出了很多的技术专题,为您总结了很多热门的知识点。
我们在后面还会继续推出很多相关的热门专题给您,为了方便您的访问,我们在这里为您把本
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 优化 AIX7 内存 性能 第一 部分 概述 参数 调优精