[comp.unix.sysv386] X performance improved more by?

richard@xanth.ingr.com (Richard Griffiths ) (01/04/91)

I would like to improve the performance of X on my 25mhz 386.  I
currently have 8mb of memory, a high res VGA, and am running ESIX rev.
D.  My question is, what will give me more of an X performance boost? 
Added an 80387 math co-processor, or adding more ram?   A scarcity of
funds makes this an either or question. 

Richard A. Griffiths              ...uunet!ingr!b11!xanth!richard   (UUCP)
Intergraph Corp.                  richard@b11.ingr.com          (Internet)
"OUT OF MY MIND?!" "Of course I'm out of my mind!" "If you were in my
mind, you'd want out too!"

larry@nstar.rn.com (Larry Snyder) (01/04/91)

richard@xanth.ingr.com (Richard Griffiths ) writes:

>I would like to improve the performance of X on my 25mhz 386.  I
>currently have 8mb of memory, a high res VGA, and am running ESIX rev.
>D.  My question is, what will give me more of an X performance boost? 
>Added an 80387 math co-processor, or adding more ram?   A scarcity of
>funds makes this an either or question. 

I would suggest getting a different vendors release of X and
a smart graphics board.  ESIX's X is known to be quite slow..

-- 
       Larry Snyder, Northern Star Communications, Notre Dame, IN USA 
  {..!uunet!mailrus!iuvax!ndcheg!nstar!larry, larry%nstar@ndcheg.cheg.nd.edu}
                     backbone usenet newsfeeds available
         Public Access Unix Site (219) 289-0282 (5 high speed lines)

shore@mtxinu.COM (Melinda Shore) (01/04/91)

In article <1991Jan04.002137.4077@nstar.rn.com> larry@nstar.rn.com (Larry Snyder) writes:
>I would suggest getting a different vendors release of X and
>a smart graphics board.  

The original poster said that he was operating under some financial
constraints, which may make this impossible.  A good place to start
would be to find out why his server is so slow.  I would hazard a
guess that he really is short on memory - I have 8M on my workstation,
and running a fairly bare-bones X server on top of Mach I've been
paging my brains out.  My Mach kernel is very slightly smaller than
the average sysV-ish 386 kernel, and the X server is almost certainly
much smaller than what most of you are running.  The fellow who made
the query should start looking at things like paging/swapping rates,
cpu utilization, etc.  If his cpu is idle and he's swapping a lot,
it becomes obvious what to do.  Similarly, if he's pegged his cpu
and there's little vm activity, it's also obvious what to do.  There's
really little need to guess before spending the money.
-- 
               Software longa, hardware brevis
Melinda Shore                                 shore@mtxinu.com
mt Xinu                              ..!uunet!mtxinu.com!shore

richard@pegasus.com (Richard Foulk) (01/10/91)

>  So I borrowed another 4MB of memory (to 12) and as you would suspect
>it didn't help. Not a bit. So I bought a Cyrix FPU for the system, and
>it did help. The same task now uses about 80% less CPU.
>
>  The Cyrix was cheaper, faster, and lower power than the Intel chip,
>so I didn't have any trouble making a decision. The faster is only
>marginally true for the latest Intel 387DX chips which use the improved
>microcode.

There have been a number of comparisons between the Cyrix and Intel
FPUs.   The Cyrix is apparently faster in the 25MHz version, and the
Intel wins in the 33MHz realm.

Sorry I don't have more details at hand just now.

jep@oink.UUCP (James E. Prior) (01/13/91)

In article <9788@b11.ingr.com> richard@xanth.ingr.com (Richard Griffiths ) writes:
>     My question is, what will give me more of an X performance boost? 
> Added an 80387 math co-processor, or adding more ram?   A scarcity of
> funds makes this an either or question. 

X uses integer arithmetic.  The math chips are for floating point, not
helping integer arithmetic.  

You need to have enough RAM to avoid swapping, but that's all.  

80386 CPUs are general purpose CPUs.  VGA boards dump all the 
computational load on the host CPU.  Shifting, masking, and oring 
several bytes of data (to display character) is something that takes
several instructions on a general purpose CPU.  To speed this 
work, use a not so general purpose CPU or use a smarter video 
controller/CPU.  Replacing the 386 with a not so general purpose 
CPU is out of the question; we wouldn't be able to run the programs 
that we have.  Using a better video controller or CPU is the answer.  

There are many out there.  There are controllers, that look like
peripheral chips to the host, such as the NEC 7220, the Hitachi 63484, 
and the defunct Intel 82786.  They quicky do the low-level grunt work 
or graphics stuff, much quicker than the general purpose host CPU.  
There are graphics CPU such as TI's 34010.  They special purpose 
CPU, that have special instructions to do the low-level grunt work as 
quickly as the video controller chips.  

I do not want to start a holy flame war over the virtues over which 
video controller/CPU is better than the others.  

The point is that almost any video controller/CPU is better than none.  
Even if they aren't the latest and greatest.  At least they remove 
burden from the general purpose host CPU.  

For example, my obsolete Bell Technologies Blit Board that uses the 
defunct 82786, using crude RAM chips, beats the hell out of my 
modern VGA board for speed.  

If you are serious about wanting to do faxt X, then by a late model 
video board THAT IS ALREADY SUPPORTED WITH A DRIVER FROM YOUR UNIX
VENDOR, that has a graphics CPU.  

73 de
-- 
Jim Prior    jep@oink    osu-cis!n8emr!oink!jep    N8KSM

gaf@uucs1.UUCP (gaf) (01/22/91)

In article <67@oink.UUCP> jep@oink.UUCP (James E. Prior) writes:
>
>You need to have enough RAM to avoid swapping, but that's all.  
>
>If you are serious about wanting to do faxt X, then by a late model 
>video board THAT IS ALREADY SUPPORTED WITH A DRIVER FROM YOUR UNIX
>VENDOR, that has a graphics CPU.  

I would agree with these comments.  bitblt operations on our Orchid
ProDesigner VGA were terribly slow - to the point that our terminal
emulator program ran at an effective rate of 2400 baud.  Tests showed
that it was the bitblt operations involved in scrolling a line at a time
which was the bottleneck.  We switched to an 8514/A video board and are
quite happy with it (except that it takes another interrupt, of which
there are precious few).

We also checked our memory situation by using the u386mon program which
came across Usenet some months back (no doubt available from any archive
site).  Out of our 8 Mb system, 6.4 Mb was available to non-kernel
processes.  By the time our ISC 2.2 system was booted and running the
usual set of daemons (nothing of our own - just inetd, nfsd, etc), only
2.8 Mb was left to real user programs.  Starting the X server, the Motif
Window Mgr, and a single xterm client left us with about 500 Kb (!) for
useful work.  A Motif program can easily consume 1 Mb of memory, and we
found we were swapping immediately.  System performance really suffers
when that happens.

High on the list of things I want now is a shared library version of
the various X and Motif libraries.  That would make life more bearable.
-- 
Guy Finney					It's that feeling of deja-vu
UUCS inc.   Phoenix, Az				all over again.
ncar!noao!asuvax!hrc!uucs1!gaf	sun!sunburn!gtx!uucs1!gaf

grant@bluemoon.uucp (Grant DeLorean) (01/28/91)

gaf@uucs1.UUCP (gaf) writes:

>In article <67@oink.UUCP> jep@oink.UUCP (James E. Prior) writes:
>>
>>If you are serious about wanting to do faxt X, then by a late model 
>>video board THAT IS ALREADY SUPPORTED WITH A DRIVER FROM YOUR UNIX
>>VENDOR, that has a graphics CPU.  

>I would agree with these comments.  bitblt operations on our Orchid
>ProDesigner VGA were terribly slow - to the point that our terminal
>emulator program ran at an effective rate of 2400 baud.  Tests showed
>that it was the bitblt operations involved in scrolling a line at a time
>which was the bottleneck.  We switched to an 8514/A video board and are
>quite happy with it (except that it takes another interrupt, of which
>there are precious few).


 If you bought the Paradise 8514/a Plus you don't need it to use an
interrupt. Take the jumper off and the interupt is disabled. That is
the default way for the board to come (and the way the defualt drivers
for DOS and the ISC server expect it to be). 

 As to only going with a board supported by the place you got your
X from (in this case, ISC), that isn't really necessary. I can name
several boards, like the Hurcules Graphics Station and the NEC
Graphics Engine that are not supported by ISC but have 3rd party
servers available that work just fine. There are also replacement
X systems available, such as the one from MetroLink, which will
give you X11r4 rather than the X11r3 that ISC, SCO and ESIX
distribute. I am running it right now, on a Hurcules Graphics Station
card. I admit that I am beta testing the Hurcules server for them,
but it is coming together nicely and the rest of the package is
not in beta. There are many options out there, if one looks.
-- 
 Grant DeLorean  (grant@bluemoon)    {n8emr|nstar}!bluemoon!grant