We have added search box. Key in SAP issue keyword to search
TopBottom

Announcement: wanna exchange links? contact me at sapchatroom@gmail.com.
Showing posts with label Processes. Show all posts
Showing posts with label Processes. Show all posts

Monitoring the System Work Processes (SM50)

Posted by Admin at
Share this post:
Ma.gnolia DiggIt! Del.icio.us Yahoo Furl Technorati Reddit

Keyword: BASIS
Title : Monitoring the System Work Processes (SM50)

Determining the Number of Work Processes

Posted by Admin at
Share this post:
Ma.gnolia DiggIt! Del.icio.us Yahoo Furl Technorati Reddit

The context change for processes under Windows NT is more time-consuming compared to UNIX. Therefore, the recommended number of work processes is smaller than compared to UNIX systems. The number of work processes is not calculated according to the number of users. Rather it is calculated according to the number of processors in the system and may be taken from the following table.

You can determine the number of work processes using the CCMS Maintain Operation Modes and Instances: Tools ® CCMS ® Configuration ® Op Modes/Servers ® Operation mode ® Maintain instances

Number of Work Processes under Windows NT

Number of Processors

Number of Work Processes

1

5-6

2

8-10

4

15-20

The number of work processes depends on the number of processors and not the number of users.



Keyword: BASIS
Title : Determining the Number of Work Processes

J2EE Engine - Checking That All Processes Are Running

Posted by Admin at
Share this post:
Ma.gnolia DiggIt! Del.icio.us Yahoo Furl Technorati Reddit

Keyword: BASIS
Title : J2EE Engine - Checking That All Processes Are Running

sap abap/heap_area_nondia: Heap Memory Limit for Non-Dialog Work Processes

Posted by Admin at
Share this post:
Ma.gnolia DiggIt! Del.icio.us Yahoo Furl Technorati Reddit

Use

This parameter sets the limit for the heap memory (heap memory) that an R/3 non-dialog work process can allocate. This value refers to spool, update, and background processes. This value ensures that there is enough swap space available in the system.

In IBM AIX systems, specify a value for this parameter smaller than 200 MB, since the shared memory areas under AIX have a limited size. For Siemens-Nixdorf SINIX, 350 MB is the maximum that you can specify. A higher value has no advantages and no effects.

Goal:

Prevent a single non-dialog work process (user context) from filling up the entire heap memory of the application server.

The work processes of an application server can allocate only so much heap memory as specified in parameter abap/heap_area_total. The limit specified in the parameter refers to the combined heap memory usage of all work processes for an application server.

The value should be high enough for the largest possible background processing context in your R/3 System. If the value is too small, the background process is allocated R/3 Extended Memory. This Extended Memory is not available for dialog work processes.

The default value is generously sized and does not usually have to be increased.

Activities

Unit: Bytes

Default value: 40000000 (40 MB)

Recommended value For the following platforms:

  • IBM AIX: 190000000 (190 mil. bytes)
  • Siemens-Nixdorf SINIX: 350000000 (350 mil. bytes)
  • HP-UX: 600000000 (600 mil. bytes)
  • Other platforms: 900000000 (900 mil. bytes)

You can find the values from the configuration examples (Contents button). You can find additional restrictions under Data Segment Size (UNIX).

Changes: Customers can make changes.



Keyword: BASIS
Title : sap abap/heap_area_nondia: Heap Memory Limit for Non-Dialog Work Processes

sap abap/heap_area_dia: Heap Memory Limit for Dialog Work Processes

Posted by Admin at
Share this post:
Ma.gnolia DiggIt! Del.icio.us Yahoo Furl Technorati Reddit

Use

Set the limit for the heap memory ( Private Memory) that an R/3 dialog work process can allocate. This ensures that enough swap space is available.

If the value is exceeded, the user context that was just executed is terminated prematurely.

In IBM AIX systems, specify a value for this parameter smaller than 200 MB, since the shared memory areas under AIX have a limited size. A higher value has no advantages and no effects.

Goal:

Prevent a single dialog work process (user context) from filling up the entire heap memory of the application server.

A work process from an application server can allocate only so much heap memory as specified in parameter abap/heap_area_total. The limit specified in the parameter refers to the combined heap memory usage of all work processes for an application server.

Ensure that the value is high enough to fulfill all the regular memory requirements, but is not so high that the work process runs up against the swap space limit of the operating system. See the graphic in Abap/Heaplimit: Work Process Restart.

Activities

Unit: Bytes

Default value: 80000000 (80 MB)

Recommended value: 2 GB, if the operating system does not set a lower limit. You can find values in the configuration examples (Content button).

Changes: Customers can make changes.



Keyword: BASIS
Title : sap abap/heap_area_dia: Heap Memory Limit for Dialog Work Processes

SAP Load Balancing and Work Processes Troubleshoot

Posted by Admin at
Share this post:
Ma.gnolia DiggIt! Del.icio.us Yahoo Furl Technorati Reddit

SAP Load Balancing and Work Processes Troubleshoot

The benefit of segregating user groups by line-of-business (using logon groups) is related to the point that groups of users (like SD users or HR users, for example) tend to use the same sets of data. They (generally) work with the same groups of tables and hit the same indexes using the same programs (transactions).

So, if you can group all of the users hitting the same tables, onto (or one set of) App server(s), then you can tune the App server buffers to a much greater extent. If the FI users (generally) never hit against the HR tables then the App servers in the FI group don't (generally) have to buffer any HR data. That leaves you free to make memory and buffer adjustments to a more drastic extent, because you don't have to worry (as much) about screwing the HR users (as an example), when you're adjusting the FI server group.

So, (in opinion only) you should start with a buffer hit ratio analysis / DB table & index access analysis (by user group) to see where you would get the best benefit from this kind of setup. If you don't have this kind of info, then creating logon groups by line-of-business may have no benefit (or worst case, may make performance degrade for the group with the highest load %). You need some historical information to base your decision on, for how to best split the users up.

You may find that 50% of the load is from the SD users and so you may need one group for them (with 3 App servers in it) and one other group for everyone else (with the other 3).

The logon group(s) will have to be referenced by SAP GUI, so SAP GUI (or saplogon.ini + maybe the services file, only) will have to change to accomodate any new groups you create in SMLG. Also consider that there's variables for time-of-day (load varies by time-of-day) and op-mode switches (resources vary by op-mode).

All Work process are running? What will be our action?

Are all the work processes (dia,btc,enq,upd,up2,spo) running or just all the dialog work processes?

If all the work processes are running, then you may want to look at SM12 (or is SM13?) and see if updates are disabled. If they are, look at the alert log (if it's an Oracle database) and see if you have any space related errors (e.g. ORA-01653 or ORA-01654). If you do, add a datafile or raw device file to the applicable tablespace and then, re-enable updates in SM12.

If only all the dialog work processes are running, there are several possible causes. First, look to see if there's a number in the Semaphore column in SM50 or dpmon. If there is, click once on one of the numbers in the Semaphore column to select it and then, press F1 (help) to get a list of Semaphores. Then, search OSS notes and, hopefully, you'll find a note that will tell you how to fix the problem.

If it's not a semaphore (or sometimes if it is), use vmstat on UNIX or task manager on Windows to see if the operating system is running short on memory which would cause it to swap. In vmstat, the free column (which is in 4k pages on most UNIX derivatives) will be consistently 5MB or so and the pi and/or po columns will have a non- zero value. The %idle column in the cpu or proc section will be 0 or a very low single digit while the sys column will be a very high double-digit number because the operating system is having to swap programs out to disk and in from disk before it can execute them.

In task manager, look at free memory in the physical memory section under the performance tab. If it's 10MB or 15MB (I think), then the operating system will be swapping.

Usually, when all the dialog work processes are running, you won't be able to log in via SAPgui and will need to execute the dpmon utility at the commandline level. The procedure is basically the same on UNIX and Windows.

On UNIX:

telnet to server and login as sidadm user.
cd to /sapmnt/SID/profile directory
execute "dpmon pf=SID_hostname_SYSNR" (e.g. PRD_hercules_DVEGMS00) select option "m" and then, option "l"

On Windows:

Click on START, then RUN
Type "cmd" and press enter
change to drive where profile directory resides (e.g. f:)
cd to \sapmnt\SID\profile
execute "dpmon pf=SID_hostname_SYSNR" (e.g. PRD_zeus_DVEGMS00) select option "m" and then, option "l"

On both operating systems, you'll see a screen that looks like what you see in SM50. Depending on what you see here, will depend on what you do next, but checking the developer trace files (e.g. dev_disp) in the work directory (e.g. /usr/sap/SID/DVEGMS00/work) is never a bad idea.



Keyword: BASIS
Title : SAP Load Balancing and Work Processes Troubleshoot

SAP Load Balancing and Work Processes Troubleshoot

Posted by Admin at
Share this post:
Ma.gnolia DiggIt! Del.icio.us Yahoo Furl Technorati Reddit

The benefit of segregating user groups by line-of-business (using logon groups) is related to the point that groups of users (like SD users or HR users, for example) tend to use the same sets of data. They (generally) work with the same groups of tables and hit the same indexes using the same programs (transactions).

So, if you can group all of the users hitting the same tables, onto (or one set of) App server(s), then you can tune the App server buffers to a much greater extent. If the FI users (generally) never hit against the HR tables then the App servers in the FI group don't (generally) have to buffer any HR data. That leaves you free to make memory and buffer adjustments to a more drastic extent, because you don't have to worry (as much) about screwing the HR users (as an example), when you're adjusting the FI server group.

So, (in opinion only) you should start with a buffer hit ratio analysis / DB table & index access analysis (by user group) to see where you would get the best benefit from this kind of setup. If you don't have this kind of info, then creating logon groups by line-of-business may have no benefit (or worst case, may make performance degrade for the group with the highest load %). You need some historical information to base your decision on, for how to best split the users up.

You may find that 50% of the load is from the SD users and so you may need one group for them (with 3 App servers in it) and one other group for everyone else (with the other 3).

The logon group(s) will have to be referenced by SAP GUI, so SAP GUI (or saplogon.ini + maybe the services file, only) will have to change to accomodate any new groups you create in SMLG. Also consider that there's variables for time-of-day (load varies by time-of-day) and op-mode switches (resources vary by op-mode).

All Work process are running? What will be our action?

Are all the work processes (dia,btc,enq,upd,up2,spo) running or just all the dialog work processes?

If all the work processes are running, then you may want to look at SM12 (or is SM13?) and see if updates are disabled. If they are, look at the alert log (if it's an Oracle database) and see if you have any space related errors (e.g. ORA-01653 or ORA-01654). If you do, add a datafile or raw device file to the applicable tablespace and then, re-enable updates in SM12.

If only all the dialog work processes are running, there are several possible causes. First, look to see if there's a number in the Semaphore column in SM50 or dpmon. If there is, click once on one of the numbers in the Semaphore column to select it and then, press F1 (help) to get a list of Semaphores. Then, search OSS notes and, hopefully, you'll find a note that will tell you how to fix the problem.

If it's not a semaphore (or sometimes if it is), use vmstat on UNIX or task manager on Windows to see if the operating system is running short on memory which would cause it to swap. In vmstat, the free column (which is in 4k pages on most UNIX derivatives) will be consistently 5MB or so and the pi and/or po columns will have a non- zero value. The %idle column in the cpu or proc section will be 0 or a very low single digit while the sys column will be a very high double-digit number because the operating system is having to swap programs out to disk and in from disk before it can execute them.

In task manager, look at free memory in the physical memory section under the performance tab. If it's 10MB or 15MB (I think), then the operating system will be swapping.

Usually, when all the dialog work processes are running, you won't be able to log in via SAPgui and will need to execute the dpmon utility at the commandline level. The procedure is basically the same on UNIX and Windows.

On UNIX:

telnet to server and login as sidadm user.
cd to /sapmnt/SID/profile directory
execute "dpmon pf=SID_hostname_SYSNR" (e.g. PRD_hercules_DVEGMS00) select option "m" and then, option "l"

On Windows:

Click on START, then RUN
Type "cmd" and press enter
change to drive where profile directory resides (e.g. f:)
cd to \sapmnt\SID\profile
execute "dpmon pf=SID_hostname_SYSNR" (e.g. PRD_zeus_DVEGMS00) select option "m" and then, option "l"

On both operating systems, you'll see a screen that looks like what you see in SM50. Depending on what you see here, will depend on what you do next, but checking the developer trace files (e.g. dev_disp) in the work directory (e.g. /usr/sap/SID/DVEGMS00/work) is never a bad idea.



Keyword: BASIS
Title : SAP Load Balancing and Work Processes Troubleshoot

T r a n s l a t e to your language