🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: comp.arch
Article #11624

Re: condition codes

#11624
From: Herman Rubin
Date: Thu, 16 May 1991 21:14
68 lines
4077 bytes
In article <1991May15.003949.15076@watson.ibm.com>, prener@watson.ibm.com (Dan Prener) writes:
> In article <12236@mentor.cc.purdue.edu>, hrubin@pop.stat.purdue.edu (Herman Rubin) writes:
 
> |> Why do we have separate integer and floating units, especially without 
> |> communication between them?  I suggest those who push this horror look
> |> at how difficult conversion between them is.

			....................

                                                 If thereis a dichotomy, it
> |> is address/loop versus arithmetic, not integer versus floating.  There
> |> have been machines with this feature.  But even if one has this, it is
> |> still necessary to have good communication between the units.
> |> 
 
> We have separate integer and floating units because it helps make the
> machines fast.  It provides an easily-detected form of parallelism.
 
But if integers need to be used together with floating numbers, the 
conversion procedure loses more than what is gained by the parallelism.
Increased memory references are certainly not the way to get efficiency.

> Good communication between the units requires both the hardware real-
> estate for the data paths and, when such communication is used, the
> synchronization of the two units.  Good communication, like any other
> architectural feature isn't "necessary".  It is desirable, if the
> cost is low enough.  One must compute the expected performance return
> from adding such features.  As with any such computation of an expectation,
> this would include

The cost of the entire arithmetic unit on a computer is a relatively small
part of the cost of the computer.  I admit there might be a data path
problem, but why does it require synchronization?  Putting in a small
dedicated register memory, and using access to it to allow desynchronization,
should not be too difficult.  Even if the unit does conversion, the complexity
of the additional hardware should be quite simple.  Even if the conversion/
communication part is not too well optimized, it should still do much better
than the present.  

>    (1) how often such a feature would be used
>    (2) the performance improvement it would provide, when used
>  & (3) what performance degradation the machine would suffer from
>          having such a feature, even if it is not used (e.g., the
>          loss of other ways of spending the chip area)
> 
> Does anyone have any suggestions about what these numbers are?

As for (1), I suggest asking knowledgeable users for situations in which
they could take advantage of such features, or would be inconvenienced by
lack of them.  These users would have to understand architectural
considerations, and not just HLLs.  These considerations militate non-
obvious choices between algorithms, so testing specific algorithms is
not the answer.

I believe that the current elementary function library for the RS/6000
does quite a bit of this, and this might give an indication.

As for (2), it would reduce the cost of the hybrid operations down to
1/3 their present cost at least, and in some cases more.  For unsigned
integer to floating conversion, at present this takes an integer store,
a floating load, and a floating add, assuming that the preparations have
been made.  Other situations are even worse.

As for (3), possibly we should put in another chip.
-- 
Herman Rubin, Dept. of Statistics, Purdue Univ., West Lafayette IN47907-1399
Phone: (317)494-6054
hrubin@l.cc.purdue.edu (Internet, bitnet)   {purdue,pur-ee}!l.cc!hrubin(UUCP)
Technical Details
Message-ID: <12426@mentor.cc.purdue.edu>
Path: arc1-ca.pugleaf.net!utzoo!utgpu!news-server.csri.toronto.edu!rpi!zaphod.mps.ohio-state.edu!sample.eng.ohio-state.edu!purdue!mentor.cc.purdue.edu!pop.stat.purdue.edu!hrubin
References: <12162@mentor.cc.purdue.edu> <13011@pt.cs.cmu.edu> <1991May15.003949.15076@watson.ibm.com>

Show Full Headers
Complete Article Headers
Path: arc1-ca.pugleaf.net!utzoo!utgpu!news-server.csri.toronto.edu!rpi!zaphod.mps.ohio-state.edu!sample.eng.ohio-state.edu!purdue!mentor.cc.purdue.edu!pop.stat.purdue.edu!hrubin
From: hrubin@pop.stat.purdue.edu (Herman Rubin)
Newsgroups: comp.arch
Subject: Re: condition codes
Message-ID: <12426@mentor.cc.purdue.edu>
Date: 16 May 91 21:14:38 GMT
References: <12162@mentor.cc.purdue.edu> <13011@pt.cs.cmu.edu> <1991May15.003949.15076@watson.ibm.com>
Sender: news@mentor.cc.purdue.edu
Lines: 68