473,587 Members | 2,227 Online
Bytes | Software Development & Data Engineering Community
+ Post

Home Posts Topics Members FAQ

db2sysc consumes huge memory

Hi expert,

I installed DB2 v8.2 server on Solaris 9 box. When I connect to DB2
using control centre or other applications(ex cept command line),
around 12 db2sysc processes pop up and each one consumes more than 2G
memory(total 30G memory). The server only has 8G physical memory, so
DB2 costs too many memory resources. I tried to reduce the
appgroup_mem_sz and app_ctl_heap_sz , but it didn't work. What else can
I do?

Please help!

Feb 16 '07 #1
12 8488
Tony wrote:
Hi expert,

I installed DB2 v8.2 server on Solaris 9 box. When I connect to DB2
using control centre or other applications(ex cept command line),
around 12 db2sysc processes pop up and each one consumes more than 2G
memory(total 30G memory). The server only has 8G physical memory, so
DB2 costs too many memory resources. I tried to reduce the
appgroup_mem_sz and app_ctl_heap_sz , but it didn't work. What else can
I do?

Please help!
Please be sure that they really are chewing up that type of memory. If
you're using top and see that each process is using 2G of memory, much of
that may actually be shared between the processes. Much of it may be
virtual memory (allocated, but not actually used yet).

Is your swap really being used for 22+G of disk space? If that were true,
your system would probably grind to a halt trying to allocate the
diskspace, swapping each db2sysc process in and out of physical RAM.

My guess is that you're looking at top's output and reading its memory
status as if each process were completely independant. Due to the nature
of fork(2), they aren't. Each process shares lots of memory in
copy-on-write memory pages, plus there is actual shared (read-write) memory
on top of that (using something like shmget(2)). So the numbers top shows
can be quite misleading. And yet, I couldn't imagine a way they could make
it accurate and obvious (not misleading to those who don't know unix
internals).
Feb 16 '07 #2
On Feb 15, 10:24 pm, Darin McBride
<dmcbr...@tower .to.org.no.spam .for.mewrote:
Tony wrote:
Hi expert,
I installed DB2 v8.2 server on Solaris 9 box. When I connect to DB2
using control centre or other applications(ex cept command line),
around 12 db2sysc processes pop up and each one consumes more than 2G
memory(total 30G memory). The server only has 8G physical memory, so
DB2 costs too many memory resources. I tried to reduce the
appgroup_mem_sz and app_ctl_heap_sz , but it didn't work. What else can
I do?
Please help!

Please be sure that they really are chewing up that type of memory. If
you're using top and see that each process is using 2G of memory, much of
that may actually be shared between the processes. Much of it may be
virtual memory (allocated, but not actually used yet).

Is your swap really being used for 22+G of disk space? If that were true,
your system would probably grind to a halt trying to allocate the
diskspace, swapping each db2sysc process in and out of physical RAM.

My guess is that you're looking at top's output and reading its memory
status as if each process were completely independant. Due to the nature
of fork(2), they aren't. Each process shares lots of memory in
copy-on-write memory pages, plus there is actual shared (read-write) memory
on top of that (using something like shmget(2)). So the numbers top shows
can be quite misleading. And yet, I couldn't imagine a way they could make
it accurate and obvious (not misleading to those who don't know unix
internals).
On Solaris, I'm using "prstat -a -s rss" to check the process's memory
consumption(not AIX "top"). Do you have any other good ideas to check
real memory consumption?

Thanks a lot.

Feb 16 '07 #3
On Feb 15, 8:15 pm, "Tony" <tonyedr...@gma il.comwrote:
Hi expert,

I installed DB2 v8.2 server on Solaris 9 box. When I connect to DB2
using control centre or other applications(ex cept command line),
around 12 db2sysc processes pop up and each one consumes more than 2G
memory(total 30G memory). The server only has 8G physical memory, so
DB2 costs too many memory resources. I tried to reduce the
appgroup_mem_sz and app_ctl_heap_sz , but it didn't work. What else can
I do?

Please help!
What fixpack are you using? Please type db2level command.

Unless there is a serious bug (most likely resolved in a fixpack
already available) you are probably mistaken about the amount of
memory actaully being used.

Feb 16 '07 #4
On Feb 16, 1:43 am, "Mark A" <m00...@yahoo.c omwrote:
On Feb 15, 8:15 pm, "Tony" <tonyedr...@gma il.comwrote:
Hi expert,
I installed DB2 v8.2 server on Solaris 9 box. When I connect to DB2
using control centre or other applications(ex cept command line),
around 12 db2sysc processes pop up and each one consumes more than 2G
memory(total 30G memory). The server only has 8G physical memory, so
DB2 costs too many memory resources. I tried to reduce the
appgroup_mem_sz and app_ctl_heap_sz , but it didn't work. What else can
I do?
Please help!

What fixpack are you using? Please type db2level command.

Unless there is a serious bug (most likely resolved in a fixpack
already available) you are probably mistaken about the amount of
memory actaully being used.
Hi Mark,

I installed the newest fixpack which is fixpack 14. The output of
"prstat -a -s rss" command is:

PID USERNAME SIZE RSS STATE PRI NICE TIME CPU PROCESS/
NLWP
9762 db2inst8 2384M 2252M sleep 59 0 0:00:01 1.2% db2sysc/1
8933 db2inst8 2317M 2222M sleep 59 0 0:00:18 9.3% db2sysc/1
9752 db2inst8 2316M 2214M sleep 59 0 0:00:00 0.0% db2sysc/1
9760 db2inst8 2316M 2213M sleep 59 0 0:00:00 0.0% db2sysc/1
9757 db2inst8 2316M 2213M sleep 59 0 0:00:00 0.0% db2sysc/1
9758 db2inst8 2316M 2213M sleep 59 0 0:00:00 0.0% db2sysc/1
9759 db2inst8 2316M 2213M sleep 59 0 0:00:00 0.0% db2sysc/1
9756 db2inst8 2316M 2213M sleep 59 0 0:00:00 0.0% db2sysc/1
9753 db2inst8 2316M 2213M sleep 59 0 0:00:00 0.0% db2sysc/1
9761 db2inst8 2316M 2213M sleep 59 0 0:00:00 0.0% db2sysc/1
9755 db2inst8 2316M 2212M sleep 59 0 0:00:00 0.0% db2sysc/1
9754 db2inst8 2316M 2212M sleep 59 0 0:00:00 0.0% db2sysc/1

NPROC USERNAME SIZE RSS MEMORY TIME
CPU
27 db2inst8 29G 26G 87% 0:00:20 11%

Thanks.

Feb 16 '07 #5
On Feb 16, 7:36 am, "Tony" <tonyedr...@gma il.comwrote:
Hi Mark,

I installed the newest fixpack which is fixpack 14. The output of
"prstat -a -s rss" command is:

PID USERNAME SIZE RSS STATE PRI NICE TIME CPU PROCESS/
NLWP
9762 db2inst8 2384M 2252M sleep 59 0 0:00:01 1.2% db2sysc/1
8933 db2inst8 2317M 2222M sleep 59 0 0:00:18 9.3% db2sysc/1
9752 db2inst8 2316M 2214M sleep 59 0 0:00:00 0.0% db2sysc/1
9760 db2inst8 2316M 2213M sleep 59 0 0:00:00 0.0% db2sysc/1
9757 db2inst8 2316M 2213M sleep 59 0 0:00:00 0.0% db2sysc/1
9758 db2inst8 2316M 2213M sleep 59 0 0:00:00 0.0% db2sysc/1
9759 db2inst8 2316M 2213M sleep 59 0 0:00:00 0.0% db2sysc/1
9756 db2inst8 2316M 2213M sleep 59 0 0:00:00 0.0% db2sysc/1
9753 db2inst8 2316M 2213M sleep 59 0 0:00:00 0.0% db2sysc/1
9761 db2inst8 2316M 2213M sleep 59 0 0:00:00 0.0% db2sysc/1
9755 db2inst8 2316M 2212M sleep 59 0 0:00:00 0.0% db2sysc/1
9754 db2inst8 2316M 2212M sleep 59 0 0:00:00 0.0% db2sysc/1

NPROC USERNAME SIZE RSS MEMORY TIME
CPU
27 db2inst8 29G 26G 87% 0:00:20 11%

Thanks.- Hide quoted text -

- Show quoted text -
Are you using partitioning (DPF)?

Feb 16 '07 #6
On Feb 16, 9:59 am, "Mark A" <m00...@yahoo.c omwrote:
On Feb 16, 7:36 am, "Tony" <tonyedr...@gma il.comwrote:


Hi Mark,
I installed the newest fixpack which is fixpack 14. The output of
"prstat -a -s rss" command is:
PID USERNAME SIZE RSS STATE PRI NICE TIME CPU PROCESS/
NLWP
9762 db2inst8 2384M 2252M sleep 59 0 0:00:01 1.2% db2sysc/1
8933 db2inst8 2317M 2222M sleep 59 0 0:00:18 9.3% db2sysc/1
9752 db2inst8 2316M 2214M sleep 59 0 0:00:00 0.0% db2sysc/1
9760 db2inst8 2316M 2213M sleep 59 0 0:00:00 0.0% db2sysc/1
9757 db2inst8 2316M 2213M sleep 59 0 0:00:00 0.0% db2sysc/1
9758 db2inst8 2316M 2213M sleep 59 0 0:00:00 0.0% db2sysc/1
9759 db2inst8 2316M 2213M sleep 59 0 0:00:00 0.0% db2sysc/1
9756 db2inst8 2316M 2213M sleep 59 0 0:00:00 0.0% db2sysc/1
9753 db2inst8 2316M 2213M sleep 59 0 0:00:00 0.0% db2sysc/1
9761 db2inst8 2316M 2213M sleep 59 0 0:00:00 0.0% db2sysc/1
9755 db2inst8 2316M 2212M sleep 59 0 0:00:00 0.0% db2sysc/1
9754 db2inst8 2316M 2212M sleep 59 0 0:00:00 0.0% db2sysc/1
NPROC USERNAME SIZE RSS MEMORY TIME
CPU
27 db2inst8 29G 26G 87% 0:00:20 11%
Thanks.- Hide quoted text -
- Show quoted text -

Are you using partitioning (DPF)?- Hide quoted text -

- Show quoted text -
No, it's only a single -partition system.

Feb 16 '07 #7
On Feb 16, 8:35 am, "Tony" <tonyedr...@gma il.comwrote:
>
No, it's only a single -partition system.- Hide quoted text -
I would first consult a Solaris expert to verify that DB2 is really
using that much memory, and then contact the DB2 Support Center if you
still think there is a problem.

Feb 16 '07 #8
Tony wrote:
On Feb 15, 10:24 pm, Darin McBride
<dmcbr...@tower .to.org.no.spam .for.mewrote:
>Tony wrote:
Hi expert,
I installed DB2 v8.2 server on Solaris 9 box. When I connect to DB2
using control centre or other applications(ex cept command line),
around 12 db2sysc processes pop up and each one consumes more than 2G
memory(total 30G memory). The server only has 8G physical memory, so
DB2 costs too many memory resources. I tried to reduce the
appgroup_mem_sz and app_ctl_heap_sz , but it didn't work. What else can
I do?
Please help!

Please be sure that they really are chewing up that type of memory. If
you're using top and see that each process is using 2G of memory, much of
that may actually be shared between the processes. Much of it may be
virtual memory (allocated, but not actually used yet).

Is your swap really being used for 22+G of disk space? If that were
true, your system would probably grind to a halt trying to allocate the
diskspace, swapping each db2sysc process in and out of physical RAM.
[...]
>can be quite misleading. And yet, I couldn't imagine a way they could
make it accurate and obvious (not misleading to those who don't know unix
internals).

On Solaris, I'm using "prstat -a -s rss" to check the process's memory
consumption(not AIX "top"). Do you have any other good ideas to check
real memory consumption?
No, there is no good way to check real memory consumption. As I said above,
I can't imagine a way that the prstat/top/kernel developers could display
accurate real memory usage. We're talking about a tree here where some
memory is being mapped into multiple process spaces, with flags set such
that if any of the processes attempts to write to that memory, the kernel
gets an exception at which point it copies the memory to a new page and
then allows the write to continue. Since most of this 2G of memory that
db2sysc seems to be using will never be written to, that exception never
occurs, and you save on physical RAM.

Your best bet really is to be paying attention to swap usage and total RAM
allocation. If there is no swap usage, and total RAM allocation shows 4-5
GB free RAM, you can thus deduce that DB2 is only using 2-3G of RAM. If
total RAM free is over 6G, then DB2 is not only using less than 2G of RAM,
we can further deduce that some of the memory is still virtual, and not
committed by the kernel yet.
Feb 16 '07 #9
Ian
Darin McBride wrote:
No, there is no good way to check real memory consumption.
From Solaris, that's true. And of course you know this Darin, but
Tony can use the db2mtrk command to show how much memory has actually
been allocated. Of course, this requires trusting the tool, but we
don't have much choice (and no reason to believe it isn't accurate).


Feb 16 '07 #10

This thread has been closed and replies have been disabled. Please start a new discussion.

Similar topics

1
1466
by: Tom L | last post by:
Like the subject says, how do I figure out how much memory an object takes.. If I create an employees collection, which is a collection of employee objects, and I load up a handful of records, I want to know if it consumes, say, 20k, or 100k or whatever of memory/resources. Thanks..
1
33576
by: Joe Philip | last post by:
What is the relationship between db2sysc and db2agents? When I do a ps -ef, I see only one db2sysc process and the rest are db2agent. I run HP-UX 11. When I monitor through HP monitoring tool Glance, these processes show up db2sysc.
7
2077
by: Vasil Buraliev | last post by:
Hallo. I started a solution in VS.NET with template for C# windwos application. The solution has several projects: -Artifacts -BusinessRules -Client -ErrorLog -Standardization .... ... ..
11
2121
by: LordHog | last post by:
Hello, I recently wrote an application that is used for testing units in a burn-in chamber. It uses two external library that require the use of P\Invoke in order to work with them. There is a primary thread and a secondary polling thread. Every once in a while the process will consume close to 100% of the CPU, but I am unclear why. I am...
6
3777
by: Daniel Walzenbach | last post by:
Hi, I have a web application which sometimes throws an “out of memory” exception. To get an idea what happens I traced some values using performance monitor and got the following values (for one day): \\FFDS24\ASP.NET Applications(_LM_W3SVC_1_Root_ATV2004)\Errors During Execution: 7 \\FFDS24\ASP.NET Apps...
8
3262
by: Jon | last post by:
I'm puzzled.. let's say I have an array of streamwriters. a lot.. 'the code is something like dim sw() as streamwriter redim sw(10000) 'instantiate for i as int16 = 0 to 9999 sw(i) = new streamwriter(arrayOfFileName(i))
0
2464
by: kayak | last post by:
Hi ! I have an instance that is consume a lot of memory. The OS is Solaris and the result of running the command top is : load averages: 0.28, 0.27, 0.30 19:36:42 363 processes: 361 sleeping, 2 on cpu CPU states: 85.8% idle, 12.8% user, 1.3% kernel, 0.2% iowait, 0.0% swap
13
5443
by: fAnSKyer/C# newbie | last post by:
My system has 4GB memory and My program in C# is really memory consuming. and I noticed that when the memory I used is more than 2GB I will get an exception. How to solve this? thanks a lot
13
2340
by: vd12005 | last post by:
Hello, i would like to sort(ed) and reverse(d) the result of many huge dictionaries (a single dictionary will contain ~ 150000 entries). Keys are words, values are count (integer). i'm wondering if i can have a 10s of these in memory, or if i should proceed one after the other. but moreover i'm interested in saving theses as values,...
0
7915
marktang
by: marktang | last post by:
ONU (Optical Network Unit) is one of the key components for providing high-speed Internet services. Its primary function is to act as an endpoint device located at the user's premises. However, people are often confused as to whether an ONU can Work As a Router. In this blog post, well explore What is ONU, What Is Router, ONU & Routers main...
0
7843
by: Hystou | last post by:
Most computers default to English, but sometimes we require a different language, especially when relocating. Forgot to request a specific language before your computer shipped? No problem! You can effortlessly switch the default language on Windows 10 without reinstalling. I'll walk you through it. First, let's disable language...
0
8220
tracyyun
by: tracyyun | last post by:
Dear forum friends, With the development of smart home technology, a variety of wireless communication protocols have appeared on the market, such as Zigbee, Z-Wave, Wi-Fi, Bluetooth, etc. Each protocol has its own unique characteristics and advantages, but as a user who is planning to build a smart home system, I am a bit confused by the...
0
6619
agi2029
by: agi2029 | last post by:
Let's talk about the concept of autonomous AI software engineers and no-code agents. These AIs are designed to manage the entire lifecycle of a software development projectplanning, coding, testing, and deploymentwithout human intervention. Imagine an AI that can take a project description, break it down, write the code, debug it, and then...
1
5712
isladogs
by: isladogs | last post by:
The next Access Europe User Group meeting will be on Wednesday 1 May 2024 starting at 18:00 UK time (6PM UTC+1) and finishing by 19:30 (7.30PM). In this session, we are pleased to welcome a new presenter, Adolph Dupr who will be discussing some powerful techniques for using class modules. He will explain when you may want to use classes...
0
5392
by: conductexam | last post by:
I have .net C# application in which I am extracting data from word file and save it in database particularly. To store word all data as it is I am converting the whole word file firstly in HTML and then checking html paragraph one by one. At the time of converting from word file to html my equations which are in the word document file was convert...
0
3840
by: TSSRALBI | last post by:
Hello I'm a network technician in training and I need your help. I am currently learning how to create and manage the different types of VPNs and I have a question about LAN-to-LAN VPNs. The last exercise I practiced was to create a LAN-to-LAN VPN between two Pfsense firewalls, by using IPSEC protocols. I succeeded, with both firewalls in...
0
3872
by: adsilva | last post by:
A Windows Forms form does not have the event Unload, like VB6. What one acts like?
1
1452
muto222
by: muto222 | last post by:
How can i add a mobile payment intergratation into php mysql website.

By using Bytes.com and it's services, you agree to our Privacy Policy and Terms of Use.

To disable or enable advertisements and analytics tracking please visit the manage ads & tracking page.