🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: comp.arch
Article #12632

Doubling the data bus ( was Re: Is 64 bits ...)

#12632
From: Mike Albaugh
Date: Wed, 11 Oct 1995 14:39
47 lines
3163 bytes
Gertjan Klein (gklein@xs4all.nl) wrote:
: _address_ bus of 64 bits does not increase throughput at all. I can
: think of no compelling reason for a 64-bit address bus, but I may feel
: differently in a few years. A 64-bit _data_ bus, on the other hand,
: _does_ double the throughput when compared to a 32-bit bus.

	Reality check time. The _best_ a 64-bit data bus can do is
twice the throughput of an otherwise identical 32-bit data bus.
This is one of those "Speed of light" issues (guaranteed not to
exceed). Unless you do only memcpy() of your entire data space,
you will not actually reach this figure. I am not one of those
"bleeding edge" guys, but for over 20 years in the 8->16->32
bit transitions, the actual observed increase has been much closer
to a "rule of thumb" I once read, that doubling the data-bus
width gives a sqrt(2) increase in throughput. YMMV, of course,
and it will depend a great deal on where you are coming from.
For example, assembly code written for a 68000 showed less of
an improvement than does C. Why? hypothesis: the assembly-language
programmer was being careful to use 16-bit operations when they
were appropriate, whereas the C programmer was porting net.code
with 32-bit ints. All those useless cycles for fetching words
containing only the sign-extension on the 68K were suddenly free :-)

	But even in the absence of gross stupidity, common programs
do not, in my experience, actually use every byte of every word
(or cache line) that they reference. Of course, I do mainly
"embedded programming", all integer with lots of data-structure
manipulation. I'm sure Dennis O'Connor could produce carefully
cache-blocked code that used every bit it fetched for long periods
of time. Such code would approach "double speed" on a "doubled bus",
_iff_ it was main-memory-bandwidth-limited to begin with...

:   I guess that what all this proves is that the phrase "64-bit
: machine" is nonsensical. 64-Bit by what definition? External or
: internal bus, data or address, register size? Without this
: information, "64-bit machine" tells you _nothing_.

	It tells you the marketroids are in firm control :-)
I started out in this business on a machine with (potentially)
a 96Kbit "word length", but at 11uSec per 7 bits, it was not
exactly a speed demon :-)
					Mike

| Mike Albaugh (albaugh@agames.com) Time Warner Interactive
| (The entertainment company formerly known as Atari Games (_NOT_ Tramiel's))
| 675 Sycamore Dr. Milpitas, CA 95035		voice: (408)434-1709
| The opinions expressed are my own (Boy, are they ever)
Technical Details
Message-ID: <1995Oct11.143936.16826@dms.agames.com>
Path: arc1-ca.pugleaf.net!uu4news.netcom.com!dms!albaugh
References: <44sl81$hr1@murrow.corp.sgi.com> <44u6al$ml8@m1.cs.man.ac.uk> <458mrk$enl@inferno.mpx.com.au> <459kbl$qor@news.xs4all.nl>

Show Full Headers
Complete Article Headers
Newsgroups: comp.arch,comp.lang.c
Path: arc1-ca.pugleaf.net!uu4news.netcom.com!dms!albaugh
From: albaugh@agames.com (Mike Albaugh)
Subject: Doubling the data bus ( was Re: Is 64 bits ...)
Message-ID: <1995Oct11.143936.16826@dms.agames.com>
Followup-To: comp.arch,comp.lang.c
Sender: news@dms.agames.com (Net News Admin)
Organization: Time-Warner Interactive
X-Newsreader: TIN [version 1.2 PL2]
References: <44sl81$hr1@murrow.corp.sgi.com> <44u6al$ml8@m1.cs.man.ac.uk> <458mrk$enl@inferno.mpx.com.au> <459kbl$qor@news.xs4all.nl>
Date: Wed, 11 Oct 1995 14:39:36 GMT