Documente Academic
Documente Profesional
Documente Cultură
Purpose
Each SAP instance (application server) has its own buffers. These buffers are also known as client caches because they are implemented on the client, that is, the application server. SAP buffers occupy memory areas that are local to the work process, and in individual shared memory se ments that can be accessed by all work processes. These memory areas are e!ecuted for the application server.
Some of the shared memory se ments in an SAP System are rouped into one shared memory se ment known as a pool. This is done to meet the operatin system limits on the number of shared memory allocations per process. "n most operatin systems, you can allocate as many shared memory se ments as re#uired. The limits depend on the kernel confi uration. The A"$ operatin system, for e!ample, allows %& shared memory se ments per process. SAP buffers store fre#uently'used data, and make this data available to the local application server instance. This helps to reduce the number of database accesses, the load on the database server (it does not need to be accessed repeatedly to obtain the same information), and network traffic. As a result, system performance is considerably improved. The data that is buffered includes A(AP pro rams and screens, A(AP )ictionary data, and company'specific data. Typically these remain unchan ed durin system operation. *ou can chan e, or tune, the si+es of buffers to optimi+e performance for a particular hardware confi uration. There are several ways to tune buffers. As there are many constraints to consider when chan e the buffer si+e, several difficulties may arise. *ou can use table bufferin to fine'tune applications, that is, some or all of the contents of infre#uently chan ed tables can be held in local buffers.
SAP Buffers
These buffers are held in a shared memory pool. All work processes can access this pool.
Roll Area
,ocal work process buffers. -nly one work process can access these buffers at a time.
Implementation Considerations
!or central monitoring, that is, for the monitoring of a system landscape from one system, you must perform various configuration steps yourself. These are outlined in Configuring the Monitoring Architecture.
Features
The CCMS analysis monitors provide functions for
.heckin the system status and the operatin modes )etectin and correctin potential problems as #uickly as possible An early dia nosis of potential problems, such as resource problems in a host or database system, which could affect the SAP system The analysis and fine tunin of the SAP system and its environment (host and database system) to optimi+e the throu hput of the SAP system
The previous monitorin and alert system in the ../S was replaced by the monitorin architecture. The new monitorin architecture provides all of the functions that previously e!isted as well as new, more reliable alerts and more comple!, more powerful functions.
Use
"ou can either use the following monitors independently or e#ecute them as monitor$
0lobal 1ork Process -verview 1orkload /onitor 0lobal 1orkload /onitor -peratin System /onitor -peratin System .ollector SAP (uffer )atabase /onitor
/onitor the work process load on all active instances across the s$stem "dentify locks in the database (lock waits).
3sin the Global Work Process Overview screen, you can see at a lance2 The status of each application server The reason why it is not runnin 1hether it has been restarted The .P3 and re#uest run time The user who has lo ed on and the client that they lo The report that is runnin
ed on to
See also% Selectin 1ork Processes )isplayin )etailed 1ork Process "nformation
3se this option to select specific A(AP48 pro rams. User selection *ou can investi ate the potential specific causes of a problem. "f you suspect that a particular user is blockin work processes, enter the name of the pro ram or user, then choose Continue to filter the information.
9or back round processes, additional information is available for the back round :ob that is currently runnin . *ou can only display this information, if you are lo ed onto the instance where the :ob is runnin , or if you choose Settings and deselect Display only abbreviate in!ormation" avoi #$C. "n any case, the :ob must still be runnin .
1orkload throu h 69., listed by transactions, function modules and destinations ;umber and volume of spool re#uests Statistics about response time distributeion, with or without the 03" time -ptional2 Table accesses 1orkload and transactions used listed by users, payroll number, and client 1orkload enerated by re#uests from e!ternal systems 9or all of this data2
*ou can display the data for a particular instance (not only the one to which your lo ed on) or optionally totalled for all instances. )ependin on your user mode, you can choose the time period for which you want to display the data between day, week and month (or determine the len th of time yourself usin the ,ast /inutes< ,oad function). 9or most analysis views, you can display all or only certain task types.
Integration
The workload monitor completely replaces the old ST&7 transaction.
Features
The workload monitor has an interface that is divided into two parts. 3se the tree structures on the left of the screen to make the followin settin s2 Select the user mode Select the time period for which you want to display the workload Select various functions and analysis views (which data you want to display).
The system then displays the result on the ri ht of the screen in a standardi+ed A,= 0rid .ontrol. 1ith it, you can 2 Ad:ust the ,ayout of the )ata -utput 9ind the information you want usin sort and filter functions Save user'specific views )isplay statistics raphically
Integration
Transaction ST()* of the %or&load Monitor has replaced the old transaction ST().
Features
Acti"ities
The individual screen elements of the wor&load monitor have the following meanings$
User Mode
After starting the %or&load Monitor, choose a user mode. This gives you access to precisely the functions and periods that are appropriate for the selected role.
Functions
In the $unctions subscreen, choose an icon by double'clic&ing it$
Function 1orkload )etailed Analysis (usiness Transaction Analysis Meaning )ependin on the user mode, you can define the instance and the period that you want to analy+e here. These functions read the workload directly from the statistics files of the individual instances.
"ou can perform a very precise analysis of individual transactions here, down to the level of individual steps.
*ou can use this function to analy+e the workload data that has not yet been written to the performance database /-;". 1ith these functions, you cannot display the workload for a particular instance and a particular period (as in the other workload monitor functions), but rather compare the workload of different instances or periods. )isplay the most important data to ether therefore allows a direct comparison of the instances. Statistics of the (1 1orkload /onitor (only if there is a (usiness 1arehouse in the system) Amon other thin s, you can use this function to define which values the statistics collector collects, how often, and how lon they are to be retained in the performance database in what time resolution.
,oad >istory and )istribution ,oad >istory "nstance .omparison 3sers per "nstance (1 1orkload .ollector ? Performance )atabase
Analysis Views
An analysis view displays a particular aspect of the wor&load. In the Analysis +iew subscreen, choose the view that you want to analy,e by double'clic&ing it.
-nly those analysis views are displayed2
That are active in the selected user mode !or which data e#ists
Output Area
The output area uses an A-+ .rid Control, with which you can greatly tailor the selected view to your re uirements. !or most load parameters, the wor&load monitor displays more data fields than are re uired for your analysis. "ou therefore have a considerable amount of help available in the output area to find the information relevant for you$
The data of most analysis views is rouped in the results area by tab pa es for different topic areas. To obtain an overview of which data fields e!ist for an analysis view, choose the %ll Data tab pa e. 3sin the standard functions of the A,= 0rid .ontrol, you can
Show and hide columns Sort rows by the contents of a column Set and delete filters Perform summations /#port tables as a file type of your choice 0isplay tables as graphics Save sort orders, filters, and selected columns as your layout
Editing Views
Choose one of the following buttons in the & it 'iews screen area$
Button Meaning
Save 'iew Previous 'iew or (e)t 'iew $ull Screen* Show/+i e ,ree
Saves the current view as your initial screen for the workload monitor (see also Savin 3ser'Specific =iews) /oves one view forward or back in the view history Shows or hides the $unctions and %nalysis 'iews subscreens on the left of the screen
Integration
The operation of the lobal workload monitor is lar ely similar to the operation of the SAP 647 workload monitor (transaction ST&7;), which displays statistical data for the local A(AP system. The 0lobal 1orkload /onitor actually uses functions of the SAP 647 1orkload /onitor when you analy+e the workload of SAP 647 Systems. The 0lobal 1orkload /onitor displays statistical data a re ated by the collector. *ou can display raw statistical data (individual records) from SAP 647 and non'SAP 647 Systems from comple! system landscapes usin the functional trace (transaction STATT6A.E). The functional trace offers a finer resolution. *ou can use the functional trace to trace actions that belon to a business process across system boundaries.
The differences between the functional trace and the .lobal %or&load Monitor are e#plained in the section 0ifference 7etween the !unctional Trace and the .lobal %or&load Monitor.
Features
"ou can perform the following analyses, among others, in the .lobal %or&load Monitor$
>ow is the workload distributed amon the individual service types@ (9or more information about service types, see )isplayin the 1orkload -verview.) 1hat is the workload of individual actions@ >ow is the workload distributed over the individual hours of the day@ 1hich action steps have the lon est response and wait time@ 1hat workload data is created when callin e!ternal components@ 1hat is the workload of individual users and which actions has a user performed@ 1hat workload is created in a component on the basis of actions of e!ternal components@
1hat is the response time distribution for individual service types (re#uired, for e!ample, for Service ,evel A reements)@ 1hat is the availability of the statistical data for the individual components@ *ou can choose the period for which you want to display data between day, week, and month, or specify the ,ast /inutes< ,oad as you re#uire. *ou can display data for any component or optionally totaled for all components of a type.
See also:
:perating the .lobal %or&load Monitor Configuring4Self'Monitoring of the .lobal %or&load %or&load Collector Monitor Monitor
(ottlenecks in these areas can si nificantly affect the performance of the SAP system. *ou can monitor these resources usin the ../S operatin system monitor. The operatin system monitor helps you locate the cause of a performance problem. "f the source of the problem is in the operatin system, you can analy+e it further and resolve it usin e!ternal tools or other e!ternal means. Performance indicators are2 Avera e load of and utili+ation of the .P3 /emory utili+ation Pa in in and out of data to and from the memory (replaced by pool data in the -S48&& operatin system monitor) )isk utili+ation information ,A; activity -peratin system confi uration parameters
-peratin System /onitor )ata2 .P3 -peratin System /onitor )ata2 /emory /ana ement -peratin System /onitor )ata2 9ile System and ,A;
*ou can also monitor operatin system data usin the ../S monitor Operating System (transaction 6AB&). >owever, the data displayed there is, in principle, only complete if the monitored servers belon to SAP systems. This restriction does not apply to the operatin system monitor.
Prere(uisites
SAP-S.-, must be runnin so that the data is available.
Procedure
To call the individual functions shown in the table, choose CCMS Control/Monitoring Per!ormance Menu Operating System.
Function
Menu Path
&ransaction
-ocal %ctivity
-S&5
#emote %ctivity" then select the desired server on the S%POSCODestination screen
"n both cases, the system displays performance indicators for the operatin system of the desired server.
9or information specific to the -S48&& operatin system monitor, see Pool )ata in the -S48&& -peratin System. To display additional information about the individual areas, choose the correspondin row. )ata for the last B8 hours is displayed for the .P3, the memory, and the swap space. 9or the hard disk and the ,A;, the system displays a list of the current data for each hard disk and ,A; interface. "f problems occur, the system displays appropriate messa es.
To update the data displayed on the screen, choose #e!resh. As SAP-S.-, collects data by default in %& second intervals, you do not always obtain new data by choosin #e!resh. Possible )rror Messages SAP-S.-, has not created a shared memory se ment. Share memory not available This is usually due to the fact that the SAP-S.-, pro ram has not been started.
SAP-S.-, was started and created a shared memory se ment, but was later terminated.
9or more information about this topic, see Error Analysis2 -peratin System .ollector.
/any factors could lead to an e!cessively hi h .P3 utili+ation, and you should therefore perform a detailed analysis. "f the problem was caused by too many active processes in the host system, you could, for e!ample, transfer .P3' intensive pro rams to times when there is a lower system workload, or to other host systems. *ou could also increase the number of .P3s or up rade the .P3(s).
1hen calculatin the hourly value for the last B8 hours, these values are avera ed over all .P3s of a host. !ther *alues Collected
;umber of .P3s "nterrupts per second4hour System calls per second4hour .onte!t switches per second4hour Avera e number of waitin processes for the last minute, last five minutes and the last %D minutes This is the number of processes for each .P3 that are in a wait #ueue before they are assi ned to a free .P3. As lon as the avera e remains at one process for each available .P3, the .P3 resources are sufficient. As of an avera e of around three processes for each available .P3, there is a bottleneck at the .P3 resources. o o "n connection with a hi h .P3 usa e, a hi h value here can indicate that too many processes are active on the server. "n connection with a low .P3 usa e, a hi h value here can indicate that the main memory is too small. The processes are then waitin due to e!cessive pa in .
%. )etail data for the processes that cause the lar est .P3 load2 %. B. 7. 8. D. 5. Process ") -wner of the process .ommand that started the process Absolute and percenta e .P3 usa e by the process 6esident process si+e in kilobytes Priority of the process
Use
The system displays the specified data when you call the operatin system monitor. The system displays the current detail data for the lar est .P3 users, if they choose Detail analysis menu Goto Current Data Snapshot ,op CP. processes in the operatin system monitor (see also )etail )ata of the -peratin System /onitor). .heck the followin performance factors in particular2
'ispla$
Procedure
"s the avera e load E 7 (more than three processes are waitin for the .P3)@
.heck whether all processes with hi h .P3 usa e (memlog, r3trans, nwengine, brbackup...) are necessary.
SAP03" should not be runnin on the application server. *ou can also display SAP work processes with hi h .P3 usa e with the SAP process overview. The SAP process overview displays the A(AP pro ram that is usin the .P3.
As a rule of thumb, if .P3 bottlenecks occur if there is less than %& /( of free physical memory for a small hardware confi uration. This value can vary dependin on operatin system and system si+e. Paging is the e!chan e of data pa es between the main memory of a host system and the overflow store in a pa in file on the hard diskG pa in occurs if the main memory is not lar e enou h for the conte!ts of all runnin processes SAP-S.-, measures the number of pa es pa ed in and pa ed out per second with the #uantities of memory pa ed in and pa ed out in kilobytes. >i h pa in rates indicate that the main memory is too small for the runnin processes. /easures that you can take are to e!tend the main memory, to move processes to other host systems, and to delay memory'intensive pro ram runs to times of lower system workload.
-n 1indows platforms (unlike 3;"$ platforms), the system performs pa in out as a precautionary measure even when space is not re#uired in the workin memory, meanin that this value is irrelevant and you should only consider the pa in in rate. 3nder 3;"$, on the other hand, Page/Out is the critical value for evaluatin the pa in . S#ap Space is stora e space on the hard disk to which data that is not re#uired is written from the main memory, so that there is space in the main memory for the pro ram currently bein e!ecuted. SAP-S.-, measures the confi ured and free swap space in kilobytes and the actual and ma!imum si+e of the swap space in kilobytes. "n addition, the ma!imum and minimum si+es of the free swap space is measured hourly. The most important values are the free and the actual swap space.
;ot all types of swap space are available on all operatin systems. 9or this reason, in some cases, the actual swap space si+e corresponds to the confi ured and ma!imum swap space.
Use
The system displays the specified data when you call the operatin system monitor. "n the detail data, the system also displays the performance history for the last B8 hours and 7& days (see also )etail )ata of the -peratin System /onitor). To call the individual functions in the table, choose the Detail %nalysis menu in the operatin system monitor.
Function
Menu Path
.heck pa in and swap space for the previous days for one server
.heck pa in and swap space for the previous days for various servers
9or all file s$stems on a host2 o o o ;ame of the file system .apacity of the file system in me abytes 9ree stora e space in the file system in me abytes
9or all +A, interfaces on a host2 o o o o o o ;ame of the ,A; interface )ata packets received per second )ata packets sent per second Errors for received packets per second Errors for sent packets per second .ollisions per second, in which two stations transport a packet at the same time on the same channelG this leads to the destruction of both packets and means that they must be sent a ain
Some values are not specified in some network interfacesG for e!ample, there may not be a value for collisions per second in a token rin architecture. The values specified here do not describe the actual network traffic. They describe the transfers performed with this interface. This means that the errors displayed here refer to the interface and not to the actual network se ment.
Use
The system displays the specified data when you call the operatin system monitor. "n the detail data, the system also displays data for all hard disks and for all file systems of a server, and the performance history of the last B8 hours and 7& days (see also )etail )ata of the -peratin System /onitor). To call the individual functions in the table, choose the Detail %nalysis menu in the operatin system monitor.
Function
Menu Path
.heck the usa e of the file systems for the last B8 hours
.heck the usa e of the hard disks for the last B8 hours
.heck the file system, hard disks, and ,A; for the previous days for a server
.heck the file system, hard disks, and ,A; for the previous days for various servers See also% -peratin System /onitor )ata2 .P3
(ottlenecks in these areas can si nificantly affect the performance of the SAP system. *ou can monitor these resources usin the ../S operatin system monitor. The operatin system monitor helps you locate the cause of a performance problem. "f the source of the problem is in the operatin system, you can analy+e it further and resolve it usin e!ternal tools or other e!ternal means. Performance indicators are2 Avera e load of and utili+ation of the .P3 /emory utili+ation Pa in in and out of data to and from the memory (replaced by pool data in the -S48&& operatin system monitor)
)isk utili+ation information ,A; activity -peratin system confi uration parameters
SAP:SC:- ma&es the data available using a segment of the shared memory for various applications and all SAP instances on a host. A CCMS agent or a dialog wor& process reads the data from the shared memory. "ou can display the data in various monitoring architecture monitors or in the operating system monitor 1transactions :S(; and ST(<2. If the operating system data is read and sent by CCMS agents, you can display operating system data for any hosts in a central system.
Bac ground to !rigin
%hen the development of SAP 34) was begun, hardware resources on =*I> servers were so scarce that it was necessary to customi,e the applications to these resources. In many areas, SAP 34) is based on a logical, operating system'li&e level 1such as memory management or managing the wor& processes2. SAP 34) could only manage these tas&s if it had access to reliable performance values for the operating system, independent of the specific operating system. SAP:SC:performs this tas& with a small usage of resources such as CP= or memory.
Features
The program SAP:SC:- is delivered with every SAP system, but is not restricted to SAP systems. The special features of the program are$
*ou re#uire a special authori+ation to use SAP-S.-, (see "nstallin SAP-S.-, on a /icrosoft 1indows >ost or "nstallin SAP-S.-, on a 3;"$ >ost). SAP-S.-, runs e!actly once on each host. SAP-S.-, runs independently of the SAP system.
7y default, SAP:SC:- collects the current data every ten seconds and records it, and records the hourly averages for the last 6? hours. Another bac&ground @ob, SAP_COLLECTOR_FOR_PERFORMANCE, ta&es performance data for the last 6? hours from the shared memory and writes it to the M:*I performance database. "ou can compare this data for one or more hosts. Supported Operating Systems SAP:SC:- is delivered for the following operating system platforms$
/icrosoft 1indows A"$ S3;4S-,A6"S
Always use the current version of SAP-S.-,. *ou can find the pro ram as described under )ownloadin SAP-S.-,.
Process Flo#
SAP:SC:- is dependent on the operating system ' the installation therefore varies depending on the operating system of the host to be monitored. !ollow the appropriate procedure$
"nstallin SAP-S.-, on a /icrosoft 1indows >ost& "nstallin SAP-S.-, on a 3;"$ >ost
9or more information about the installation of SAP-S.-,, see SAP ;ote %IBBC. (y default, SAP-S.-, automatically has a valid workin directory after the installation. 9or information about chan in this directory, see SAP-S.-,2 1orkin )irectory and Profile Parameters. "f you want to monitor particular processes with SAP-S.-,, see /onitorin Selected Processes with SAP-S.-,.
Process Flo#
The followin sections contain the most important information about controllin SAP-S.-,
SAP-S.-, must be runnin for you to be able to use the followin commands. Start the operatin system collector with the command saposcol"#l.
Features
.ontrol SAP-S.-, from the operatin system input prompt usin the command saposcol"$Option%. The followin options are possible2
!ption
'escription
&
&k
&r
&'
&(
9orces the collector to start, even if the collector is already collectin data
&s
&i"$Number%
Sets a new interval for the collection of data in the normal mode (every $Number% secondsG the default value is %& seconds)
&!
&u"$Number%
Sets the interval in seconds for the switch to idle status (the default value is 7&& seconds)G if the data in shared memory is not read for the specified len th of time, SAP-S.-, switches from normal mode to idle mode.
&e"$Number%
Sets the interval in seconds for the collection of data in idle status (the default value is 5& seconds)
&c
&p
&g
&t
in
&*tl
&n
&o
&m
Features
'ispla$ing the 'ata in Shared Memor$ Collected b$ SAP!SC!+ *ou can use the dialo mode to call up the data that SAP-S.-, wrote to the shared memory. The most important command is ump, which is used to display various data collected by SAP-S.-, and stored in the shared memory, dependin on parameters and options. ump"$Parameters%"$option% The followin parameters are possible2 Parameter cpu memory top disk filesystem lan proc 'escription .P3 /emory ,ar est .P3 user >ard disk 9ile system ,A; /onitorin of selected processes
The followin options are possible2 !ption sin le all sum 'escription .urrent value of a sin le selected parameter .urrent value of all parameters available in shared memory >ourly avera es for the last B8 hours of all parameters available in
shared memory
;ote that not all of the parameters can be combined with all of the options. There are also the followin uses of the ump command2 Command dump confi defined dump confi used dump hour 'escription .onfi ured operatin system parameters
.urrently used operatin system parameters )isplays a list of the last B8 hoursG each of the B8 entries has the format 'our+"$,&-3%"o(" a."$Number%, where $Number%" specifies whether SAP-S.-, has consistent data for that hour2 ,+ ;o data available /+ current hour -+ inconsistent data $ ate"01111MMTT2%2 )ata available
To display the memory'related operatin system data in the shared memory, enter the followin command at the Collector> command line2 ump"memor."all The followin information is displayed2 Collector> ump"memor."all Pages paged in / sec 1 Pages paged out / sec 0 KB paged in / sec 4 KB paged out / sec 0 freemem [KB] 13312 ph smem [KB] !""3! s#ap configured [KB] $!34% s#ap total si&e [KB] $!34% s#ap free inside [KB] $2""! Controlling SAP!SC!+ in 'ialog Mode *ou can control SAP-S.-, in dialo mode usin the followin commands at the Collector> input prompt2
Command detailson detailsoff interval JnE leave kill launch force status stat
'escription Sets the details fla .ancels the details fla .han es the collection interval to $n% seconds ()efault K %&) )eletes the shared memory Stops the back round process Starts a new collector 9orces a new collector to start (only in emer encies) )isplays the status of the SAP-S.-, process that is collectin data in the back round
The chan ed values are written to shared memory. SAP-S.-, reads these values directly before collectin data. The chan es then take effect.
"f you chan e the collection interval, the collector switches to the new interval only after the e!piration of the old interval. )nding 'ialog Mode To leave the dialo mode of SAP-S.-,, use the command 3uit or the command e4it
Starting SAP!SC!+
Use
*ou only need to start SAP-S.-, yourself the first time that it is started on a host (see "nstallation and .onfi uration of SAP-S.-,). Thereafter, SAP-S.-, is automatically stopped and started when the host is shut down and startedG this applies irrespective of whether SAP components are runnin on the correspondin host. A manual stop and restart is only necessary in the followin conditions2 *ou want to install a newer version of SAP-S.-,. *ou want to stop SAP-S.-, that is collectin incorrect data or to correct an incorrect installation.
Procedure
The command to start SAP-S.-, varies dependin on the operatin system2 3nder 3;"$, you start SAP-S.-, with the command saposcol"(or saposcol"&l).
3nder 1indows ;T, you start SAP-S.-, by startin the correspondin service by choosin Start Settings Control Panel Services (see SAP ;ote &875%L5). *ou can also start SAP-S.-, in the operatin system monitor.
;ormally, SAP-S.-, is called without additional parameters or profiles. saposcol"#l corresponds to this call, where &l stands for start (see .ontrollin SAP-S.-, from the -peratin System). The followin occurs when the start command is e!ecuted2 "f the call finds a SAP-S.-, se ment in the shared memory, it takes over its process ") (P")) and the stored data of a SAP-S.-, that may already be runnin . "f no other SAP-S.-, is collectin data, the P") is &, and SAP-S.-, uses the e!istin shared memory se ment when startin . SAP-S.-, also starts if no shared memory is available. The new SAP-S.-, does not start if it detects that another SAP-S.-, is already collectin data. After it has been started, SAP-S.-, performs an initiali+ation durin which it reserves its re#uired space in shared memory. The pro ram calculates the si+e of this space from the number of available hard disks, .P3s, file systems, and so on. SAP-S.-, writes the contents of the file coll)put (if it e!ists) to its shared memory se ment. The process continues runnin in the back round, and the ori inal pro ram ends.
Stopping SAP!SC!+
Use
The command to stop SAP-S.-, varies dependin on the operatin system2 3nder 3;"$, you stop SAP-S.-, with the command saposcol"&k. 3nder 1indows ;T, you stop SAP-S.-, by stoppin the correspondin service (by choosin Start Settings Control Panel Services). *ou can also stop SAP-S.-, in the operatin system monitor.
)o not stop SAP-S.-, usin other operatin system commands, as the data in the shared memory could become corrupted. Also, in this case you cannot start a new SAP-S.-,, but receive an error messa e that a SAP-S.-, is already runnin .
Procedure
The command to stop SAP-S.-, first starts a new SAP-S.-, that stops the active SAP-S.-, after a second. The followin occurs2 The new SAP-S.-, connects to the shared memory. 3sin the shared memory, it determines the process ") (P")) of the SAP-S.-, that is collectin data.
"f the new SAP-S.-, finds a valid P"), it sets a fla in shared memory. 1hen the old SAP-S.-, finds this fla , it resets the fla and deletes the P") from shared memory. "f this is not complete within B& seconds, the new SAP-S.-, stops the old SAP-S.-,.
>ow lon a shared memory se ment e!ists depends on the operatin system. -n a 3;"$ operatin system, it is stored until SAP-S.-, deletes it. -n 1indows ;T, the shared memory is deleted by the operatin system if no process is connected with it. The old SAP-S.-, writes the data in shared memory to the file coll)put in the SAP-S.-, workin directory. The pro ram then ends. 1hen the host is restarted, the file coll)put is imported so that the combined data is available in the shared memory. "f, for e!ample, SAP-S.-, is stopped at %B2&7 and is restarted at %828I, the data until %B2&& is still available for the SAP system. To avoid confusion, invalid data for the time from %B2&& until %82&& is not displayed in the overview of the last hours in the operatin system monitor.
)elete the file coll)put, if you stop SAP-S.-, in the conte!t of error analysis, as the pro ram imports the (possibly erroneous) measured values from the file to the shared memory se ment if it is restarted.
Procedure
'elete the 'etail Selection *ou can control the collection of data by SAP-S.-, by havin certain data, the collection of which has a particularly hi h influence on the performance, collected less fre#uently. 1hich data belon s to this roup depends on the operatin system of the monitored host2 (y default, detail selection is set (Details re0uire pushbutton in the operatin system monitorG command etailson in dialo mode). To remove detail selection, choose Details O!! in the operatin system monitor, or enter the command etailso(( in the dialo mode. This settin applies universally. Use the Idle Mode of SAP!SC!+ "f the data is not read from the shared memory durin a period of five minutes, SAP-S.-, switches from normal mode to idle mode. "n this mode, the collector collects data every minute instead of
every ten seconds. This is sufficient for a well'founded hourly avera e value. "f a process reads data from the shared memory durin idle mode, SAP-S.-, switches back to normal mode.
/any factors could lead to an e!cessively hi h .P3 utili+ation, and you should therefore perform a detailed analysis. "f the problem was caused by too many active processes in the host system, you could, for e!ample, transfer .P3' intensive pro rams to times when there is a lower system workload, or to other host systems. *ou could also increase the number of .P3s or up rade the .P3(s).
1hen calculatin the hourly value for the last B8 hours, these values are avera ed over all .P3s of a host. !ther *alues Collected ;umber of .P3s "nterrupts per second4hour System calls per second4hour .onte!t switches per second4hour Avera e number of waitin processes for the last minute, last five minutes and the last %D minutes This is the number of processes for each .P3 that are in a wait #ueue before they are assi ned to a free .P3. As lon as the avera e remains at one process for each available .P3, the .P3 resources are sufficient. As of an avera e of around three processes for each available .P3, there is a bottleneck at the .P3 resources. o o "n connection with a hi h .P3 usa e, a hi h value here can indicate that too many processes are active on the server. "n connection with a low .P3 usa e, a hi h value here can indicate that the main memory is too small. The processes are then waitin due to e!cessive pa in .
)etail data for the processes that cause the lar est .P3 load2 o o o o o o Process ") -wner of the process .ommand that started the process Absolute and percenta e .P3 usa e by the process 6esident process si+e in kilobytes Priority of the process
Use
The system displays the specified data when you call the operatin system monitor. The system displays the current detail data for the lar est .P3 users, if they choose Detail analysis menu Goto Current Data Snapshot ,op CP. processes in the operatin system monitor (see also )etail )ata of the -peratin System /onitor). .heck the followin performance factors in particular2
'ispla$
Procedure
"s the avera e load E 7 (more than three processes are waitin for the .P3)@
.heck whether all processes with hi h .P3 usa e (memlog, r3trans, nwengine, brbackup...) are necessary.
SAP03" should not be runnin on the application server. *ou can also display SAP work processes with hi h .P3 usa e with the SAP process overview. The SAP process overview displays the A(AP pro ram that is usin the .P3.
As a rule of thumb, if .P3 bottlenecks occur if there is less than %& /( of free physical memory for a small hardware confi uration. This value can vary dependin on operatin system and system si+e.
Paging is the e!chan e of data pa es between the main memory of a host system and the overflow store in a pa in file on the hard diskG pa in occurs if the main memory is not lar e enou h for the conte!ts of all runnin processes SAP-S.-, measures the number of pa es pa ed in and pa ed out per second with the #uantities of memory pa ed in and pa ed out in kilobytes. >i h pa in rates indicate that the main memory is too small for the runnin processes. /easures that you can take are to e!tend the main memory, to move processes to other host systems, and to delay memory'intensive pro ram runs to times of lower system workload.
-n 1indows platforms (unlike 3;"$ platforms), the system performs pa in out as a precautionary measure even when space is not re#uired in the workin memory, meanin that this value is irrelevant and you should only consider the pa in in rate. 3nder 3;"$, on the other hand, Page/Out is the critical value for evaluatin the pa in . S#ap Space is stora e space on the hard disk to which data that is not re#uired is written from the main memory, so that there is space in the main memory for the pro ram currently bein e!ecuted. SAP-S.-, measures the confi ured and free swap space in kilobytes and the actual and ma!imum si+e of the swap space in kilobytes. "n addition, the ma!imum and minimum si+es of the free swap space is measured hourly. The most important values are the free and the actual swap space.
;ot all types of swap space are available on all operatin systems. 9or this reason, in some cases, the actual swap space si+e corresponds to the confi ured and ma!imum swap space.
Use
The system displays the specified data when you call the operatin system monitor. "n the detail data, the system also displays the performance history for the last B8 hours and 7& days (see also )etail )ata of the -peratin System /onitor). To call the individual functions in the table, choose the Detail %nalysis menu in the operatin system monitor.
Function
Menu Path
.heck pa in and swap space for the previous days for one server
.heck pa in and swap space for the previous days for various servers
9or all file s$stems on a host2 o o o ;ame of the file system .apacity of the file system in me abytes 9ree stora e space in the file system in me abytes
9or all +A, interfaces on a host2 o o o o o o ;ame of the ,A; interface )ata packets received per second )ata packets sent per second Errors for received packets per second Errors for sent packets per second .ollisions per second, in which two stations transport a packet at the same time on the same channelG this leads to the destruction of both packets and means that they must be sent a ain
Some values are not specified in some network interfacesG for e!ample, there may not be a value for collisions per second in a token rin architecture. The values specified here do not describe the actual network traffic. They describe the transfers performed with this interface. This means that the errors displayed here refer to the interface and not to the actual network se ment.
Use
The system displays the specified data when you call the operatin system monitor.
"n the detail data, the system also displays data for all hard disks and for all file systems of a server, and the performance history of the last B8 hours and 7& days (see also )etail )ata of the -peratin System /onitor). To call the individual functions in the table, choose the Detail %nalysis menu in the operatin system monitor.
Function
Menu Path
.heck the usa e of the file systems for the last B8 hours
.heck the usa e of the hard disks for the last B8 hours
.heck the file system, hard disks, and ,A; for the previous days for a server
.heck the file system, hard disks, and ,A; for the previous days for various servers
Process Flo#
.heck whether SAP-S.-, is runnin on the relevant host. *ou can perform this check at the operatin system command line by enterin the command saposcol &s in the SAP-S.-, directory (see .ontrol SAP-S.-, from the SAP System). "n the operatin system monitor, choose the OS Collector and Status pushbuttons. "f SAP-S.-, is not runnin , start itG for e!ample, usin the operatin system monitor, by choosin OS Collector and Start. .heck whether you are usin the current version of SAP-S.-,. To do this compare the version of SAP-S.-, runnin on your host with the current version in the So!tware Catalog at http244service.sap.com4swcenter'main. "f the version numbers are not identical, download the newest version (see )ownloadin SAP-S.-,), stop the runnin version and start the new SAP-S.-, (see Start SAP-S.-, and Stop SAP-S.-,). .ompare the values displayed in the operatin system monitor and in the )ialo /ode of the SAP-S.-, -peratin System .ollector.
"f the values are identical and the incorrect values are therefore already present in the shared memory se ment of SAP-S.-,, the SAP system is not the cause of the problem. "n this case, restart SAP-S.-, and delete the shared memory se ment after stoppin SAP-S.-,. "f the problems persist after a restart, you can find notes for correctin the errors, some of which are platform' dependent under ;otes for "ncorrect )ata )isplay
/any factors could lead to an e!cessively hi h .P3 utili+ation, and you should therefore perform a detailed analysis. "f the problem was caused by too many active processes in the host system, you could, for e!ample, transfer .P3' intensive pro rams to times when there is a lower system workload, or to other host systems. *ou could also increase the number of .P3s or up rade the .P3(s).
1hen calculatin the hourly value for the last B8 hours, these values are avera ed over all .P3s of a host. !ther *alues Collected ;umber of .P3s "nterrupts per second4hour System calls per second4hour .onte!t switches per second4hour Avera e number of waitin processes for the last minute, last five minutes and the last %D minutes This is the number of processes for each .P3 that are in a wait #ueue before they are assi ned to a free .P3. As lon as the avera e remains at one process for each available .P3, the .P3 resources are sufficient. As of an avera e of around three processes for each available .P3, there is a bottleneck at the .P3 resources. o o "n connection with a hi h .P3 usa e, a hi h value here can indicate that too many processes are active on the server. "n connection with a low .P3 usa e, a hi h value here can indicate that the main memory is too small. The processes are then waitin due to e!cessive pa in .
)etail data for the processes that cause the lar est .P3 load2 %. Process ") B. -wner of the process 7. .ommand that started the process
8. Absolute and percenta e .P3 usa e by the process D. 6esident process si+e in kilobytes 5. Priority of the process
Use
The system displays the specified data when you call the operatin system monitor. The system displays the current detail data for the lar est .P3 users, if they choose Detail analysis menu Goto Current Data Snapshot ,op CP. processes in the operatin system monitor (see also )etail )ata of the -peratin System /onitor). .heck the followin performance factors in particular2
'ispla$
Procedure
"s the avera e load E 7 (more than three processes are waitin for the .P3)@
.heck whether all processes with hi h .P3 usa e (memlog, r3trans, nwengine, brbackup...) are necessary.
%. SAP03" should not be runnin on the application server. B. *ou can also display SAP work processes with hi h .P3 usa e with the SAP process overview. The SAP process overview displays the A(AP pro ram that is usin the .P3.
As a rule of thumb, if .P3 bottlenecks occur if there is less than %& /( of free physical memory for a small hardware confi uration. This value can vary dependin on operatin system and system si+e. Paging is the e!chan e of data pa es between the main memory of a host system and the overflow store in a pa in file on the hard diskG pa in occurs if the main memory is not lar e enou h for the conte!ts of all runnin processes SAP-S.-, measures the number of pa es pa ed in and pa ed out per second with the #uantities of memory pa ed in and pa ed out in kilobytes. >i h pa in rates indicate that the main memory is too small for the runnin processes. /easures that you can take are to e!tend the main memory, to move processes to other host systems, and to delay memory'intensive pro ram runs to times of lower system workload.
-n 1indows platforms (unlike 3;"$ platforms), the system performs pa in out as a precautionary measure even when space is not re#uired in the workin memory, meanin that this value is irrelevant and you should only consider the pa in in rate. 3nder 3;"$, on the other hand, Page/Out is the critical value for evaluatin the pa in . S#ap Space is stora e space on the hard disk to which data that is not re#uired is written from the main memory, so that there is space in the main memory for the pro ram currently bein e!ecuted. SAP-S.-, measures the confi ured and free swap space in kilobytes and the actual and ma!imum si+e of the swap space in kilobytes. "n addition, the ma!imum and minimum si+es of the free swap space is measured hourly. The most important values are the free and the actual swap space.
;ot all types of swap space are available on all operatin systems. 9or this reason, in some cases, the actual swap space si+e corresponds to the confi ured and ma!imum swap space.
Use
The system displays the specified data when you call the operatin system monitor. "n the detail data, the system also displays the performance history for the last B8 hours and 7& days (see also )etail )ata of the -peratin System /onitor). To call the individual functions in the table, choose the Detail %nalysis menu in the operatin system monitor.
Function
Menu Path
.heck pa in and swap space for the previous days for one server
.heck pa in and swap space for the previous days for various servers
)ata packets sent per second Errors for received packets per second Errors for sent packets per second .ollisions per second, in which two stations transport a packet at the same time on the same channelG this leads to the destruction of both packets and means that they must be sent a ain Some values are not specified in some network interfacesG for e!ample, there may not be a value for collisions per second in a token rin architecture. The values specified here do not describe the actual network traffic. They describe the transfers performed with this interface. This means that the errors displayed here refer to the interface and not to the actual network se ment.
Use
The system displays the specified data when you call the operatin system monitor. "n the detail data, the system also displays data for all hard disks and for all file systems of a server, and the performance history of the last B8 hours and 7& days (see also )etail )ata of the -peratin System /onitor). To call the individual functions in the table, choose the Detail %nalysis menu in the operatin system monitor.
Function
Menu Path
.heck the usa e of the file systems for the last B8 hours
.heck the usa e of the hard disks for the last B8 hours
.heck the file system, hard disks, and ,A; for the previous days for a server
.heck the file system, hard disks, and ,A; for the previous days for various servers
Buffer Components
'efinition
An SAP buffer consists of the followin parts2 The mode table resides in shared memory and tells you which pool contains which shared memory areas. The mode table is part of the common information on the shared memory areas that are accessed by the work processes. 9or e!ample, SAP Fey % with /ode K &, instructs the -S kernel to e!tract this buffer from the default pool and to allocate a uni#ue shared memory se ment. SAP Fey %& with /ode K pool si+e instructs the -S kernel to store the buffer specifically in pool %&. SAP Fey %% with /ode K '%& means that the buffer is located in pool %&. A shared memory area that is allocated by the dispatcher durin system startup. SAP 0lobal /ana ement Table 1hen semaphore protection is on, the SAP 0lobal /ana ement Table is addressed e!clusively by SAP Shared Memor$ Management. This is a central a ent that is found in each work process and that sets up a shared memory area for the local application server or instance. The SAP Shared /emory /ana ement issues a call to the operatin system (-S) when it creates a shared memory area. As a result, the SAP e$ is assi ned to an !S e$. The -S returns a uni#ue identifier (handle) for the shared memory area, with which the SAP Shared /emory /ana ement addresses the shared memory area that was created by the -S. All work processes in the SAP System can access the SAP 0lobal /ana ement Table. The handle can be accessed by all work processes. Every work process contains this table. Address Table Assi ns virtual addresses to the physical addresses of the shared memory areas. Shared /emory -b:ects These include the buffers, for e!ample.
/ode table
.ontains information on the shared memory area (also called memory se ment). >eader "f a write error occurs outside the se ment area, then the uniformity of the header is destroyed. The control function of the SAP /ana ement of Shared /emory checks the consistency of the headers. "dentifies the memory area. ") The ") is assi ned when a SAP Shared /emory /ana ement user re#uests the memory area. The memory class. Stora e .lass E!amples of memory classes2 permanent (local), shared, roll, pa in and short. Subdivision A mark for the re#uested area that can be referred to later when you release the memory area. (uffer si+e includin the header. Ali nment of memory areas in accordance with hardware constraints.
Buffer S$nchroni-ation
The fact that each application server has its own buffers could result in data inconsistency across the various application servers (instances). To prevent data inconsistency, the SAP System uses periodical buffer s$nchroni-ation, which is sometimes called buffer refresh. Every modifyin action on buffered data, which could also be buffered by other application servers, produces synchroni+ation tele rams that are written to a central )( table ()),-0). Every application server periodically reads the tele rams written since the last synchroni+ation, and checks its buffers for data to be refreshed. (uffer synchroni+ation can be controlled by chan in the followin parameters in the r isp5bu(re(mo e"6"sen on"7"sen o((8"e4eauto"7"e4eo((" r isp5bu(re(time"6"(in seconds, time between two synchroni+ation) instance profile2
)urin the period between two refreshes, an application server may read data from its buffers while they are bein modified by another application server. 9or this reason, no important volatile customer data should be buffered in the SAP buffers.
E!amples of buffered data2 Table TST. (SAP transaction codes) Table T%&& (error messa es) A(AP e!ecutables Screens
(uffer synchroni+ation is re#uired only for distributed SAP Systems when more than one application server (instance) is used. "f your SAP System utili+es only one application server (instance), buffer synchroni+ation is not needed. 1hen the application server is restarted, all buffers are erased and dynamically reconstructed. (efore you use tp (SAP transport pro ram) to import ob:ects into a central instance (that is, only one instance in the whole SAP System), you should set the followin parameter2 r isp5bu(re(mo e"6"sen o((8"e4eauto
"f you set the paramter to M e4eo(( <, the central instance does not read the )),-0 table. This means that any chan es to repository ob:ects in the database (that is written to usin tp ) are not updated in the SAP repository buffers. This may mean that the system displays synta! error messa es for the A(AP pro rams that are affected. The A(AP processor can detect whether a version of the A(AP pro ram imported via tp is new, and reloads the pro ram buffer. The SAP repository buffers still contain the old repository ob:ects.
The 6epository buffer is mainly known as the nametab buffer (;TA(), but it is also known as the A(AP )ictionary buffer. The description of a table in the 6epository is distributed amon several tables (for field definition, data element definition and domain definition). This information is summari+ed in the name table. The name table is saved in the followin database tables2 ));TT (table definitions)
The 6epository buffer consists of four buffers in shared memory, one for each of the followin 2
&able definitions
TTA( buffer
Table ));TT
Field descriptions
9TA( buffer
Table ));T9
"6E. buffer
Short ,ametab
S;TA( buffer
The Short nametab and 1nitial recor layouts are not saved in the database. "nstead, they are derived from the contents of tables ));TT and ));T9. 1hen access to a table is re#uested, the database access a ent embedded in each work process first reads the Short nametab buffer for information about the table. "f the information is insufficient (for e!ample, the SELECT statement uses a non'primary key) it accesses the ,able e!initions buffer and then the $iel escriptions buffer. (y readin the 6epository buffers, the database access a ent knows whether the table is buffered or not. 3sin this information, it accesses the table buffers (partial buffer or eneric buffer) or the database. The "6E. buffer is read2 1hen a REFRES9 command is e!ecuted in an A(AP pro ram At an :NSERT command, when a record is created in the buffers before the data is inserted and the fields are initiali+ed with the values found in "6E. buffer instance profile.
*ou can set the buffers mentioned above by editin the parameters in the See also%
rs b5ntab5entr.count
*on'=nicode$ =nicode$
rs b5ntab5entr.count rs b5ntab5entr.count
?6
rs b5ntab5entr.count
rs b5ntab5(tabsi*e
?) ?D ??
rs b5ntab5entr.count
4? 4?
rs b5ntab5sntabsi*e
rs b5ntab5entr.count
rs b5ntab5irb si*e
The si+e of an entry in the mana ement area is H dependin on the hardware platform used H around D& bytes.
All of the listed buffers are in memory pool ?(. The si,e of the shared memory pool is therefore controlled by the parameter ipc5s'm_psi*e_;,. !or more information, see 3epository 7uffer
Program Buffer
"ou can only define the si,e of the program buffer with one parameter$ abap5bu((ersi*e. The si,e is defined in ,B. The number of directory entries is calculated from this parameter. "ou can control the placing of the buffer with ipc5s'm_psi*e_,=. This parameter is normally set to -, that is, the buffer is not in a pool. !or more information, see Program 7uffers.
/UA buffer
The parameter rs b5cua5bu((ersi*e defines the total si,e of the buffer in ,B. The number of directory entries is calculated as total"si*e"5"->?. "ou can control the placing of the buffer with ipc5s'm_psi*e_;@. This parameter is normally set to 0.-, that is, the buffer is in pool ?(. !or more information, see SAPgui 7uffers.
-ther tables should only be buffered if the write accesses occur very infre#uently and the tables do not contain customer data. "n the case of tables that are modified fre#uently, the additional processin re#uired could cancel out any performance ains achieved by bufferin .
Buffering t$pes
Full .residential/ buffering
Either the whole table or none of the table is stored in the buffer. This type of bufferin is recommended (as a rule of thumb) for the followin tables2 Tables up to 7&F( in si+e, and accessed fre#uently, but all accesses are read accesses. ,ar er tables where lar e numbers of records are fre#uently accessed. >owever, if the application pro ram is able to formulate an e!tremely selective C9ERE condition for these multiple accesses usin a database inde!, it may be advisable to dispense with bufferin . "n this case, pooled tables should be converted to transparent tables. Tables where fre#uent attempts are made to access data not contained in the table, resultin in a N;o record foundN messa e. 1ith full bufferin all records of a table are contained in the buffer, which means a faster response to indicate whether or not the table contains a record for a specific key can be displayed. Tables which are small and are sub:ected to lar e number of read accesses, but are rarely written to.
Generic buffering
1hen you access a record from the table, other records whose eneric key fields correspond to this record are also loaded into the buffer. This type of bufferin is recommended (as a rule of thumb) for the followin tables2 .lient'dependent, fully buffered tables are automatically buffered enerically (even if full bufferin was selected in the table<s settin s). The client field is the eneric key. ,an ua e'dependent tables.
The partial buffer also contains ne ative information. That is, if a record is accessed which does not e!ist in the database table, an empty record is stored in the buffer and a fla byte is set to indicate the record does not e!ist.
Procedure
6. To display the call statistics, from the initial screen, choose % ministration System a ministration
Monitor Per!ormance Setup/2u!!ers 2u!!ers Detail analysis menu Call statistics. -n the ne!t screen, make a selection and choose Enter. 7. Sort the display accordin to the data records called. Position the cursor on an entry in the column Calls (under D2 activity) and choose Sort.
Result
The Changes column indicates which tables are bein chan ed most fre#uently. *ou can enerally consider bufferin tables with many read accesses but with fewer than 455 chan es per day. The system displays the number of chan es made since the system was started. (y checkin the dates at the top of the screen, you can determine the number of days that have elapsed since system startup. Therefore2 Changes per da$ 6 &otal changes &otal number of da$s in the selected time period *ou should also consider the table type. -nly buffer tables of type ,#%(SP or Pool are important here. " nore those that are of type System as these tables should not be chan ed.
Procedure
6. To display the call statistics, from the initial screen, choose % ministration System a ministration
Monitor Per!ormance Setup/2u!!ers 2u!!ers Detail analysis menu Call statistics. -n the ne!t screen, make a selection and choose Enter. 7. Sort the display accordin to the data records called. Position the cursor on an entry in the column Calls (under D2 activity) and choose Sort.
Result
The Changes column indicates which tables are bein chan ed most fre#uently. *ou can enerally consider bufferin tables with many read accesses but with fewer than 455 chan es per day. The system displays the number of chan es made since the system was started. (y checkin the dates at the top of the screen, you can determine the number of days that have elapsed since system startup. Therefore2 Changes per da$ 6 &otal changes &otal number of da$s in the selected time period *ou should also consider the table type. -nly buffer tables of type ,#%(SP or Pool are important here. " nore those that are of type System as these tables should not be chan ed.
&ransports
Every time you transport new developed source into the system that is runnin the tp , you invalidate all entries in the pro ram buffer and clear all other buffers (command DSENC ). 3nlike the other buffers, the pro ram buffer does not start empty, but is filled with invalid pro rams. "t is very important to e!ecute as fe# transports as possible and to collect data for collective transports.
Buffer resets
Settin up a buffer re#uires a lar e number of database and network accesses, and places a considerable load on the system. Therefore, only reset the buffers if inconsistencies occurred between the buffer and the database. This mi ht happen, for e!ample, if you update a buffered table with native SO,, that is, the database table is updated directly by bypassin the buffer. To reset the table buffers, enter DTA? in the command field. 3se the command DSENC to reset all the SAP buffers on the application server. These commands only affect the buffers of the application server on which the commands are entered. The buffers of the other application servers in the network are not affected. 3sin the commands DTA? and DSENC places an e!tremely lar e load on the system. "n lar e systems, it could take up to one hour (dependin on the access profile) for the buffer load to return to its ori inal state. System performance is reatly impeded durin this time.
Program de"elopment
Software development should not be done in a productive system, as development systems re#uire a very lar e pro ram buffer.
.heck the2 Available freespace Available directories -b:ect swaps (uffer history.
Program buffer
The pro ram buffer contains the enerated A(AP pro rams (load).
Critical effects on the program buffer &ransports Every time a new source is transported into the system usin the R3trans pro ram, all entries in the pro ram buffer are invalidated, and all other buffers are cleared (e#uivalent to the DSENC command). 3nlike the other buffers, the pro ram buffer is not empty after transport, but is filled with invalid pro rams. Therefore, it is better to e!ecute as few transports as possible and to collect data to do several transports at once. 9or more information, see Pro ram (uffer.
&able buffers
As mentioned above, the #uality of the sin le key buffer increases very slowly from system startup. Therefore, bad #uality (J I&P) should only be of concern if there is no freespace left in the buffer. The #uality of the eneric key buffer should be reater than IDP and can be up to IIP. 9or more information, see Table (uffers See also%
memory and the roll area (when the :ob is Nrolled outN of a work process). The pa in area stores special data for the A(AP processor, while the e!tended memory stores a lar e portion of the internal tables of a pro ram. *ou set the roll and pa in buffers, as well as the e!tended memory usin the parameters in the instance profile.
Buffer &$pes
'efinition
There are seven main roups of buffers found in the shared memory. 9or more information on each buffer type, see %
6epository (uffers Table (uffers Pro ram (uffer SAP ui (uffers 6oll and Pa in (uffers SAP .alendar (uffer SAP .ursor .ache
The 6epository buffer is mainly known as the nametab buffer (;TA(), but it is also known as the A(AP )ictionary buffer. The description of a table in the 6epository is distributed amon several tables (for field definition, data element definition and domain definition). This information is summari+ed in the name table. The name table is saved in the followin database tables2 ));TT (table definitions) ));T9 (field descriptions)
The 6epository buffer consists of four buffers in shared memory, one for each of the followin 2
&able definitions
TTA( buffer
Table ));TT
Field descriptions
9TA( buffer
Table ));T9
"6E. buffer
Short ,ametab
S;TA( buffer
The Short nametab and 1nitial recor layouts are not saved in the database. "nstead, they are derived from the contents of tables ));TT and ));T9. 1hen access to a table is re#uested, the database access a ent embedded in each work process first reads the Short nametab buffer for information about the table. "f the information is insufficient (for e!ample, the SELECT statement uses a non'primary key) it accesses the ,able e!initions buffer and then the $iel escriptions buffer. (y readin the 6epository buffers, the database access a ent knows whether the table is buffered or not. 3sin this information, it accesses the table buffers (partial buffer or eneric buffer) or the database. The "6E. buffer is read2 1hen a REFRES9 command is e!ecuted in an A(AP pro ram At an :NSERT command, when a record is created in the buffers before the data is inserted and the fields are initiali+ed with the values found in "6E. buffer instance profile.
*ou can set the buffers mentioned above by editin the parameters in the See also%
&able Buffers
'efinition
There are two kinds of table buffers2 Partial table buffers Generic table buffers
Use
The table below displays these table buffers and their functions.
Buffer
Also known as
9unction
,%2-P partial bu!!er single recor table bu!!er single key bu!!er
Stores sin le table entries, that is, one record with its field values.
,%2generic bu!!er resi ent3table bu!!er 4556 bu!!er generic key bu!!er
Stores a ran e of table entries, that is, a ran e of records with their field values. The eneric table buffer can also store all the entries (records) in a table. This is known as resident (or full) bufferin .
1hether a table is partially buffered, enerically buffered, or fully buffered depends on its attribute settin s. *ou can chan e the buffer attributes of a table usin Transaction SE%7. 9or more information, see Typical Parameter Settin s for SAP (uffers. See also%
Program Buffers
'efinition
The followin table displays the pro ram buffer and its functions.
Buffer
Also no#n as
Function
Stores the compiled e!ecutable versions of A(AP pro rams (loads). The contents of this buffer are stored in tables )&%&, (A(AP loads), )&%&T (te!ts) and )&%&* (symbol table).
The pro ram buffer has a hash structure and supports ,63 (+east Recentl$ Used) displacement. *ou can reconfi ure the pro ram buffer by ad:ustin its instance profile parameters
SAPgui Buffers
'efinition
There are two kinds of SAP ui buffers2 Presentation buffers /enu buffers
The followin table shows the SAP ui buffers and their functions2
Buffer
Also no#n as
Function
Presentation buffer
Stores the enerated screens ()*;P6- loads). The presentation buffer is ad:usted by chan in its instance profile parameters.
/enu buffer
C.% bu!!er
Stores ob:ects from the SAP ui. 9or e!ample, menus, pushbutton definitions. These ob:ects are from tables )78DT (.3A te!ts) and )78B, (.3A loads). The buffer has directory structure and supports ,63 displacement. The menu buffer is ad:usted by amendin its instance profile parameters.
'efinition
The SAP cursor cache helps to improve system performance by reducin the number of parsin of SO, statementsG it is database'dependent. The SAP cursor cache is only sli htly different for -racle, "nformi! and SAP )(. "t is totally different for AS48&& and /S SO, Server. There are two types of cursor caches2 Statement ") cache Statement cache
.han in the SAP cursor cache parameter value in the default profile will affect other areas as well. *ou are therefore advised not to tune it without the recommendation of a #ualified SAP e!pert.
The statement ") provides an easy way to reco ni+e statements. There may be different statement ")s for one statement (for e!ample, different A(AP pro rams doin the same SELECT ). The Statement Analy+er eliminates such duplicities. 1hen it receives an SO, statement (in control block form), this database interface module checks if the statement is simple (for e!ample, SELECT"F"FROM"T/,,"C9ERE)))"6)))"ANG)))"6))) ), or comple! (for e!ample, SELECT"F"FROM"T/,,"C9ERE)))"$)))"ANG)))"%))) ). "f the statement ") is simple, the Statement Analy+er assi ns a Mnormali+ed< statement "). The analy+er is called by the 6SO, or -pen SO, interface. "f it is able to assi n a normali+ed "), the ori inal ") (if e!istin ) is replaced.
Si+es of the most important buffers .all statistics (database activity) /emory usa e Semaphore usa e Table calls 3sa e and confi uration of the roll file 3sa e and confi uration of the pa in file 3sa e of e!tended and heap memory (uffer resets ;umber of ob:ects in the buffers
See also%
(uffer /onitor and Tune Summary .heckin /emory 3sa e )isplayin Table (uffers (uffer Ouality2 -verview
Buffers
The first column of the tune summary shows the names of the buffers2 The four 647 6epository buffers The pro ram, .3A, screen, and calendar buffers The table buffers
See also%
6epository (uffers (;ametab (uffers) 9it Ratios The hit ratios are displayed in percent. The followin dia ram illustrates what is meant by hit ratios. A hit is when a ob:ect (such as a table, screen or pro ram) in the buffer(%) is accessed. "f the ob:ect has to be read from the database(B), the buffer access fails.
Buffer 7ualit$ (uffer Ouality K saved database calls 4 (database calls Q saved database calls) The database interface can translate one lo ical re#uest into several database calls. (uffer Ouality2 -verview
Allocated Si-e The allocated si+e is measured in F(. "t is different from the a"ailable buffer si-e because part of the space is used for buffer mana ement.
Freespace 9reespace is important for analy+in the buffer si+e. The space remainin in the buffer is displayed in F( and as a percenta e of the available buffer si+e.
,umber of 'irectories Even if there is freespace in the buffer, ob:ects may not always be loaded into the buffer because there are no more free directories. The buffer monitor displays the number of directories available for the buffer, and the number and percenta e free. The buffer directories point to the location of the ob:ects stored in the buffer.
S#apping 1hen a buffer has insufficient freespace or free directories, it has to s#ap ob:ects out of the buffer in order to load a new ob:ect. The column Swap shows how many ob:ects have been swapped out since system startup.
'atabase Accesses 1hen an ob:ect cannot be read from the buffer, the database has to be accessed. The number of database accesses is displayed in the last column on this screen.
"f a critical situation occurs in a buffer, the data for that buffer (freespace4ob:ect swaps) is displayed in red.
SAP memor$
The followin information is displayed2 The amount of space currently used in percent and in F( The ma!imum value (ma!. use) since system startup The amount of space used in shared memory and on the disk.
For more information% 9or details about an individual memory area, select a line. The Detaile %nalysis windows (&)ten e Memory and +eap Memory) include functions for information about2
Current parameters The instance profile settin s for memory mana ement
This cache has a fi!ed si+e and cannot be chan ed. SAP .ursor .ache
Call statistics
The ,une Summary screen displays the access statistics for all data either residin in the SAP pool buffers or the database. The followin table describes the information of the tune summary. &able% &une Summar$
Information .ontains the different kinds of statements that can be used to access a table. ( SELECT"S:NALE , SELECT , :NSERT , HPGATE , GELETE ). Shows the total ' or in the case of the hit ratios, the avera e ' data of the call statistics. Shows the hit rates for the SELECT statements for buffered tables.
A hit rate for the other statements ( HPGATE , :NSERT and GELETE ) is not displayed because these statements always have to be passed to the database. %2%P Processor )isplays the number of lo ical re#uests to the buffered tables, and how many of them failed.
The subse#uent columns display2 The avera e database call time The number of affected rows.
Table access failures are not the same as buffer access failures. The SO, statements SE,E.T S";0,E, ";SE6T, )E,ETE, and 3P)ATE can fail if the specified data record does not e!ist. A buffer access can NfailN, if the table has not yet been loaded into the buffer. Some lo ical re#uests cannot be satisfied by buffer access and re#uire that the database be accessed.
Buffer histor$ Analy+e the buffer history to find the correct buffer si+es.
&o displa$ the buffer histor$% 9rom the initial 647 screen, choose ,ools % ministration Monitor Per!ormance Setup/2u!!ers 2u!!ers Goto Per!ormance atabase ,his server history The data displayed is similar to the columns in the ,une Summary. The si+es of the buffers may be appropriate for the current system situation, but may have been too small for recent days. "f so, you should resi+e the buffers even if the si+es are appropriate for the current situation.
/ost server memory resources are used by the2 -peratin system (usually around 7& /() )atabase system (See the database documentation) SAP System
Procedure
To check the memory usa e, from the initial screen, choose % ministration System a ministration Monitor Per!ormance Setup/2u!!ers 2u!!ers Goto Current local ata % itional !unctions Storage. *ou should allocate as much memory as possible to ensure that ood buffer #uality.
"t is usually more effective to allocate memory to the SAP buffers than to the database buffers. >owever, once the buffers are optimi+ed (that is, no more ob:ect swaps occur), it does not make sense to increase buffer si+e further, since this will not improve performance.
*ou should only buffer tables that you chan e infre#uently. *ou specify whether or not a table should be buffered in Transaction SE%7. .han es to buffered information must be updated in the buffers of other application servers that are sharin that information. These updates can adversely affect performance. The more servers that need updatin , the more e!pensive the update process. "f all operations are performed on a central server, you can deactivate the buffer update messa in service. There are two profile parameters that control the behavior of synchroni+ation for the application server2
Parameter name
Recommended "alue
rdisp/'ufrefmode
rdisp/'ufrefmode
rdisp/'ufreftime
'ispla$ing Parameter Settings for the Current Instance
5&
instance profile. 6estart the instance to activate any chan es. To display
6. 9rom the SAP initial screen, choose % ministration System a ministration Monitor Per!ormance
Setup/2u!!ers 2u!!ers Goto Profile parameters Current.
The re#uired data cannot be stored in the buffers. "nstead, ob:ects have to be swapped out of the buffers. This causes e!pensive database accesses. (uffers set too lar e /emory is wasted. Pa in may occur if too much memory is taken from the operatin system and allocated to the SAP buffers and database. *ou should check re ularly whether the buffer si+e is suited to your system re#uirements. Since buffers are crucial for the performance of the SAP System, all buffers (e!cept the SAP cursor cache) should be ad:usted to their optimal value. The optimum si+e for each buffer depends lar ely on the specific confi uration of the server, that is, the applications, the number of users workin in each module, and so on. Therefore, it is difficult to specify values suitable for all confi urations. The most important criterion for the correct buffer si+e is the buffer #uality.
*ou should not ad:ust buffers in cases where poor buffer #uality is due to special circumstances, for e!ample, ob:ect swaps in the pro ram buffer in a system with a hi h level of development activity.
Buffer &uning Chec list
"f there is insufficient memory to set the appropriate buffer si+es, you should consider addin physical memory. >owever, since this could take some time, you may have to decide which buffers are most important and should be ad:usted first usin the e!istin memory. As a uideline, the most important buffers are those that2 Are responsible for ood dialo performance Are used most fre#uently 6e#uire relatively few memory resources
6. ). ?. D. <.
6epository buffers (nametab buffers) Table buffers Pro ram buffers 6oll and pa e file buffers SAP ui buffers
See also%
/any of the SAP buffers are contained in shared memory pools. 1hen the si+es of these buffers are chan ed, it is necessary to ad:ust the si+e of the correspondin pool as well. The ../S profile maintenance tool makes these ad:ustments automatically.
Procedure
To display information about the shared memory se ments and the pools, from the initial screen, choose ,ools % ministration Monitor Per!ormance Setup/2u!!ers 2u!!ers Goto Current local ata % itional !unctions Storage Share memory etail. *ou can chan e the pools and the shared memory se ments with parameter ipc5s'm_psi*e_$two& igit" s'are &memor."i % . *ou can chan e both the si+e and the location of the shared memory se ment. The shared memory re ions with the keys %&, B&, and 8& are used as shared memory pools by the SAP System. The si+e of these pools is determined by the values of the system profile parameters ipc5s'm_psi*e_/, , _-, , and _;, .
ipc5s'm_psi*e_/,"6/-,,,,,," This parameter sets the si+e of shared memory pool %& to %B,&&&,&&& bytes. The shared memory pools must be lar e enou h to hold the shared memory re ions that belon to them. "f you chan e the si+e of a re ion that belon s a pool, you must also chan e the si+e of the pool. *ou must also chan e the si+e of a pool if you add a new shared memory re ion to it. 9or all other keys, this parameter can be used to define the position of the shared memory re ion. "n this case the shared memory parameters have the followin format2 ipc5s'm_psi*e_nn"6"!alue" where nn is the SAP shared memory key and value is the attribute of the shared memory re ion.
!b=ect e$
Pool
%% H %I
%&
B% H BI
8% ' 8I
8&
All other ob:ects are not located in a pool, as specified by the default settin s.
A shared memory parameter ipc5s'm_psi*e_nn can have the followin values2 The shared memory re ion is removed from its standard pool (if any) and is allocated directly by the operatin system.
&he "alue 5
ipc5s'm_psi*e_/<"6, removes the %&&P'resident table buffer from its default pool %&. "f your host operatin system does not limit the number of shared memory allocations, you can remove shared memory re ions from pools. 6emovin a re ion from a pool simplifies the maintenance of the system profile because you no lon er need to ad:ust the si+e of a pool when you ad:ust the si+e of a re ion. "f a re ion does belon to a pool, you must chan e the pool si+e in accordance with chan es that you make to the shared memory re ions in the pool. The shared memory re ion is assi ned to the shared memory pool whose shared memory key is the same as the value.
A negati"e "alue
ipc5s'm_psi*e_33"6&/, adds the partial table buffer to shared memory pool %&.
Shared memory parameters other than those for keys %&, B&, and 8& should not have values reater than &. -therwise, the SAP System treats the shared memory re ion as a pool.
The default settin s for the shared memory parameters will not be automatically found in the profile. They will only appear if they have been inserted manually, either to confirm or to chan e the default settin .
"ote "umber ----314 ---667 ---6468 ---7-55 ---888 --64.7 --76858 --71145 --55==7 --53511 --5=878 --.-.3= --35766 --=81. --441. -6-754-6-5=.= -66-581 -665..-66=4-= -661-45 -67===5 -656-5-65=.=1 -654.61 -6..4=1 -6.=381 -635=. -633.-7 -6861= -68775 -687788 -683.13 $5 #nstance /annot Be Started Trace #nformation (ogging Table /!anges #n $5 Startup Fails Origins Of +rofile +arameters 9ow %oes $5trans :or' ;
%escription
$AM E<tension :!ic! /!anges To +rofile /!anging T!e +assword Of T!e User SA+$5 /orrect /onfig Of %r:atson +roblems :it! "T Sc!eduler SA+ Tool $5/!op #nst s T/+#+ :in "T "T Appear To 9ang SA+ Ser>ice +roblems +roblems :it! T/+#+ Security $5 on "T Use Of "T +erfromance Monitor +erformance +arameter $ecommendation "ew //MS Monitoring #nfrastructure (ogon (oad Balancing %efault (ogon &roup Memory Allocation %isplay #n SM-. and ST-7 /oncepts Of %efining (ogon (oad Balancing Se>eral En?ueue :+ +erformance +roblem #n .3B #nstalling %ialog #nstace &ateway .)8< (ogging User Actions System "ot #nstalled +roperly +@A"OF$EES+A/E +erformance Analysis /!ec'(ist Analysis Of 9anging Situations /onfig Alert Values roll area problem "T #nst $5trans $5 Ser>er Security Under "T
-61618= -617-8= -7-547. -77-44 -7856= -71547 -5-731 -554=5 -5.441 -51-37 -54.67 -..8.4 -36=14 -86878 -8=756 -81148 -=4.53 -17833 -1373. -11.68 -4=.86 -66-6=7 -66-374 -6=1..1 -76=3-=
9ang Situation :it! S+O :or'+rocess E<t Mem (imited To 1&B +erformance +roblems .8 Ma< "o Of Term $eac!ed Setting Up (ogon (oad Balancing $5 systems on "T Ser>ers %r:atson Error #n $5 Semap!ore /!ec' OS (e>el #f $5 #s $unning System +anic %ue To (ow Space 9ow Many :+ To /onfig Error %uring Startsap +oor User %istribution #n (ogon T!res!9old Values +@AA"OAF$EEAS+A/E $5trans +erformance +roblems And /luster Automatic $eset From +$#V Session #nstance "ot /onfig +roperly #nst %ailog #nstance Bero Admin Mem Management For .-A "T //MS En!ancements Transaction :it! (arge Storage $e?uirements "T +erf Monitor Sys /onfig Monitor Tree problems Starting $5 #nstance