Re: NETTYPE NET/CPU
Posted in 2007
Topics: Networking & sqlhosts Configuration
On Aug 9, 6:50 am, "Art S. Kagel" <art.ka...@gmail.com> wrote:
> On Aug 8, 8:57 pm, mohitanch...@gmail.com wrote:
>
> > Version: IDS 10
>
> I'll leave you mostly with Jonathan's entries and just add a bit as
> well. For a full explanation of why to use CPU VPs versus NET VPs for
> listeners, see my entry on the subject in the fullInformixFAQ (not
> Jonathan's CDI FAQ) - link on the IIUG WEB site (www.iiug.org).
>
> See below:
>
> > I am trying to understand NETTYPE better so that we can configure our
> > connections appropriately and perhaps make it more efficient. My
> > questions is:
>
> > 1. Is VP Class NET synonymous to OS's CPU and Vp Class CPU synonymous
> > to oninit.
> > 2. After reading about Vp Class my understanding is that ipcshm
> > protocol should be configured for CPU vp class. Is that correct ?
> > What's the benefit of using one over other
>
> The CPU VP has work to do so it can only poll the ports for new
> connections and for new requests from existing connections when it's
> waiting for something to happen. That makes it less than ideal for
> network connections, but is a plus for shared memory connections
> because a NET VP has to actively poll a shared memory connection which
> burns CPU time and OS Kernel time reducing the available cycles for
> productive work. Because CPU VPs can only poll periodically all CPU
> VPs should be set up with shared memory poll threads for optimal
> responsiveness.
>
> > 3. And should soctcp protocol be configured for NET vp class. Is that
> > correct ? What's the benefit of using one over other
> > 4. Also, when I do onstat -g glo I see lot of cpu type virtual
> > processors having total of more than 100. On IBM's website they
> > recommend adding one more cpu if total is more than 100, but our
> > application seems to be fine. So I am little bit confused about this
> > too.
>
> Art S. Kagel
IBM documentation says that in multiprocess system NUMCPUVPS should
not exceed number of CPUs on the system. Now if nettype is configured
for both NET and CPU class then total oninit process will be more than
NUMCPUVPS, is that ok. for eg: if number of physical CPUs are 10 and
NUMCPUVP is set to 8, and NETTYPE of type NET for soctcp is set to 10
listner threads then total oninit will be 18, which is more than total
number of physical CPUs. Is that ok.
On Sep 12, 1:28 pm, mohitanch...@gmail.com wrote:
> On Aug 9, 6:50 am, "Art S. Kagel" <art.ka...@gmail.com> wrote:
>
>
>
>
>
> > On Aug 8, 8:57 pm, mohitanch...@gmail.com wrote:
>
> > > Version: IDS 10
>
> > I'll leave you mostly with Jonathan's entries and just add a bit as
> > well. For a full explanation of why to use CPU VPs versus NET VPs for
> > listeners, see my entry on the subject in the fullInformixFAQ (not
> > Jonathan's CDI FAQ) - link on the IIUG WEB site (www.iiug.org).
>
> > See below:
>
> > > I am trying to understand NETTYPE better so that we can configure our
> > > connections appropriately and perhaps make it more efficient. My
> > > questions is:
>
> > > 1. Is VP Class NET synonymous to OS's CPU and Vp Class CPU synonymous
> > > to oninit.
> > > 2. After reading about Vp Class my understanding is that ipcshm
> > > protocol should be configured for CPU vp class. Is that correct ?
> > > What's the benefit of using one over other
>
> > The CPU VP has work to do so it can only poll the ports for new
> > connections and for new requests from existing connections when it's
> > waiting for something to happen. That makes it less than ideal for
> > network connections, but is a plus for shared memory connections
> > because a NET VP has to actively poll a shared memory connection which
> > burns CPU time and OS Kernel time reducing the available cycles for
> > productive work. Because CPU VPs can only poll periodically all CPU
> > VPs should be set up with shared memory poll threads for optimal
> > responsiveness.
>
> > > 3. And should soctcp protocol be configured for NET vp class. Is that
> > > correct ? What's the benefit of using one over other
> > > 4. Also, when I do onstat -g glo I see lot of cpu type virtual
> > > processors having total of more than 100. On IBM's website they
> > > recommend adding one more cpu if total is more than 100, but our
> > > application seems to be fine. So I am little bit confused about this
> > > too.
>
> > Art S. Kagel
>
> IBM documentation says that in multiprocess system NUMCPUVPS should
> not exceed number of CPUs on the system. Now if nettype is configured
> for both NET and CPU class then total oninit process will be more than
> NUMCPUVPS, is that ok. for eg: if number of physical CPUs are 10 and
> NUMCPUVP is set to 8, and NETTYPE of type NET for soctcp is set to 10
> listner threads then total oninit will be 18, which is more than total
> number of physical CPUs. Is that ok.- Hide quoted text -
>
> - Show quoted text -
First, only CPU VPs count in the recommendation in the manuals to not
exceed the number of CPU cores less one. Second, that recommendation
was written in the days of 25-50MHZ processors. The Informix user
community started experimenting with configuring the same number of
CPU VPs as cores and then with configuring two or more CPU VPs per
core at about the time that processor speed hit 400 MHZ. In those
experiments, reported here in CDI, it was determined that a 450MHZ
processor from most vendors (and 750MHZ from Intel) would continue to
show improved IDS server performance when NUMCPUVPS exceeded the
number of physical CPU cores up until there were two per core. So if
you have 5 dual core processors (or 10 cores) you can successfully run
with NUMCPUVP or VPCLASS .. CPU set to 20. Lately IB that with
processors in the multi-GHZ range that you can go even further and run
3 or more CPU VPs per core.
Test it. It's the only way to know for sure on your equipment with
your data.
Art S. Kagel
Art S. Kagel wrote:
> On Sep 12, 1:28 pm, mohitanch...@gmail.com wrote:
>> On Aug 9, 6:50 am, "Art S. Kagel" <art.ka...@gmail.com> wrote:
>>
>>
>>
>>
>>
>>> On Aug 8, 8:57 pm, mohitanch...@gmail.com wrote:
>>>> Version: IDS 10
>>> I'll leave you mostly with Jonathan's entries and just add a bit as
>>> well. For a full explanation of why to use CPU VPs versus NET VPs for
>>> listeners, see my entry on the subject in the fullInformixFAQ (not
>>> Jonathan's CDI FAQ) - link on the IIUG WEB site (www.iiug.org).
>>> See below:
>>>> I am trying to understand NETTYPE better so that we can configure our
>>>> connections appropriately and perhaps make it more efficient. My
>>>> questions is:
>>>> 1. Is VP Class NET synonymous to OS's CPU and Vp Class CPU synonymous
>>>> to oninit.
>>>> 2. After reading about Vp Class my understanding is that ipcshm
>>>> protocol should be configured for CPU vp class. Is that correct ?
>>>> What's the benefit of using one over other
>>> The CPU VP has work to do so it can only poll the ports for new
>>> connections and for new requests from existing connections when it's
>>> waiting for something to happen. That makes it less than ideal for
>>> network connections, but is a plus for shared memory connections
>>> because a NET VP has to actively poll a shared memory connection which
>>> burns CPU time and OS Kernel time reducing the available cycles for
>>> productive work. Because CPU VPs can only poll periodically all CPU
>>> VPs should be set up with shared memory poll threads for optimal
>>> responsiveness.
>>>> 3. And should soctcp protocol be configured for NET vp class. Is that
>>>> correct ? What's the benefit of using one over other
>>>> 4. Also, when I do onstat -g glo I see lot of cpu type virtual
>>>> processors having total of more than 100. On IBM's website they
>>>> recommend adding one more cpu if total is more than 100, but our
>>>> application seems to be fine. So I am little bit confused about this
>>>> too.
>>> Art S. Kagel
>> IBM documentation says that in multiprocess system NUMCPUVPS should
>> not exceed number of CPUs on the system. Now if nettype is configured
>> for both NET and CPU class then total oninit process will be more than
>> NUMCPUVPS, is that ok. for eg: if number of physical CPUs are 10 and
>> NUMCPUVP is set to 8, and NETTYPE of type NET for soctcp is set to 10
>> listner threads then total oninit will be 18, which is more than total
>> number of physical CPUs. Is that ok.- Hide quoted text -
>>
>> - Show quoted text -
>
> First, only CPU VPs count in the recommendation in the manuals to not
> exceed the number of CPU cores less one. Second, that recommendation
> was written in the days of 25-50MHZ processors. The Informix user
> community started experimenting with configuring the same number of
> CPU VPs as cores and then with configuring two or more CPU VPs per
> core at about the time that processor speed hit 400 MHZ. In those
> experiments, reported here in CDI, it was determined that a 450MHZ
> processor from most vendors (and 750MHZ from Intel) would continue to
> show improved IDS server performance when NUMCPUVPS exceeded the
> number of physical CPU cores up until there were two per core. So if
> you have 5 dual core processors (or 10 cores) you can successfully run
> with NUMCPUVP or VPCLASS .. CPU set to 20. Lately IB that with
> processors in the multi-GHZ range that you can go even further and run
> 3 or more CPU VPs per core.
>
> Test it. It's the only way to know for sure on your equipment with
> your data.
Exactly... Specially because the type of load may influence this quite heavily.
I recently saw a situation where increasing the CPUVPS caused problems.
I'd say that even within the Informix technical community this isn't a peaceful
subject.
Check other factors like the ready queue, cpu usages, user vs system time etc.
--
Fernando Nunes
Portugal
http://informix-technology.blogspot.com
My email works... but I don't check it frequently...
On Sep 12, 11:59 am, "Art S. Kagel" <art.ka...@gmail.com> wrote:
> On Sep 12, 1:28 pm, mohitanch...@gmail.com wrote:
>
>
>
> > On Aug 9, 6:50 am, "Art S. Kagel" <art.ka...@gmail.com> wrote:
>
> > > On Aug 8, 8:57 pm, mohitanch...@gmail.com wrote:
>
> > > > Version: IDS 10
>
> > > I'll leave you mostly with Jonathan's entries and just add a bit as
> > > well. For a full explanation of why to use CPU VPs versus NET VPs for
> > > listeners, see my entry on the subject in the fullInformixFAQ (not
> > > Jonathan's CDI FAQ) - link on the IIUG WEB site (www.iiug.org).
>
> > > See below:
>
> > > > I am trying to understand NETTYPE better so that we can configure our
> > > > connections appropriately and perhaps make it more efficient. My
> > > > questions is:
>
> > > > 1. Is VP Class NET synonymous to OS's CPU and Vp Class CPU synonymous
> > > > to oninit.
> > > > 2. After reading about Vp Class my understanding is that ipcshm
> > > > protocol should be configured for CPU vp class. Is that correct ?
> > > > What's the benefit of using one over other
>
> > > The CPU VP has work to do so it can only poll the ports for new
> > > connections and for new requests from existing connections when it's
> > > waiting for something to happen. That makes it less than ideal for
> > > network connections, but is a plus for shared memory connections
> > > because a NET VP has to actively poll a shared memory connection which
> > > burns CPU time and OS Kernel time reducing the available cycles for
> > > productive work. Because CPU VPs can only poll periodically all CPU
> > > VPs should be set up with shared memory poll threads for optimal
> > > responsiveness.
>
> > > > 3. And should soctcp protocol be configured for NET vp class. Is that
> > > > correct ? What's the benefit of using one over other
> > > > 4. Also, when I do onstat -g glo I see lot of cpu type virtual
> > > > processors having total of more than 100. On IBM's website they
> > > > recommend adding one more cpu if total is more than 100, but our
> > > > application seems to be fine. So I am little bit confused about this
> > > > too.
>
> > > Art S. Kagel
>
> > IBM documentation says that in multiprocess system NUMCPUVPS should
> > not exceed number of CPUs on the system. Now if nettype is configured
> > for both NET and CPU class then total oninit process will be more than
> > NUMCPUVPS, is that ok. for eg: if number of physical CPUs are 10 and
> > NUMCPUVP is set to 8, and NETTYPE of type NET for soctcp is set to 10
> > listner threads then total oninit will be 18, which is more than total
> > number of physical CPUs. Is that ok.- Hide quoted text -
>
> > - Show quoted text -
>
> First, only CPU VPs count in the recommendation in the manuals to not
> exceed the number of CPU cores less one. Second, that recommendation
> was written in the days of 25-50MHZ processors. TheInformixuser
> community started experimenting with configuring the same number of
> CPU VPs as cores and then with configuring two or more CPU VPs per
> core at about the time that processor speed hit 400 MHZ. In those
> experiments, reported here in CDI, it was determined that a 450MHZ
> processor from most vendors (and 750MHZ from Intel) would continue to
> show improved IDS server performance when NUMCPUVPS exceeded the
> number of physical CPU cores up until there were two per core. So if
> you have 5 dual core processors (or 10 cores) you can successfully run
> with NUMCPUVP or VPCLASS .. CPU set to 20. Lately IB that with
> processors in the multi-GHZ range that you can go even further and run
> 3 or more CPU VPs per core.
>
> Test it. It's the only way to know for sure on your equipment with
> your data.
>
> Art S. Kagel
But when NETTYPE is set to NET it spawns different set of oninit,
which is additional set of oninit as compared to the one started by
informix for NUMCPUVPS. So why is there a separate parameter NUMCPUVPS
and why there is no such parameter for NET, something like NUMNETVPS.
I can feel there is some difference for not having something like
this, but I am not exactly sure.
Related threads
- Posting from the Informix-list
- Migrating from IDS 9.40.UC6 to 11.50.UC3
- Ip for a network session
- questions onstat -g