天天看点

[转载]SAP R3 性能调优—内存篇

一. 内存概览:

说明:

系统能够使用的内存大小(即虚拟内存)一定小于或等于物理内存与Swap容量的总和;

64位UNIX要求至少20 GB的swap file;

当同一服务器包含ORACLE数据库和SAP实例的系统(即Central System)时,使用的内存数量比例为30%和70%。即数据库将至少使用30%的物理内存,SAP至少使用70%的物理内存,当两者大于物理内存时,系统将请求磁盘上的swap开销;

所有其他应用服务器(DI)的内存设置应该大于等于100%的物理内存,当开销大于物理内存时,系统将请求磁盘上的swap开销;

其它内存区域可以通过映射来使用扩展内存区域。 

二. 扩展内存:

说明:

SAP扩展内存是SAP内存管理系统的核心;

em/initial_size_MB和em/max_size_MB决定扩展内存的初始大小和最大值;

em/blocksize_KB决定扩展内存的单位,开辟的扩展内存最大是8192个该单位。64位操作系统建议一个单位为4096(即4MB),表示最大能使用的扩展内为32GB内存,超过配额将使用swap开销;

em/address_space_MB为每个用户进程的用户上下文所能使用的最大扩展内存大小。该参数适用于Windows平台,UNIX平台不必设置,即屏蔽该参数后使用默认的缺省值为4GB;

em/global_area_MB除AIX和Windows外应该为255;

ztta/roll_extension表示每用户使用的扩展内存,建议最大配额为2GB。

 三. 内存分配的顺序:

说明:

Roll memory初始分配不能分配过大,建议分配仅1个字节。如果配额不够,由ztta/roo_area决定Roll area的大小; 

Extended memeory的大小分配原则请参考上文叙述; 

Heap memory的分配为2GB,超过配额将请求swap开销。 

 四. 结论:

用户使用SAP内存时,首先由进程开辟Roll area,通过共享内存的Roll Buffer来Roll in和Roll out,当Roll Buffer超出配额时,将会请求操作系统的Roll file来开销; 

当用户请求Extended memory(扩展内存)时,能够利用磁盘上的swap来开销; 

当扩展内存达到极限后,将利用开辟的Private memory来开销

[转载]SAP R3 性能调优—内存篇