cancel
Showing results for 
Search instead for 
Did you mean: 

Running ECC6 on multi-core a Solaris box

Former Member
0 Kudos

We run SAP ECC6 EhP4 on a Solaris box M4000 with 2 physical CPUs (4 cores/CPU) and 64GB memory.

What we found out recently is that SAP can make use of only 2 CPU cores, according to the "mpstat" command.

It uses 100% of those 2 CPU cores but the other 6 cores are 0% used, and our SAP jobs crash with a memory shortage error.

So, it's doing some multithreading but it never uses any more than those 2 CPU cores.

And the SAR command never shows any CPU/memory shortages because I think it calculates and shows the data based on the whole system aspect - only 25% used from the whole system perspective, although those 2 CPUs and associated used memory must have been exhausted.

Is this an expected behavior?

Can we tune either OS or SAP or both to make SAP do the "real" multithreading?

Thanks in advance.

- Young

Accepted Solutions (0)

Answers (4)

Answers (4)

Former Member
0 Kudos

Hi Young,

About the "memory shortage error" you get, could you run the following command as the user that is running SAP ECC6 ?

prctl -n project.max-shm-memory $$

I think by default it's not configured to use all the memory , if the value is less than your 64 G memory, you might need this as root , and check again with the above prctl command.

projmod -sK "project.max-shm-memory=(priv,xxGB,deny)" default

replace xx with the memory you want to se.

markus_doehr2
Active Contributor
0 Kudos

> We run SAP ECC6 EhP4 on a Solaris box M4000 with 2 physical CPUs (4 cores/CPU) and 64GB memory.

> What we found out recently is that SAP can make use of only 2 CPU cores, according to the "mpstat" command.

> It uses 100% of those 2 CPU cores but the other 6 cores are 0% used, and our SAP jobs crash with a memory shortage error.

Did you defined any processor sets or other resource management so that only two CPUs are used? How many CPUs are listed in OS06? You see 8 CPUs there?

Can you post the output of

prtdiag -v

Markus

Former Member
0 Kudos

Here's my prtdiag -v output.

For CPU, this system has 2 physical CPUs, 2 cores/CPU and 2 threads/core, so total 8 threads.

For memory, it has 64GB real memory.

Thanks.

- Young

  1. psrinfo

0 on-line since 12/03/2010 23:24:16

1 on-line since 12/03/2010 23:24:35

2 on-line since 12/03/2010 23:24:35

3 on-line since 12/03/2010 23:24:35

8 on-line since 12/03/2010 23:24:35

9 on-line since 12/03/2010 23:24:35

10 on-line since 12/03/2010 23:24:35

11 on-line since 12/03/2010 23:24:35

  1. prtdiag -v

System Configuration: Sun Microsystems sun4u Sun SPARC Enterprise M4000 Server

System clock frequency: 1012 MHz

Memory size: 65536 Megabytes

==================================== CPUs ====================================

CPU CPU Run L2$ CPU CPU

LSB Chip ID MHz MB Impl. Mask

--- -


-


-


--- -


-


00 0 0, 1, 2, 3 2150 5.0 6 147

00 1 8, 9, 10, 11 2150 5.0 6 147

============================ Memory Configuration ============================

Memory Available Memory DIMM # of Mirror Interleave

LSB Group Size Status Size DIMMs Mode Factor

--- -


-


-


-


-


-


-


00 A 32768MB okay 4096MB 8 no 4-way

00 B 32768MB okay 4096MB 8 no 4-way

========================= IO Devices =========================

IO Lane/Frq

LSB Type LPID RvID,DvID,VnID BDF State Act, Max Name Model

--- -


-


-


-


-


-


-


-


Logical Path

-


00 PCIe 0 bc, 8532, 10b5 2, 0, 0 okay 8, 8 pci-pciex10b5,8532 N/A

/pci@0,600000/pci@0

00 PCIe 0 bc, 8532, 10b5 3, 8, 0 okay 8, 8 pci-pciex10b5,8532 N/A

/pci@0,600000/pci@0/pci@8

00 PCIe 0 bc, 8532, 10b5 3, 9, 0 okay 1, 8 pci-pciex10b5,8532 N/A

/pci@0,600000/pci@0/pci@9

00 PCIx 0 8, 125, 1033 4, 0, 0 okay 100, 133 pci-pciexclass,060400 N/A

/pci@0,600000/pci@0/pci@8/pci@0

00 PCIx 0 8, 125, 1033 4, 0, 1 okay 133, 133 pci-pciexclass,060400 N/A

/pci@0,600000/pci@0/pci@8/pci@0,1

00 PCI 0 2, 50, 1000 5, 1, 0 okay --, 133 scsi-pci1000,50 LSI,1064

/pci@0,600000/pci@0/pci@8/pci@0/scsi@1

00 PCI 0 10, 1648, 14e4 5, 2, 0 okay --, 133 network-pci14e4,1648 N/A

/pci@0,600000/pci@0/pci@8/pci@0/network@2

00 PCI 0 10, 1648, 14e4 5, 2, 1 okay --, 133 network-pci14e4,1648 N/A

/pci@0,600000/pci@0/pci@8/pci@0/network@2,1

00 PCI 0 1, fc10, 10df 6, 1, 0 okay 40, 266 SUNW,emlxs-pci10df,fc10 LP11002-S

/pci@0,600000/pci@0/pci@8/pci@0,1/SUNW,emlxs@1

00 PCI 0 1, fc10, 10df 6, 1, 1 okay 40, 266 SUNW,emlxs-pci10df,fc10 LP11002-S

/pci@0,600000/pci@0/pci@8/pci@0,1/SUNW,emlxs@1,1

==================== Hardware Revisions ====================

System PROM revisions:

-


OBP 4.24.11 2009/04/21 14:53

=================== Environmental Status ===================

Mode switch is in LOCK mode

markus_doehr2
Active Contributor
0 Kudos

you can't count the threads as a full core. Threads are reasonable on multithreaded applications, since ABAP is single threaded it won't make use of them.

I would say that the symptoms your describe are like the ones seen on T-series servers, where the factual throughput is "only" the number of real CPUs (dies) - which is in your case two. What I mean is that your machine runs basically with the speed of 2 CPUs, despite the number of cores and threads your have.

This is described also in Oracle Metalink ID 781763.1.

To verify this I'd open a case with Sun and let them check.

Markus

Former Member
0 Kudos

Hello Young,

In the ABAP stack, as Manoj already stated, you have a single thread that is forked into several different process (the so called work process). Althought you can have several jobs running on parallel, they are not different threads and this behaviour that you are seeing is expected.

Cheers,

Maurício

Former Member
0 Kudos

ABAP is single threaded hence it runs in one core where as Java stack is multi threaded. Hope this gives you clues. Is your ECC only ABAP installation?