SAP memory parameters
Hi Guys,
I am looking for some advice from Basis Gurus regarding SAP/Oracle memory sizing.
We have a HP server with 16G physical memory. I am goign to have an SAP central instance and a 1.2 TeraByte Oracle database server on this one.
I would like some advice regarding the memory sizing, what percentage of physical memory should be allocated to SAP and oracle. In addition to Oracle, we will use Tivoli for monitoring and TDP backups which also will consume memory.
Please give me some perpective about how to approach this subject as have not done this before.
Thanks
Cyrus
Also, please let me know how to decide on the number of different work processes that should be used for the central SAP instance based ont his server.
If I am missing any information that would be needed, please let me know so I can provide it.
Thanks
Cyrus
Similar Messages
-
SAP ECC 6.0 on Windows 2003 (x86_64) _Suggested Memory Parameters
Dear Tech Masters,
I have done an System Copy of SAP ECC 6.0 from windows 2003 x86_32bit --> Windows 2003 x86_64bit OS.
Can you please help me with SAP Notes # to get the recommended SAP Memory parameters for this platform(SAP on windows 2003 64bit ),also for profile parameters. Any suggestion on Performance tuning would be a great help for me.
Thanks
Rabi PalYou can start with
Note 146289 - Parameter Recommendations for 64-Bit SAP Kernel
Markus -
Memory parameters settings as per RAM and swap size
Hello Experts,
We have installed the newly SAP systems (Solman 7.1, ECC6 EHP 5, and CRM EHP1), below is the platform-
OS - Linux x86_64
RAM - 20 GB (ECD ABAP and solman (ABAP+JAVA)) and 24 GB (CRM ABAP).
swap size is twice of RAM.
Kernel - 720 64bit
Current memory parameters values are (by default) -
ztta/roll_area 6500000
ztta/roll_first 1
ztta/short_area 3200000
rdisp/ROLL_SHM 32768
rdisp/PG_SHM 32768
rdisp/PG_LOCAL 150
em/initial_size_MB 4096
em/blocksize_KB 4096
em/address_space_MB 4096
ztta/roll_extension 2000000000
abap/heap_area_dia 2000000000
abap/heap_area_nondia 2000000000
abap/heap_area_total 2000000000
abap/heaplimit 40000000
abap/use_paging 0
Could anyone suggest the calculation for above parameters so I can tune it according to my platform to avoid any memory bottleneck.
Regards
Saurabh MishraHI
For 20 Gb Instance For 24 GB
ztta/roll_area 6500000 em/initial_size_MB 16000 MB
ztta/roll_first 1
ztta/short_area 3200000
rdisp/ROLL_SHM 32768
rdisp/PG_SHM 32768
rdisp/PG_LOCAL 150
em/initial_size_MB 12000
em/blocksize_KB 4096
em/address_space_MB 4096
ztta/roll_extension 2000000000
abap/heap_area_dia 2000000000
abap/heap_area_nondia 10000000000
abap/heap_area_total 12000000000
abap/heaplimit 40000000
abap/use_paging 0
and Configure ABAP Buffer abap /buffer size of 800 MB(Initially)
CUA and Screen Buffer of 20 Mb each.
The lowered values because DB Should be considered while changing SAP Memory,even though memory is allocated on need basis.
Regards
Arun.H -
How to remove a grobal parameter in SAP memory
As known to all, we can use SET/GET PARAMETER to pass parameters among multiple programs.
Now I'm just curious about how to remove a grobal parameter in SAP memory, and how can I get the list of all grobal parameter in SAP memory.
Any idea?Hi william,
1. how to remove a grobal parameter in SAP memory
Well, i dont think we can REMOVE.
At most, we can RESET it to blank(initial)
2. set parameter id 'BUKRS' FIELD ''.
regards,
amit m. -
hi all,
Please tell me the code for passing a particular flag value to a SAP memory . Then calling the memory at any other location and freeing the memory thereafter.
Also please let me know the code for disabling/enabling a particular screen field .
Thanks ,
PaulTo fill the input fields of a called transaction with data from the calling program, you can use the SPA/GPA technique. SPA/GPA parameters are values that the system stores in the global, user-specific SAP memory. SAP memory allows you to pass values between programs. A user can access the values stored in the SAP memory during one terminal session for all parallel sessions. Each SPA/GPA parameter is identified by a 20-character code. You can maintain them in the Repository Browser in the ABAP Workbench. The values in SPA/GPA parameters are user-specific.
<b>SPA/GPA Parameters as Default Values</b>
The SPA/GPA Parameter Technique is a general procedure for filling the initial screen when a program is called. To use this technique for parameters on selection screens, you must link the parameter to an SPA/GPA parameter from the SAP memory as follows:
PARAMETERS <p> ...... MEMORY ID <pid>......
If you use this addition, the current value of SPA/GPA parameter <pid> from the global user-related SAP memory is assigned to parameter <p> as a default value. Description <pid> can contain a maximum of twenty characters and must not be enclosed in quotation marks.
REPORT DEMO.
<b>PARAMETERS TEST(16) MEMORY ID RID.</b>
ABAP programs can access the parameters using the SET PARAMETER and GET PARAMETER statements.
To fill one, use:
<b>SET PARAMETER ID <pid> FIELD <f>.</b>
This statement saves the contents of field <f> under the ID <pid> in the SAP memory. The code <pid> can be up to 20 characters long. If there was already a value stored under <pid>, this statement overwrites it. If the ID <pid> does not exist, double-click <pid> in the ABAP Editor to create a new parameter object.
To read an SPA/GPA parameter, use:
<b>GET PARAMETER ID <pid> FIELD <f>.</b>
<b>Passing Data Between Programs</b>
There are two ways of passing data to a called program:
Passing Data Using Internal Memory Areas
There are two cross-program memory areas to which ABAP programs have access (refer to the diagram in Memory Structures of an ABAP Program) that you can use to pass data between programs.
<b>SAP Memory</b>
SAP memory is a memory area to which all main sessions within a SAPgui have access. You can use SAP memory either to pass data from one program to another within a session, or to pass data from one session to another. Application programs that use SAP memory must do so using SPA/GPA parameters (also known as SET/GET parameters). These parameters can be set either for a particular user or for a particular program using the SET PARAMETER statement. Other ABAP programs can then retrieve the set parameters using the GET PARAMETER statement. The most frequent use of SPA/GPA parameters is to fill input fields on screens (see below).
<b>ABAP Memory</b>
ABAP memory is a memory area that all ABAP programs within the same internal session can access using the EXPORT and IMPORT statements. Data within this area remains intact during a whole sequence of program calls. To pass data to a program which you are calling, the data needs to be placed in ABAP memory before the call is made. The internal session of the called program then replaces that of the calling program. The program called can then read from the ABAP memory. If control is then returned to the program which made the initial call, the same process operates in reverse. For further information, refer to Data Clusters in ABAP Memory.
Filling Input Fields on an Initial Screen
Most programs that you call from other programs have their own initial screen that the user must fill with values. For an executable program, this is normally the selection screen. The SUBMIT statement has a series of additions that you can use to fill the input fields of the called program:
Filling the Selection Screen of a Called Program
You cannot fill the input fields of a screen using additions in the calling statement. Instead, you can use SPA/GPA parameters. For further information, refer to Filling an Initial Screen Using SPA/GPA Parameters.
regards
vinod -
Examples for SAP Memory and ABAP Memory
Hi all,
can u give me one example of sap memory and abap memory.
RanjithHi,
<b>SAP Memory</b>
SAP memory is a memory area to which all main sessions within a SAPgui have access. You can use SAP memory either to pass data from one program to another within a session, or to pass data from one session to another. Application programs that use SAP memory must do so using SPA/GPA parameters (also known as SET/GET parameters). These parameters can be set either for a particular user or for a particular program at the time of logon using the SET PARAMETER statement. Other ABAP programs can then retrieve the set parameters using the GET PARAMETER statement. The most frequent use of SPA/GPA parameters is to fill input fields on screens .
<b>example:</b>
ABAP programs can access the parameters using the SET PARAMETER and GET PARAMETERstatements.
To fill one, use:
SET PARAMETER ID pid FIELD f
This statement saves the contents of field f under the ID pid in the SAP memory. The ID pid can be up to 20 characters long. If there was already a value stored under pid, this statement overwrites it. If you double-click pid in the ABAP Editor, parameters that do not exist can be created as a Repository object.
To read an SPA/GPA parameter, use:
GET PARAMETER ID pid FIELD f.
This statement places the value stored under the pid ID into the variable f. If the system does not find any value for pid in the SAP memory, sy-subrc is set to 4. Otherwise, it sets the value to 0.
<b>ABAP Memory</b>
ABAP memory is a memory area that all ABAP programs within the same internal session can access using the EXPORT and IMPORT statements. Data within this memory area remains throughout a sequence of program calls, with the exception of LEAVE TO TRANSACTION. To pass data to a program that you are calling, the data needs to be placed in ABAP memory before the call is made from the internal calling session using the EXPORT statement. The internal session of the called program then replaces that of the calling program. The program called can then read from the ABAP memory using the IMPORT statement. If control is then returned to the program that made the initial call, the same procedure operates in reverse.If a transaction is called using LEAVE TO TRANSACTION, the ABAP memory and the call stack are deleted. They cannot be used for data transfer.
Since objects belonging to ABAP objects can only be accessed within an internal session, it does not make sense and is therefore forbidden (from a syntax point of view) to pass a reference to an object to a calling program through the ABAP memory.
<b>Example:</b>
Export hello to memory id 'Hello_world'.
Import hello from memory id 'Hello_world'
Regards
Sudheer -
Hi Friends ....Difference between SAP memory and ABAP memory
Hi Friends,
I faced a interview and they ask this question
What is the difference between SAP Memory and ABAP memory..conti
SAP Memory
SAP memory is a memory area to which all main sessions within a SAPgui have access. You can use SAP memory either to pass data from one program to another within a session, or to pass data from one session to another. Application programs that use SAP memory must do so using SPA/GPA parameters (also known as SET/GET parameters). These parameters can be set either for a particular user or for a particular program using the SET PARAMETER statement.
Other ABAP programs can then retrieve the set parameters using the GET PARAMETER statement. The most frequent use of SPA/GPA parameters is to fill input fields on screens.
ABAP Memory
ABAP memory is a memory area that all ABAP programs within the same internal session can access using the EXPORT and IMPORT statements. Data within this area remains intact during a whole sequence of program calls. To pass data to a program which you are calling, the data needs to be placed in ABAP memory before the call is made. The internal session of the called program then replaces that of the calling program. The program called can then read from the ABAP memory. If control is then returned to the program which made the initial call, the same process operates in reverse.
A simple example of ABAP memory is using the EXPORT/IMPORT statements.
Here in this program, I get the data, export it to memory,
clear out the internal table in my progam, then reimport the data into it and write out the data.
You probably wounldn't do this in a normal program,
but this is how you can pass data from program a to program b when A Submits program B.
report zxy_0002 .
data: it001 type table of t001 with header line.
select * into table it001 from t001.
export it001 = it001 to memory id 'ZXY_TEST'.
clear it001. refresh it001.
import it001 = it001 from memory id 'ZXY_TEST'.
loop at it001.
write:/ it001-bukrs, it001-butxt.
endloop.
SAP Memory
SAP memory is a memory area to which all main sessions within a SAPgui have access.
You can use SAP memory either to pass data from one program to another within a session,
or to pass data from one session to another.
Application programs that use SAP memory must do so using SPA/GPA parameters (also known as SET/GET parameters).
These parameters can be set either for a particular user
or for a particular program using the SET PARAMETER statement.
Other ABAP programs can then retrieve the set parameters using the GET PARAMETER statement.
The most frequent use of SPA/GPA parameters is to fill input fields on screens
ABAP/4 Memory
ABAP memory is a memory area that all ABAP programs within the same internal session can access
using the EXPORT and IMPORT statements.
Data within this area remains intact during a whole sequence of program calls. To pass data
to a program which you are calling,
the data needs to be placed in ABAP memory before the call is made.
The internal session of the called program then replaces that of the calling program.
The program called can then read from the ABAP memory.
If control is then returned to the program which made the initial call, the same process operates in reverse.
SAP memory
The SAP memory, otherwise known as the global memory,
is available to a user during the entire duration of a terminal session.
Its contents are retained across transaction boundaries as well as external and internal sessions.
The SET PARAMETER and GET PARAMETER statements allow you to write to, or read from, the SAP memory.
ABAP/4 memory
The contents of the ABAP/4 memory are retained only during the lifetime of an external session
(see also Organization of Modularization Units).
You can retain or pass data across internal sessions.
The EXPORT TO MEMORY and IMPORT FROM MEMORY statements allow you to write data to, or read data from, the ABAP memory.
ABAP Memmory & SAP Memmory
http://www.sap-img.com/abap/difference-between-sap-and-abap-memory.htm
http://www.sap-img.com/abap/type-and-uses-of-lock-objects-in-sap.htm
Set
http://www.geocities.com/SiliconValley/Campus/6345/set_para.htm
GET
http://www.geocities.com/SiliconValley/Campus/6345/get_para.htm
EXPORT
http://www.geocities.com/SiliconValley/Campus/6345/export01.htm
Other Imp Help
http://www.geocities.com/SiliconValley/Campus/6345/abapindx.htm -
In ST02 SAP Memory roll area readings are on disk
Hi,
Our production system is running on 16GB RAM and 32bit windows platforn.
Readings in ST02 of SAP Memory , roll are readings are on disk
Below are the parameters value configured in the production system.
Suggest me if any changes to be done
rdisp/ROLL_SHM 6000
rdisp/ROLL_MAXFS 32768
rdisp/PG_SHM 6000
rdisp/PG_MAXFS 32768
abap/swap_reserve 20971520
em/initial_size_MB 8192
em/blocksize_KB 4096
em/stat_log_size_MB 20
em/stat_log_timeout 0
em/address_space_MB 512
rsdb/ntab/ftabsize 60000
rsdb/ntab/sntabsize 3000
Regards
KumarHi Kumar,
I want to add few suggestions here, which may help here.
rdisp/ROLL_SHM 6000 ---> increase to 16384
rdisp/PG_SHM 6000 --> increase to 16384
(in addition to this i have noticed that the initial records are at 60 % only)??
If intial record buffers are filled for 60% may not be issue unless you see continuous swaps daily. If you see consecutive more swaps occuring daily, then increase the corresponding buffers to 20% of current size.
Among all the buffers Program buffer is very important for performance. If more than 10000 swaps are occuring daily, you may incerease by 30% of current size, which surely solved your system performance issues.
Hope this helps!!
If you have further queries, plese let me know.
Thanks and Regards,
Pavan Kumar Gali. -
Issue regarding SAP/GPA parameters
Issue : When Sales Order, Delivary, Transfer Order, Billing is created by one user , and if the same user creates Sales Return Order(VA01) it is working fine. But if any other user creates this Sales Return then it is not showing Sales Return AMOUNT value which has to be copied from the Billing Dcoument.
This Sales Return transaction calling Form Routine which contains code to get Sales Return value . when same user who created Sales Order, Delivary, Transfer Order, Billing creates Sales Return then SPA/GPA PARAMETERs used in Form Routine program to get Reference Billing Document no.,etc , are getting populated by values , but if different user creates Sales Return this SAP/GPA PARAMETERS is not getting populated. i.e
DATA V_VBELN TYPE VBELN.
GET PARAMETER ID 'VF' FIELD V_VBELN .
why it is not getting populated plz helpHi M Kumar,
Please note SPA / GPA are user specific, hence if same user creates Sales Return Order values will be copied from previously created document, while it will not be copied for other user.
Set Parameter : "Writes the contents of the field f to the global user-specific SAP memory and the local transaction-specific SAP memory under the ID pid. "
Regards,
Mohaiyuddin -
Hi experts,
How can calculate the value of sap memory parameter if wish u tune.
i have app+db both different servers.
no central instance.
12-12 GB both server.
Please suggest which value set for the sap memory parameter.
REgards,
VivekYou need to tune SAP and DB parameters for good performance.
830576 Parameter recommendations for Oracle 10g
172747 SAP on HP-UX: OS kernel parameter recommendations
Refer to the document on Memory Management and forums
http://help.sap.com/printdocu/core/print46c/en/data/pdf/BCCSTMM/BCCSTMM.pdf
http://forums.sdn.sap.com/thread.jspa?threadID=1788609
Regards,
Arjun -
Hi All,Can any provide an example for SAP MEMORY AND ABAP memory
Hi All,
Can any provide me an example for SAP MEMORY AND ABAP memory.
thanks®ards.
Bharat.HI Bharat
A simple example of ABAP memory is using the EXPORT/IMPORT statements.
Here in this program, I get the data, export it to memory,
clear out the internal table in my progam, then reimport the data into it and write out the data.
You probably wounldn't do this in a normal program,
but this is how you can pass data from program a to program b when A Submits program B.
report zxy_0002 .
data: it001 type table of t001 with header line.
select * into table it001 from t001.
export it001 = it001 to memory id 'ZXY_TEST'.
clear it001. refresh it001.
import it001 = it001 from memory id 'ZXY_TEST'.
loop at it001.
write:/ it001-bukrs, it001-butxt.
endloop.
SAP Memory
SAP memory is a memory area to which all main sessions within a SAPgui have access.
You can use SAP memory either to pass data from one program to another within a session,
or to pass data from one session to another.
Application programs that use SAP memory must do so using SPA/GPA parameters (also known as SET/GET parameters).
These parameters can be set either for a particular user
or for a particular program using the SET PARAMETER statement.
Other ABAP programs can then retrieve the set parameters using the GET PARAMETER statement.
The most frequent use of SPA/GPA parameters is to fill input fields on screens
ABAP/4 Memory
ABAP memory is a memory area that all ABAP programs within the same internal session can access
using the EXPORT and IMPORT statements.
Data within this area remains intact during a whole sequence of program calls. To pass data
to a program which you are calling,
the data needs to be placed in ABAP memory before the call is made.
The internal session of the called program then replaces that of the calling program.
The program called can then read from the ABAP memory.
If control is then returned to the program which made the initial call, the same process operates in reverse.
SAP memory
The SAP memory, otherwise known as the global memory,
is available to a user during the entire duration of a terminal session.
Its contents are retained across transaction boundaries as well as external and internal sessions.
The SET PARAMETER and GET PARAMETER statements allow you to write to, or read from, the SAP memory.
ABAP/4 memory
The contents of the ABAP/4 memory are retained only during the lifetime of an external session
(see also Organization of Modularization Units).
You can retain or pass data across internal sessions.
The EXPORT TO MEMORY and IMPORT FROM MEMORY statements allow you to write data to, or read data from, the ABAP memory.
ABAP Memmory & SAP Memmory
http://www.sap-img.com/abap/difference-between-sap-and-abap-memory.htm
http://www.sap-img.com/abap/type-and-uses-of-lock-objects-in-sap.htm
Set
http://www.geocities.com/SiliconValley/Campus/6345/set_para.htm
GET
http://www.geocities.com/SiliconValley/Campus/6345/get_para.htm
EXPORT
http://www.geocities.com/SiliconValley/Campus/6345/export01.htm
http://help.sap.com/saphelp_nw04/helpdata/en/fc/eb3bc4358411d1829f0000e829fbfe/frameset.htm
Other Imp Help
http://www.geocities.com/SiliconValley/Campus/6345/abapindx.htm
Regards Rk -
SAP Memory, Set and Get parameter
Hi All,
I am running two programs in background from program1
Eq: Program1 --> Calls 2 programs
Program1_01.(First Program)
Program2_01(Second Program).
Programs1 schedules Program1_01 and Program1_02 in background. These two programs are interdependent.
Program1_01 extracts data, evaluates and sets the Flag. This Flag is exported to SAP Memory using
Set parameter id 'p_id_flag' field Flag.
Program1_02 checks for Program1_01 is completed in background. If complted gets the Flag value from SAP Memory using "Get paramter id 'p_id_flag' field Flag.
When i checked this is not happning. When saw Flag in Program1_01 is set as Flag = 'X'.
When I came and checked in Program1_02 after Get Parameter statement Falg value is SPACE.
Cn hlp on this?Hi,
The problem simply lies in fact that pid was provided in lowercase.
Use:
SET PARAMETER ID 'P_ID_FLAG' FIELD flag.
GET PARAMETER ID 'P_ID_FLAG' FIELD flag.
It works fine then.
Note!
Though SAP claims it is mandatory to create pid in TPARA table, in fact this is not required. Each time SET PARAMETER is executed, system checks if data object P_ID_FLAG was defined in SAP memory. If not it will automatically create it for us. But be carefull here. If there is such data object, its value will be overwritten.
As for your last question, your statement (FREE MEMORY ....) is ok.
Regards
Marcin
Edited by: Marcin Pciak on Jan 22, 2009 1:14 PM -
Hi gurus,
Anybody pls send me Brief notes about SAP memory areas as Roll area, Paging area , extended memory and Heapmemory.anybody pls send me brief details about these memory areas.in ST02
Regards,
BalaramHi Balaram,
Please refer http://help.sap.com/saphelp_bw30b/helpdata/en/7a/caa6f3bfdb11d188b30000e83539c3/frameset.htm for the details,its the best documentation for the same.
Regards,
Sam -
Hi experts. I've here the Enterprise Portal installed in HP-UX and I'd like to use the SAP Memory Analyzer see some problems. I can use it? How I configure it in my desktop? Thanks for your help.
> Hi experts. I've here the Enterprise Portal installed
> in HP-UX and I'd like to use the SAP Memory Analyzer
> see some problems. I can use it? How I configure it
> in my desktop? Thanks for your help.
Hi,
You can find documentation on the wiki :
https://www.sdn.sap.com/irj/sdn/wiki?path=/display/java/javaMemoryAnalysis&
There's a link on this page
(https://www.sdn.sap.com/irj/sdn/wiki?path=/pages/viewpage.action&pageid=33456)
that explains how to do a heap dump.
Regards,
Markus (/people/markus.kohler/blog) -
SAP Memory Analyzer for 64-bit
where can i get the new SAP Memory Analyzer (JAVA) for windows 64bit installations ?
i just found it for 32 -bit , and this can not be installed on windows 64bit maschines .
thank you
hannes toefferlHi Hannes,
Sorry, I fixed the error on the Wiki page. Currently we can only offer the download of the 32 bit Windows version. We are however discussing to put the current version out as plugins ZIP and hopefully on an update server, as well.
For now, please have a look at our Wiki which describes how to create your own installation based on the plugins stored in the installer:
Excerpt from the Wiki ---
However, since we are based on Eclipse 3.2.0 you can try this: Download Eclipse 3.2.0 for your platform, copy our plug-ins (can be found in the installer -> Resource1.ZIP -> MemoryAnalyzer.zip -> plugins) into the plugins folder of your Eclipse installation and open the Memory Analysis perspective. On Windows 64 bit and Linux 64 bit (x86_64/GTK 2) this proved to work. Don't forget to give your Eclipse installation plenty of Java heap - the more, the faster.
Kind regards,
Vedran
Maybe you are looking for
-
Team Calender in Leave Request Application
Hi Experts, ERP2004 SP17, EP6.0 SP20, ESS/MSS SP17 I am trying to configure the leave request application. I see a link in the "Show team calender" in the application. I configured according the documentation in spro>personal Management>Employee Self
-
I am part of a non-profit that irregularly holds board meetings via a Skype audio conference call. We usually have 7-8 members, all free skype users, in on the calls, but on our last one we had 10. It was an utter failure. Most members could not h
-
When I'm partway through typing an email, the screen freezes, I have to reboot repeatedly to complete the message. I've run scanners for viruses, etc. and came up clean. I'm using gmail, with MCaffee security. I do the 'magic' three, ctrl/alt/del, th
-
I've got a windows 2008r2 server with SQL server 2008, with the following roles and feature active in it AD service, DNS,IIS , DHCP, Hyper-v, Routing and remote access etc and other relevant features. Two days ago my system(server) crashed leaving my
-
HELP! can't import .cr2 files
I have been trying for four hours now to import a bunch of raw image files (.cr2) from my canon EOS rebel t2i camera into aperture. When I plug the camera in I see thumbnail images of the photos, but when I import them I only see black squares with a