High CPU utilization by a pro*C process

Hi ,
we upgarded our AIX from 5.3 to 6.1 and upgraded our xlc compiler from ver 6.0 to 9.0 .
After this upgrade one of our pro*C program is utilizing around 20% of the CPU. Before upgarde its using only 0.2 %.
when i try to debug using the truss command i got the below error.

 
$ truss -tkill -p 2937230
kill(1491256, 0)                                Err#1  EPERM
kill(1491256, 0)                                Err#1  EPERM
kill(1491256, 0)                                Err#1  EPERM

Regds
Mugunthan

Can you maybe try explaining what the process is doing? Is it very I/O intensice or very CPU intensive? Is it waiting for user input?

Hi ,
This program is used to print labels. But when we debug using topas the I/O looks good. only CPU utilization is going high.
It is not waiting for any manual inputs.
This process reads messages from MQ and prints the labels. and this program was running fine before we did the upgrade.

Regds
Mugunthan

It may well still be running fine, it could be that the wait for MQ messages is handled differently. Are you experienceing any kind of slow downs in the system with anything else?

Hi ,
Still now we dont have face any slow on the system. Also we dont have any business impact. Only thing is its occupying high CPU utilization.
For the same source code we have two different binaries for this program ( which we are discussing ).
One of the binary running fine without any high cpu utilization issue ( compiled during march 2009 )and the other binary running with high cpu utilization ( Newly compiled ). Both binary size looks different.
Both of them were compiled in teh AIX 6.1 with the xlc compiler version 9.0.0.8

I cant see did we changed any compilation options between these two binaries.

If any one help us to know is there a way to find the compilation option used during compilation ?

Regds
Mugunthan

Not once the file is built, there is no way to see the options used.

Has anything been updated on the development box between March 2009 and now? A Technical Level, a Service pack, an update to MQ? These could all cause a difference in an executable like you describe.

Hi ,
I don't see any changes on teh OSlevel, Service pack, MQ, etc... on the dev box where the compiler is installed.
Only change i can see is there is a upgrade on the xlc runtime level has been changed between these binaries created.

Runtime chaged xlc details :
$ lslpp -la | grep -i xlc
xlC.aix61.rte 10.1.0.0 COMMITTED XL C/C++ Runtime for AIX 6.1
xlC.rte 10.1.0.0 COMMITTED XL C/C++ Runtime

Regds
Mugunthan