Harvard vs. vonNeuman ... was Re: Early computers was Re: Relay computers

From: Alexander Schreiber <als_at_thangorodrim.de>
Date: Tue Sep 28 00:35:04 2004

On Mon, Sep 27, 2004 at 03:57:20PM -0700, Peter C. Wallace wrote:
> On Mon, 27 Sep 2004, Tom Jennings wrote:
>
> > re: Zuse, and stored-program, etc...
> >
> > > On Sun, 2004-09-26 at 01:37, Hans B PUFAL wrote:
> > > This web page also seems apropro :
> > > http://irb.cs.tu-berlin.de/~zuse/Konrad_Zuse/Neumann_vs_Zuse.html
> >
> > First, I don't mean to disparage Zuse's accomplishments, especially
> > under the circumstances he lived in, it's pretty amazing.
> >
> > The idea-of-the-century wasn't machines that calculate automatically,
> > but machines-that-modify-themselves-as-part-of-normal-operation. Other
> > than particular logical arrangement, I don't see how the Zuse machines
> > are an architectural improvement over the IBM and Harvard relay
> > calculators.
> >
> > In many ways it's an unfair comparison, the IBM machines had a nearly
> > unlimited budget, and poor Konrad sat by himself in his living room
> > punching programs into used 35mm film stock, never mind the war going on
> > around him.
> >
> > Less well-known but historically more interesting is his 'planKalculus',
> > his algorithmic nomenclature he worked up to describe computer
> > programs. He even had chess-playing code! It's described in fair detail
> > in A HIST. OF COMP. 20TH CENT. (1980, MIT press) by Knuth.
> >
> > (For the record, PICs are "Harvard architecture"; data and program
> > memory are separate. "von Neumann architecture" is program and data
> > stored in the same memory.)
> >
> >
>
> Actually many modern CPU's with caches are Harvard Architecture, the
> instruction streams and data streams only being mixed on the memory of the
> caches.
>
> I've also heard that machines that mix data and instruction streams are more
> properly called "Princeton achitecture"...
>
> Isn't self modifying code pretty much deprecated these days (aside from
> trampolines and such)

Self modifying code is _very_ strongly frowned upon when working with
halfway modern machines, because it messes up the I-caches (which
operate best when the memory theuy cache is read-only and there almost
guaranteed not to change under them) and therefore _hurts_ performance.

Regards,
      Alex.
-- 
"Opportunity is missed by most people because it is dressed in overalls and
 looks like work."                                      -- Thomas A. Edison
Received on Tue Sep 28 2004 - 00:35:04 BST

This archive was generated by hypermail 2.3.0 : Fri Oct 10 2014 - 23:37:32 BST