Memory allocation sequence to dialog work processes in SAP

  • What is the memory allocation sequence to dialog work processes in SAP?
  • When does a work process go to PRIV mode?
  • How to avoid or minimize work process going to PRIV mode ?
  • What are the SAP parameters used to define initial roll area, extended memory, heap memory, roll area ?
Memory allocation sequence to dialog work processes in SAP :

1. Initially , a defined roll area is used. This roll area is defined by the SAP parameter ztta/roll_first.

Usually ztta/roll_first is set to 1 in SAP so that only  necessary amount  is allocated to roll memory.

If the memory from the initial roll area( i.e. ztta/roll_first) is not sufficient for the user context then comes extended memory.

  1. Extended memory is used until  the extended memory is full or until the user quota is reached

Extended memory is defined by the SAP parameter em/initial_size_MB and the user quota for dialog work process is defined by the parameter ztta/roll_extension_dia.

If this memory is also not sufficient, then

  1. The rest of the roll area is used. This roll area is defined by SAP parameter ztta/roll_area.

Once this is also fully occupied then

  1. The system is forced to use local heap memory (Private memory). Then the work process goes into PRIV mode

Heap memory is available until one of the following occurs :

  1. either the limit of the heap memory for dialog work processes is reached (abap/heap_area_dia) or the entire heap memory of all work processes(abap/heap_area_total)  for an application server reaches its limit.
  2. Operating system limit for allocation of memory
  3. The swap space in the host system is used up or the upper limit of the operating system address space is reached.

The memory allocation strategy for dialog work processes, aims to prevent work processes from allocating R/3 heap memory and thus entering PRIV mode.

When a work process enters PRIV mode, it remains connected to the user until the user ends the transaction. Most of the time,  we should try to avoid the situation of work process going into PRIV mode for better performance of the SAP system. This can be done by optimally defining abap/heap_area_total parameter.

Memory allocation sequence to non dialog work processes in SAP

  • What is the memory allocation sequence to non dialog work processes (background, update, en-queue and spool work processes in SAP?
  • What are the SAP parameters used to define initial roll area, extended memory, heap memory, roll area ?
  • What is the memory allocation sequence to non dialog work processes in Windows NT?

Memory allocation sequence to dialog work processes is same in SAP for all the platforms.

However memory allocation sequence to non-dialog work processes is bit different based on Platform. In Windows NT, memory allocation sequence for non-dialog work processes is same as that of dialog work process memory allocation sequence in other platforms.

Memory allocation sequence to non dialog work processes in SAP as below (except in windows  NT) :

  1. Initially memory is assigned from the Roll memory. Roll memory is defined by SAP parameter  ztta/roll_area and it is assigned until it is completely used up.

If the roll  memory  is full  then

  1. Heap memory is allocated to the non-dialog work process.  Heap memory is available until one of the following occurs :
  2. Either the limit of the heap memory for non-dialog work processes is reached (defined by the SAP parameter abap/heap_area_nondia) or the entire heap memory  of all work processes of an SAP application server reaches its limit which is defined by parameter abap/heap_area_total.
  3. Operating system limits of allocating memory
  4. The swap space in the host system is completely used up. However this situation should not occur often which results in severe performance issues.

Please check swap space requirements for various platforms and please define swap space optimally to avoid this issue.

  1. If all the above mentioned heap memory is completely used up then a non-dialog work process can use the SAP extended memory defined by SAP parameter em/initial_size_MB.

SAP work process Memory allocate的更多相关文章

  1. ORA-04030: out of process memory when trying to allocate 152 bytes (Logminer LCR c,krvtadc)

    今天使用LogMiner找回误更新的数据时,查询v$logmnr_contents时,遇到了"ORA-04030: out of process memory when trying to ...

  2. C# Read/Write another Process' Memory z

    http://www.codeproject.com/Articles/670373/Csharp-Read-Write-another-Process-Memory This article aim ...

  3. C# Read/Write another Process' Memory ZZ

    Today's tutorial is about...processes' memory! In this article I'll show you how to read/write a pro ...

  4. C# Read/Write another Process' Memory

    https://codingvision.net/security/c-read-write-another-process-memory Today’s tutorial is about…proc ...

  5. 【ABAP系列】SAP ABAP模块-memory内存数据传输的例子

    公众号:SAP Technical 本文作者:matinal 原文出处:http://www.cnblogs.com/SAPmatinal/ 原文链接:[ABAP系列]SAP ABAP模块-memor ...

  6. SAP NOTE 1999997 - FAQ: SAP HANA Memory

    Symptom You have questions related to the SAP HANA memory. You experience a high memory utilization ...

  7. Read ListViewItem content from another process z

    Normal Windows GUI applications work with messages that are sent to a window or control and the cont ...

  8. JVM virtual memory

    This has been a long-standing complaint with Java, but it's largely meaningless, and usually based o ...

  9. Oracle调整内存超出限制出现ORA-27100: shared memory realm already exists问题解决办法

    今天测试服务器遇到问题 ORA-04030:out of process memory when trying to allocate string bytes 一看就猜到是内存不足了,把Oracle ...

随机推荐

  1. 使用Vivado的block design

    使用Vivado的block design (1)调用ZYNQ7 Processing System (2)配置ZYNQ7系统 (3)外设端口配置 根据开发板原理图MIO48和MIO49配置成了串口通 ...

  2. linux进程监控和简单的重启&服务的创建 参考自http://blog.csdn.net/lockheed_hong/article/details/73549837

    脚本文件 该脚本实现了一个检测进程是否存在,不存在的情况下重启进程并且记录日志. #! /bin/sh proc_name="console/queue/gift.php" # 进 ...

  3. Fabric Engine2.0的自定义节点功能

    Fabric Engine是一个多用途的引擎,针对maya等软件写节点写功能很方便.尤其是canvas节点编辑面板,提供了大量现有的功能供用户调用,当然这些节点功能都是可被用户编辑修改的,除此之外还提 ...

  4. WebGL和ThreeJs学习6--射线法确定3D空间中所选物体

    一.在 threejs 中如何确定下图3D空间中鼠标点击位置的 object 对象? 二.射线法确定步骤及代码 //Three.js提供一个射线类Raycaster来拾取场景里面的物体.更方便的使用鼠 ...

  5. 黄聪:PHP数据库连接失败--could not find driver 解决办法

    数据库连接失败could not find driver在调试一个PHP程序时,报了这个错误, could not find driver 经过一番查找,结合自己的思考和实践,终于找到了问题所在. 原 ...

  6. 阿里云ECS服务器环境搭建——ubuntu16.04图形界面的安装

    阿里云ECS服务器环境搭建——ubuntu16.04图形界面的安装 最近琢磨着想在服务器上搭建一个hexo博客,于是就在阿里云上买了一个云服务器ECS,远程接入后默认给的是一个命令窗口,没有图形界面, ...

  7. Solr4.2 新特性 DocValues [转]

    原文地址http://wiki.apache.org/solr/DocValues DocValues从Lucene4.2和Solr4.2开始加入,通过建立字段的正排索引,提升sorting, fac ...

  8. python之全局安装包管理工具pip

    1.curl 'https://bootstrap.pypa.io/get-pip.py' > get-pip.py 2.sudo python get-pip.py 3.sudo easy_i ...

  9. xp sql2000 安装SP4失败解决方案

    环境:xp sp3 SQL: sql2000sql2000 SP4下载链接: http://www.microsoft.com/downloads/details.aspx?familyid=8E2D ...

  10. PHP中的static的理解

    静态方法 (1)静态方法不能访问这个类中的普通属性,因为那些属性属于一个对象,但可以访问静态属性: (2)从当前类(不是子类)中访问静态方法或属性,可以使用 self 关键字,self 指向当前类,就 ...