[comp.sys.ibm.pc.hardware] 287 coprocessor speed

gwoho@nntp-server.caltech.edu (g liu) (01/29/91)

i read that a 287 divides the speed of the clock. is the number of
cycles given in the book from intel about the number of cycles it takes
to do, say a multiplication, corespond to the original clock
speed or the speed after being divided by three?
i want to know also how much a 287 will speed up my machine when it does
pure arithmatic, mostly multiplication, addition and an ocasional
sqrt. it spends probably at least 98% of its time doing arithmatic.
gwoho liu.

acook@athena.mit.edu (Andrew R Cook) (01/29/91)

In article <1991Jan28.213737.26655@nntp-server.caltech.edu>, gwoho@nntp-server.caltech.edu (g liu) writes:
|> i read that a 287 divides the speed of the clock. is the number of
|> cycles given in the book from intel about the number of cycles it takes
|> to do, say a multiplication, corespond to the original clock
|> speed or the speed after being divided by three?
|> i want to know also how much a 287 will speed up my machine when it does
|> pure arithmatic, mostly multiplication, addition and an ocasional
|> sqrt. it spends probably at least 98% of its time doing arithmatic.
|> gwoho liu.

When I got my math coprocessor, I tested it with a number of different types of
math functions(using inline MPU calls).  I found that for addition, subtraction,
multiplication and division there was little speed increase from the CPU
computations.  In fact + & - were slower (this is due to overhead in
routing calls to the MPU) for both ints and doubles!  x & / saw only modest
speed increases, at most 20% for ints & doubles.   This is no big suprise, for
the CPU already knows how to add ints, and can do it quite well.  The MPU can't
add much to that ability, except for floats, but still didn't seem to add much.
The real speed boosts came in when doing math functions, like sin, exp, sqrt,
etc..  Trig functions typically saw increases on the order of 300-700 %.  Exp
and log functions saw increases as big as 900%.  These types of functions are
what the math coprocessor was designed to do.  They are hard wired, not emulated
by int functions run on an add only CPU.

The only reason you should think about getting a MPU is if you do a lot of
numerical programming, CAD, and some uses of plot and/or spreadsheet programs.
Bear in mind, Windows itself does not make good use of a MPU, nor do word
processors.  If you do a lot of multiplication, you may see small improvements
in speed, depending on what you think a lot is.  If you currently wait for more
than a minute or so for multiplications (only) you will notice small improvments.
Make sure, however, that your program actually will use a MPU if you put one in.
Some (few) will not.

Good Luck.

Andy Cook
acook@athena.mit.edu