Re: Performance Problems after Upgrade to 7.23UC6
Posted in 1998
In article <6ft9fu$nav$1@nnrp1.dejanews.com>, dschmidt@baan.com writes
>Hi John,
>unfortunately, i am not very familiar with HPUX, but nevertheless i have a
>suggestions for you:
>I think the problem has to do with memory. A point that supports this
>suggestion is the fact that the problems occur with 30 users and more. The
Also
"
> The primary bottleneck apears to be the CPU. Under sar -u the system and =
> user cpu usage are about equal at 50% with 0% appearing in wio and idle.
"
Usually a high %sys e.g 50% indicates swapping.
Try
Check for paging:-
sar -p 1 2
and
Check for swapping
sar -q(or it is w?) 1 2
YOu have set RESIDENT=1 in $ONCONFIG to stop Online shared memory
getting swapped havn't you?
>reason could be that the oninit processes of version 7.23.UC6 need more
>memory than those of 7.14.UD1. You can calculate the memory needed with a
>formula published by Elisabeth Suto (see ISBN at the end of this posting):
>
>1. Calculate the size of text and data for one oninit process
> Therefore, execute the command size $INFORMIXDIR/bin/oninit. Use the first
> part of the output as size of the text segment, while the other part is
> the size of the data segment.
> All oninit processes running on your system are sharing the text segment.
> The data segment is allocated for each oninit process. So, the complete
> memory comsumption of the oninit process is
> text segment + n * data segment, where n is the number of oninits
>2. Get the currently allocated shared memory size. Execute onstat -.
onstat -g seg
values are in bytes.
Make sure you only have one of class V of an HP machine. Increase
SHMVIRTSIZE if needed.
>3. Add all the values you computed before.
>
>Another indicator for memory problems is the number of page faults per
>second. You can figure out this value by executing sar -p.
>
Correct.
Also check
1. OPTCOMPIND=0 in $ONCONFIG. Hash joins build a hash table and hence
use a LOT of memory. E.g. >4Mb per session!! Sometimes upgrading
Online sets it back to the default of 2!!
2.
onstat -p
if %rcached >95 and %wcached > 82% then try reducing buffers as this
will reduce the memory used by Online.
3. onstat -g mem and see which sessions are using the most memory.
Then onstat -u and see if they are doing a lot of reads. If so
they may be doing hash joins instead of using an index. Try
onstat -g <sessionid> sql and you may see what they are doing.
The sql executed usually changes too quickly to be seen, I normally
ask someone to find out what the user was running, then enable
SET EXPLAIN ON in the app.
HANDY TIP always start the app via a script and add
if "$LOGNAME" = "fred"
then
cd /tmp/fred;
DEBUG=myfile; export DEBUG
fi
as need, (don't forget to create /tmp/fred !!).
and in 4gl do
FUNCTION FN_startup()
LET debug_file = fgl_getenv("DEBUG") CLIPPED
IF (debug_file IS NOT NULL) then
SET EXPLAIN ON
END IF
END FUNCTION
FUNCTION FN_debug_log(str)
IF debug_file IS NOT NULL THEN
...log str to debug file (written in C)...
END IF
END FUNCTION
PS HP-UX 10.20 is normally considered OK.
If this does not help, e-mail me an onstat -a and
I'll take a look.
--
David Williams
Maintainer of the Informix FAQ
Primary site (Beta Version) http://www.smooth1.demon.co.uk
Official site http://www.iiug.org/techinfo/faq/faq_top.html
I see you standin', Standin' on your own, It's such a lonely place for you, For
you to be If you need a shoulder, Or if you need a friend, I'll be here
standing, Until the bitter end...
So don't chastise me Or think I, I mean you harm...
All I ever wanted Was for you To know that I care