Computer Evolution (進化) and Performance
Computer Evolution (進化) and Performance
Computer Evolution (進化) and Performance
ENIAC - background
ENIAC
The first general-purpose electronic digital computer Electronic Numerical Integrator And Computer Mauchly & Eckert, at University of Pennsylvania
ENIAC - details
Decimal (not binary) 20 accumulators () of 10 digits Programmed manually by switches 18,000 vacuum tubes () 30 tons 15,000 square feet 140 kW power consumption () 5,000 additions per second
ENIAC
http://americanhistory.si.edu/collections/comphist/objects/ias.htm
IAS - details
1000 x 40 bit words
Binary number 2 x 20 bit instructions
* Partial Flowchart
M(X) The content of the word in address X of Memory M(X, 0:19) The 0th~19th bits of the word in address X of Memory
M(X) The content of the word in address X of Memory M(X, 0:19) The 0th~19th bits of the word in address X of Memory
Commercial Computers
1947 - Eckert-Mauchly Computer Corporation UNIVAC I (Universal Automatic Computer) US Bureau of Census 1950 calculations () Became part of Sperry-Rand Corporation Late 1950s - UNIVAC II
Faster More memory
IBM
Punched ()-card processing equipment 1953 - the 701
IBMs first stored program computer Scientific calculations
Transistors
-- 2nd Generation
Replaced vacuum tubes Smaller Cheaper Less heat dissipation () Solid State device Made from Silicon (Sand) Invented 1947 at Bell Labs William Shockley et al.
Appendix B
Page 138
Fundamental Functions
Data Storage: Provided by memory cells Data Processing: Provided by gates Data Movement:
The paths between components From memory to memory From memory through gates to memory
Control:
The paths between components can carry control signals.
http://www.eingang.org/Lecture/
Generations of Computer
Vacuum tube - 1946-1957 Transistor - 1958-1964 Small scale integration - 1965 on
Up to 100 devices on a chip
Computer Generations
Moores Law
Increased density of components on chip Gordon Moore - cofounder of Intel
IBM 7094
DEC PDP-8
1964 First minicomputer (after miniskirt!) Did not need air conditioned room Small enough to sit on a lab bench $16,000
$100k+ for IBM 360
Semiconductor Memory
1970 Fairchild Size of a single core
i.e. 1 bit of magnetic core storage
Holds 256 bits Non-destructive () read Much faster than core Capacity approximately doubles each year
Intel
1971 - 4004
First microprocessor All CPU components on a single chip 4 bit (Data Bus Width)
1974 - 8080
Intels first general purpose microprocessor
Speeding it up
Pipelining () On board cache On board L1 & L2 cache Branch prediction Data flow analysis Speculative () execution
L1 cache is a small, fast memory cache that is built in to a CPU. L2 cache resides on a separate chip from the microprocessor chip. More and more microprocessors are including L2 caches into their architectures.
Performance Mismatch
Processor speed increased Memory capacity increased Memory speed lags behind processor speed
Solutions
Increase number of bits retrieved at one time
Make DRAM wider rather than deeper
I/O Devices
Peripherals with intensive I/O demands Large data throughput demands Processors can handle this Problem moving data Solutions:
Caching Buffering Higher-speed interconnection buses More elaborate() bus structures Multiple-processor configurations
Key is Balance
Processor components Main memory I/O devices Interconnection structures
RC delay
Speed at which electrons flow limited by resistance() and capacitance() of metal wires connecting them Delay increases as RC product increases Wire interconnects thinner, increasing resistance Wires closer together, increasing capacitance
Memory latency
Memory speeds lag processor speeds
Solution:
More emphasis on organizational and architectural approaches
Pentium chip devoted about 10% of chip area to cache Pentium 4 devotes about 50%
Diminishing Returns
Internal organization of processors complex
Can get a great deal of parallelism Further significant increases likely to be relatively modest
Benefits from cache are reaching limit Increasing clock rate runs into power dissipation problem
Some fundamental physical limits are being reached
Within a processor, increase in performance proportional to square root of increase in complexity. But, if software can use multiple processors, doubling number of processors almost doubles performance So, use two simpler processors on the chip rather than one more complex processor With two processors, larger caches are justified
Power consumption of memory logic less than processing logic
8086
much more powerful 16 bit instruction cache, prefetch few instructions 8088 (8 bit external bus) used in first IBM PC
80286
16 Mbyte memory addressable up from 1Mb
80386
32 bit Support for multitasking
Pentium
Superscalar () Multiple instructions executed in parallel
Pentium Pro
Increased superscalar organization Aggressive () register renaming branch prediction data flow analysis speculative execution
Pentium III
Additional floating point instructions for 3D graphics
Pentium 4
Note Arabic rather than Roman numerals Further floating point and multimedia enhancements
Itanium
64 bit see chapter 15
Internet Resources
http://www.intel.com/
Search for the Intel Museum