cancel
Showing results for 
Search instead for 
Did you mean: 

Memory Limits

Former Member
0 Kudos

Hi,

We are preparing for new servers and currently run SAP 4.6c. We would like to run:

2003 Enterprise 32-bit with 16GB Ram for the SQL 2000 DB server.

2003 Enterprise 32-bit with 16GB ram for the App server.

My questions are, can we utilize the extra ram with SAP? Are there SAP limits or issues? With 4.6c can we use the 64-bit versions? Thoughts?

Thank you much,

Jason

Accepted Solutions (1)

Accepted Solutions (1)

Former Member
0 Kudos

well, as far as I know no hardware Vendor is still producing pure 32 Bit servers. All so called Pentium based servers currently offered should have the AMD64 or EM64T extension, which basicly means that they are 64 Bit hardware where you can install 32 Bit Programs/Operating System on.

The answers depend on the hardware you are intending to buy. SAP Supports two different with 4.6:

1. IA64 platform (also known as itanium or mckinley). there is a nativ 64 Bit version for 4.6 on this platform.

2. X86_64 platform (also known as AMD64/EM64T). You can install 32 and a 64 Bit Operating system on it. As there are really no benefits for the 32 Bit Operating System I am discussing only the 64 Bit version: There is no nativ 64 Bit version for SAP 4.6 kernel on this platform. The usage of the 4.6D 32 Bit Kernel for I386 on this platform is supported. All processes will have 4 GB Address space (instead of max. 3 GB on the 32 Bit OS). You can install or upgrade your database to a 64 Bit version on X86_64 which can really utitlize big memory configurations (on 64 Bit much, much better than on 32 Bit)

For the database it is no problem to utilize 16 GB physical RAM (assuming sufficient users and db requests).

4.6 R/3 Kernel: I do not think that a single R/3 instance is able to make use of 16 GB physical memory. This depends a little on the size of the shared memory buffers. As the VM Size of a single process can not exceed 4 GB the sum of all shared memory buffers in an R/3 instance must be less than 4 GB - maximum of needed heap memory allocated by any transaction times paralelity of this situation. The rest is extended memory, which depends on the maximum number of concurrent ABAP users and their memory allocation. For a single 4.6D instance I would expect a maximum at about 8-12 GB.

but on the other hand, memory is often less expensive than optimizing a shortly configured system.

regards

Peter

Former Member
0 Kudos

Thank you for the reply. Being that we are on 4.6c and we are trying to make this migration as seamless as possible keeping the 4.6c, SQL2000 EE, etc, would the following be correct:

1) New DB server with 2003 Server Enterprise 32-bit, SQL 2000 Enterprise 32-bit - 16GB Ram (We will have x64 hardware and will NOT be moving to SQL2005 yet)

2) Configure DB server memory options /PAE /3GB

3) New APP server with 2003 Server Standard and 4GB Ram since 4.6 is unable to address any higher.

In order to keep as seamless as possible this sounds like the best design. I believe we cannot perform an in place upgrade to 64-bit OS and SQL so we might as well use this design and reinstall 64bit OS and move to SQL 2005 at a different project time. Does this sound like the best approach to you?

Former Member
0 Kudos

I would <b>not</b> recommend to install anything on a 32 Bit Operating System if you can install it on a 64 Bit Operating system. There are several reasons for this:

1. The 64 Bit Operating System is much more stable compared to the 32 Bit Operating system. You have to use the /PAE and /3GB and to configure the database to use AWE make the database to use the 16 GB Memory.

We have regulary the problem that:

Paged Pool / NonPaged Pool are hitting the limits,

The remaining 1 GB virtual address space for the Windows Kernel is too small. In this case you have to play around with /USERVA to rise the amount of kernel mode memory.

Setting /USERVA does decrease the amount of user memory (less than 3 GB)

2. you have to use AWE on 32 Bit OS in order to access more than 3 GB memory in the database. But AWE is a mechanism which did not allow the application to directly access the memory. The pages have to be copied within the system. This is much more perfomant than accessing the datablock in the files but still less performant compared to direct memory access in a pure 64 Bit implementation.

3. I would recommend to use 8-12 GB memory. A single workprocess process can address not more than 4 GB. But the ABAP memory of currently inactive users are also stored in shared memory, which is only mapped to a wp if the user is processed. If you do not have enough memory this contexts are stored back to the pagefiles and read from pagefile when the user is processed. Lots of paging is the result.

We are hitting Operating System limits very often when running 32 Bit OS. Well the problem is not that bad on ABAP Server 4.6, but in every newer version we will see more or less problems.

So our recommendation is: if you have the hardware go for 64 Bit operating system, if the product supports it: go for 64 Bit!

Its much more stable and you are minimizing your optimization efforts.

regards

Peter

Former Member
0 Kudos

Thank you for the very informative response. The last question is if we move to 64-bit, we would have to move to SQL2005 correct? Doesn't SQL2000 only run 64-bit on the Itanium platform and not the x86?

Rudi_Wiesmayr
Active Participant
0 Kudos

AFAIK you can run 32bit SQL2000 on Win2003 x64.

Hoping to be right, Rudi

Former Member
0 Kudos

Hi all.

I can suggest that you install 4.6C on x64 platform with SQL Server 2000, then migrate to 64 bit executables and 2005 64 bit database. It can be hard to do but I think that the performance you will gain its sufficient to justify the enffort. I don't think that the 16 GB can be useful for the system in a 32 bit platform.

Obviously if you install in 32 bit you have to configure the /PAE /3GB in boot.ini to have a better memory performance. There are a lots of sap notes talking about it. Especially the note with the parameter recommendations for SQL Server 2000.

Former Member
0 Kudos

>> can suggest that you install 4.6C on x64 platform with SQL Server 2000, then migrate to 64 bit executables

there is no 64 bit kernel available for 4.6D. But we where supporting the 32 Bit kernel on X86_64, which than has a vritual address space of 4 GB per process which is 1 GB more compared to 32 Bit OS with /3GB set.

Peter

Answers (1)

Answers (1)

Rudi_Wiesmayr
Active Participant
0 Kudos

Hi!

In the http://service.sap.com/SWDC

there are 4.6c kernels for 64bit-Windows on IA64 i.e. Itanium, but not for x64 i.e. newer Xeons and AMD.

I don't know if you can install the Windows x64

and run the 32 bit kernel on it.

HTH, Rudi