PA-RISC processors
Posted in 1999
Topics: Performance & Tuning
Apparently there is a problem with HPUX 10.XX operating systems running on
PA-RISC processors. The hardware limitation of the processor is that it
uses 4 special purpose address registers which are the only way to access
shared memory segments. If you have 4 or more shared memory segments
(easily viewed with 'onstat -g seg') then performance goes out the window as
the system has to swap the shared memory base addresses in and out of these
4 registers. The secret is to not allow your system to allocate a fourth
memory segment (by tuning SHMVIRTSIZE, SHMADD, and SHMTOT). This is fact.
My scenario is slightly different. I have an HPUX 10.20 system running on 2
PA-RISC processors. First, does the fact that I have 2 processors give me 8
special-purpose registers? The next twist is that I have 2 instances
running on the UNIX box. I can tune so that each one only has 2 shared
memory segments, but that still adds up to 4 which is over the limit. How
does this work with two instances? How does this work with two processors?
(I do have MULTIPROCESSOR set to zero in both instatnces.)
Any help you could give would be greatly appreciated!
This limitation should be viewed as a per instance limitation (since registers
will be swapped out/in for a context switch anyway), meaning that you may have
up to 3 shared memory segments per instance. The number of processors doesn't
matter.
As a side note: basically the same limit still exists with HP 11, but you can
have one more segment per instance without performance hit.
Heiko
Top Cat wrote:
> Apparently there is a problem with HPUX 10.XX operating systems running on
> PA-RISC processors. The hardware limitation of the processor is that it
> uses 4 special purpose address registers which are the only way to access
> shared memory segments. If you have 4 or more shared memory segments
> (easily viewed with 'onstat -g seg') then performance goes out the window as
> the system has to swap the shared memory base addresses in and out of these
> 4 registers. The secret is to not allow your system to allocate a fourth
> memory segment (by tuning SHMVIRTSIZE, SHMADD, and SHMTOT). This is fact.
> My scenario is slightly different. I have an HPUX 10.20 system running on 2
> PA-RISC processors. First, does the fact that I have 2 processors give me 8
> special-purpose registers? The next twist is that I have 2 instances
> running on the UNIX box. I can tune so that each one only has 2 shared
> memory segments, but that still adds up to 4 which is over the limit. How
> does this work with two instances? How does this work with two processors?
> (I do have MULTIPROCESSOR set to zero in both instatnces.)
>
> Any help you could give would be greatly appreciated!
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