Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

Scenario for the gurus

1 view
Skip to first unread message

AWKYOU

unread,
Apr 15, 1999, 3:00:00 AM4/15/99
to
First let me thank Tony and Joseph for their responses.

I need some more detailed help.

Scenario: A network is somewhat dishevled. The platform is SCO
a new server is being purchased and will run SCO Openserver 5.0.5.
There is the stong possibility of another server being installed running NT.
The main unix application uses Informix databases. The NT server will most
likely be running something which uses SQL server. FacetWin may also be
currently running. Your clients are both Win 9.x, NT workstations and some
Macs.

You want to provide the fastest most reliable network possible with all of
the above characteristics and you get to start from scratch.

What do you do?

please include answers to the following in your response

What can VisionFS do that AFPS can't?
What can AFPS do that VisionFS can't?
Does FacetWin mean no AFPS as one posting here indicated?
NoTechnology supports appletalk does Openserver?
Why use a product like FacetWin ( besides terminal emulation) when you have
VisionFS or AFPS?
Whats the minimum hardware requirements you would use for the NT server ;the
SCO server (60 clients on the network).

Thanks in advance


John Gray

unread,
Apr 15, 1999, 3:00:00 AM4/15/99
to
AWKYOU wrote:

I apologize if this has been covered before.I can't speak for the network
applications but don't forget the kernel tuning. It can really
help the database engine and remove the slugish behaviour of a system.

Above all don't skimp on your swap area if meory will be tight.

Openserver 5.05 will use by default 10% of your total memory for disk buffers
with a cap
of about 6 meg by default. Depending on how much memory you have you can
starve
the database engine. This can be changed by running configure in
/etc/conf/cf.d.
select 1 and then alter NBUF, each bufffer is 1K bytes. NHBUF will auto
size so don't
worry about that one. If you have more than 64 meg theres a good chance
you may
want to raise this.

By default PLOWBUFS is 30 which will attempt to grab 30% of the space
allocated to
your disk buffers and place them below 16 meg. If your system is PCI you
won't need
much except for maybe your floppy. No more than a meg of low buffers
will be needed.

Depending on how large your buffer cache is and how many temp files get
created and
removed you may want to increase, decrease or leave alone the BDFUSHR
parameter.
This is how often the kernel scans the disk buffers and writes them out to
disk. The default
is once every 30 seconds which may be perfect for your needs but you can
always adjust it.
For example if you do lots of compiles may raising it to 45 or 60 seconds
may work wonders
but the down side is you leave your self more vunerable to disk corruption
if you have a
kernel PANIC.

Selecting option 2 will allow you to adjust GPGSLO and GPGSHI. By default
the kernel will
wait until there are about 25 pages (100k) left before it starts kicking
out dormant processes.
( hopfully dormant :-) ) It will then continue until there are 40 pages
free (160k). If you are
tight on memory this might be fine but if you have more RAM then you may
not want to wait
around and bounce around the limit of your memory. It's really an art that
is system specific
but being a little more agressive with the GPGS lo and hi numbers may
prevent some disk
thrashing.

Option 7, since you are running a database, which may or may not have
many deamon running
with it's user ID you may need to up MAXUP. This is the number of
processes that can belong
to one single user at a time. When running large compiles I have found
that I need to up this to 500
or my builds can fail.

Option 12, NSTRPAGES. by default it is set to 500 which is 2K. If there
is heavy network traffic
this can be raised also. The pages are allocated as needed and this
number is a limit. Using
netsat -m to monitor the system during peak loads might give you a good
idea if it needs to be
increased. ( wierd error messages too)

Options 13, 15 and 16 (messages queues, semaphores and shared data)
probably have some
values that your database vendor can specify in the documentation
which is platform specific.
Each database vendor will use these differently and the kernel defaults
are not optimal.

There is a good book that was written for 3.2V4 but has lots of good info which
details tuning your
system for databse performance. It's "The SCO Performance Tuning Handbook"
Gina Miscovich
and David Simons. ISBN 0-13-102690-9. It was published in 1994. Take this
into account when
they talk about memory and cpu load. The HW has changed a little. :-)

Lastly I can't take much credit for what I have stated here. I have learned
most of this from working
with some very talented people.

hope it helps
-john


Tony Lawrence

unread,
Apr 18, 1999, 3:00:00 AM4/18/99
to
John Gray (jo...@sodapop.org) wrote:

: NHBUF will auto size so don't worry about that one.

Interestingly, though, it does not autosize the way the docs seem to say
it will. For example, you'd think that if NBUF were 8192, then NHBUF left
at 0 would allocate 4096. It doesn't, or at least it doesn't on this
5.0.4 box (I haven't checked other releases). The docs, and Steve Pate's
book ( http://www.aplawrence.com/Books/scounixint.html ) say that it would
size to the nearest power of 2 that is greater than or equal to half of
NBUF, but it ends up at 8192. The same thing happens for 16384.

Type:

echo v | crash | grep buf

to see the current values for NBUF and NHBUF (they show as "v_buf" and
"v_hbuf" above). On my machine, NBUF and NHBUF end up being equal
if I use any power of 2 for NBUF and leave NHBUF at 0. It's also
interesting that some rounding is done: if I enter 8190 for NBUF, I get
8192 for both of them on reboot, though 7600 stays at 7600 and gives the
expected 4096 for NHBUF.

Also, would NHBUF autosize correctly on a SMP machine?

--
Tony Lawrence (to...@aplawrence.com)
SCO Articles, Tips, Book Reviews: http://www.aplawrence.com

John Gray

unread,
Apr 18, 1999, 3:00:00 AM4/18/99
to
Tony Lawrence wrote:

The equation for Uni vs MP is slightly different. If NHBUF = zero and
you
are on a uni system hash buffers will be <= the number of buffers/2.
On MP hash buffers will be = or the next power of 2 above the number of
buffers. This is for 5.04 and 5.05.

Hmm, I think that uni systems shouldn't take a penalty hit.
Anyone else have anyting to say.

-john

Tony Lawrence

unread,
Apr 19, 1999, 3:00:00 AM4/19/99
to
John Gray wrote:


> The equation for Uni vs MP is slightly different. If NHBUF = zero and
> you are on a uni system hash buffers will be <= the number of buffers/2.
> On MP hash buffers will be = or the next power of 2 above the number of
> buffers. This is for 5.04 and 5.05.


But it doesn't, or at least not on this system- I don't get to do a lot
of testing on customer systems for some reason :-)

If I set NBUF to 8192 or 16384 on this uniprocessor 5.0.4 system, and
leave NHBUF at 0, hash buffers will be 8192 or 16384. Based on docs and
even what you just wrote, it should be 4096 -not that there's anything
wrong with having more, assuming that there is enough memory available;
I'm just questioning the documentation, which seems to be wrong in
saying <= NBUF/2.

> Hmm, I think that uni systems shouldn't take a penalty hit.
> Anyone else have anyting to say.


The docs say that for SMP NHBUF will be nearest power of 2 that's double
NBUF. That doesn't seem to be what you said, but I don't have an SMP
system to expirement with..


--
Tony Lawrence (to...@aplawrence.com)
SCO ACE
SCO articles, help, book reviews: http://www.aplawrence.com

John Gray

unread,
Apr 19, 1999, 3:00:00 AM4/19/99
to
Tony Lawrence wrote:

Ack I missread the loop while ( hash <= buffers/2)
hash
<<1;
for 8192 you would get 8192 ... at 4096 it will fall through and bump to 8192.

sorry about that.
-john

0 new messages