Performance

lecture 19 June 2000

Performance is measured by running 'mixed jobs'.   Therefore it is NOT an absolute figure.  It depends on the kind of jobs that are used to measure the performance.

One phenomena that occurs in the computer technology is that the performance of a processor has been double every 18 months.  This observation is proposed by Moore, who is the pioneer (among a number of other engineers) of integrated circuit fabrication.  He was is Fairchild, one of the earliest IC manufacturer.  That observation is known as 'Moore's law'.   The main reason that makes this law possible is the rapid
advance of the IC manufacturer technique: the shrinking of the physical dimension of the electronic circuits.

* explain various benchmarks  :  MIPS, FLOPS, SPEC

S1 simple CPU

(The mnemonic and the format of the assembly language that represents S1 needs not to be strict, in fact, the form shown is very much unlike the conventional assembly language syntax where dest <- source is the norm.   Students must be careful to note the destination of 2 operand instruction such as 'mov r1 r2' that the direction is r1 -> r2 and 'add r1 r2'  is r1 + r2 -> r1  )

A simple CPU fetches instructions from memory.  It also read and write data to and from memory.   This is called 'von Neumann' architecture where data and instruction co-resides in a memory.  It is also called 'stored program' computer.  This idea came from  the proposal of an electronic computer by US Army Ordnance in 1946.  (Surprisingly, von Neumann himself is not the first author of that proposal, Burks, A. W., Goldstein, H. H. and von Neumann, 'Preliminary discussion of the logical design of an electronic computing instrument', US Army Ordnance Department Report 1946).  However, von Neumann' name is honored because of his contribution to the development of this type of computer which has now becomes ubiquitous.

* detail of Burks et al machine for historical interest and it is also very simple
* must explain to how read/write memory

A memory

To read and write a memory, the address is first specified and the appropriate control signals asserted.    Data can be accessed via its data bus.
READ
set address
assert control signal 'read'
<wait>
get the data from the data bus
WRITE
set address
set data on the data bus
assert control signal 'write'
<wait>
finish
The time between setting address and getting data is called 'access time'.  The time between writing one data and the other is called 'cycle time'.  Typical memory on the PC today has around 100 ns cycle time.