Re: Performance / Internal Q's -- Online 7.2
Posted in 1997
Hello,
jimlenahan@aol.com wrote:
>
> Greetings:
>
> A few questions on performance and internals on this beast:
>
I never have had a possibility to run such a big system, sorry.
But:
> I have a 4way HP Kclass machine as server connected to a pair of HP
> G class machines. On the G's are up to 500 users. The K server is
> configured with 4 net VP's with 250 threads each. However, the client
> software is going to its knees at times as it waits for polling threads to
Informix says that maximum users' connections for each network VP
is 100, but for busy TCP connections they recommend the number of 50.
Compare: you have set 250!
> Why is it recommended that the number of SOC VP's not exceed
> NUMCPUVP? Increasing the number of VP's seems like it would solve the
> problem, but the IFMX docs and classes specifically say not to exceed that
> number.
>
I don't know for sure, I never have seen such a recommendation.
I could explain it, but what is the worth of it? IMHO it's good
idea to TRY. You will not break Online this way.
> Currently, the config file has a line for the net VP's with a VP type
> of SOC. Can this line be replicated with a VP type of CPU? THis would
> give double the number of net VP's (4 each of CPU and SOC), while still
> preserving the letter of the law that the number of SOC type VP's not
> exceed MAXCPUVP. However, will the engine read BOTH lines, or will the
> second effectively replace the first?
>
Onmonitor (Parameters->perFormance) allows you to configure
as many protocols and poll threads as you want. You specify the
protocol (soctcp), number of threads (1000/100=10) number of users
(999) and VP class (CPU or NET). You may prefer CPU class since it's
more efficient. But, if you specify number of threads exceeding the
number of CPU VPs, all poll treads will run on SOC (i.e. NET) VPs!!!
Onmonitor silently IGNORES dublicate "soctcp" lines allowing you
the only record for each protocol. Online ignores extra NETTYPE
lines in $ONCONFIG file as well.
> How much overhead is there in these threads? Does it matter to have
> the number of threads per VP set so high? Also, at what point are they
> (the threads) recylced? Upon disconnect?
>
I don't expect overhead to be very big. Anyway, if it goes down
to performace, it's recommended to leave one physical CPU for
operating system and non-CPU VPs....
> A few more related performance / internal questions:
> - The CPU's on this server system are not taxed (typically running
> at 50-80%). What are the ramifications of increasing MAXCPUVP to be
> greater than the actual number of CPU's? Again, IFMX recommends against
> it -- but if the code is written right it oughtn't matter . . .
>
Again, the idea of CPU VP is to let it work as much as possible without
interruption from process scheduler. You should configure your system
to reach 90%-100% of load for CPU VP's. If you start lot of CPU
VPs you get contention for physical processors and performance
degradation.
I would recommend you to try the following:
NUMCPUVPS 3
NETTYPE soctcp,10,999,NET
And don't fear to experiment. onstat -g ath (and other -g ...)
will tell you many interesting things.
Sincerely yours,
*****************************************************************************
Sergei V. Melikhov DataX/FLORIN
Inc.
Head of System Group Advanced Data Management
Systems.
melihov@florin.ru Moscow, Russia
WWW http://www.florin.ru/eng phone 7-095-158-9520 fax
7-095-158-5700
******************************************************************************