Stored Program • RAM • 10 Print “HAL: I know SPC (Stored program computer quote from that you and Frank were Williams p. 302): planning to disconnect me, and I'm afraid • “it must be possible to erase the contents of that's something I the memory and store new data2 [JT: Stored Program And cannot allow to happen”1 program instructions as well] in place of the • 20 If (Dave Bowman) old, then airlock crew • it must be possible to store information for Computer Memories member long periods of time; • it must inexpensive to construct because it would be needed in large quantities; This section includes developments in • it must be possible to get at the information being stored in very short periods of time early memory technologies as well as the Microsoft because there is no point in producing high- clipart speed electronic arithmetic and control units first stored program computers if you cannot get at the instructions and with the same high speeds).”

1 “2001 Space Odyssey” © Warner Brothers, MGM James Tam James Tam 2 “An important feature of this device [JT: A stored-program computer] was that operating instructions and function tables would be stored exactly in the same sort of memory device as that used for numbers”1

Stored Program Computer? Stored Program Computer?

• ABC? • Punch card and machines?

•q w e r t y u i o p Input (decimal) •a s d f g h j k l Arithmetic z x c v b n m (binary) Output (decimal)

A photo of Clifford Berry and the ABC, courtesy of Iowa state university Control: data and instructions (35 mm tape) •

James Tam James Tam

Who Came Up With The Concept Of The Stored How Did Machines Receive Their Instructions Program Computer?

• Before stored program computers • Why it’s important. – It’s a fundamental part of modern computers (and many, many other – (As mentioned) from tape or punched cards electronic devices: smart phones, smart devices etc.) – Hard wired connections (or before that redesigning and creating a • The answer whole new machine e.g. Pascaline, Difference engine etc.) – It’s shrouded in a great deal of controversy. • The location where the idea was developed – The Moore School (the team that developed the ENIAC) • The person most widely credited with coming up with the idea –

– He received so much notoriety that modern computers are sometimes referred to as “Von Neumann machines”. James Tam Image: Archives Center / Institute for Advanced James Tam Study (Shelby White and Leon Levy) Image: “A History of Computing Technology” (Williams)

CPSC 409: Analog devices Who Came Up With The Concept Of The Stored Who Came Up With The Idea Of The SPC: Program Computer? (2) Optional External Video

• Finally in 1947 a military lawyer made a ruling on the case • The original video shown in class includes a segment from this complete video – For the section pertinent to this section of notes starting watching around 19:23. The movie below includes additional footage from the court ruling ~22 minutes which provides good background and you can watch it until the end. – https://www.youtube.com/watch?v=pFP14xJmOdI&list=PL376DA99F15 341227&index=5

www.computermuseum.li

Institute for Advanced Studies (IAS)

James Tam James Tam www.computerhistory.org

John von Neumann (1903 – 1957 ) John von Neumann (1903 – 1957 ): 2 • Born into a wealthy family in Hungary. • Privately educated until almost his teens (11). • At age 6: • He greatly impressed his teachers in the regular – Tell jokes in classic Greek. school system. – Memorize telephone directories on sight. – Divide two eight digit numbers accurately.

F(x) = X2 + • Age 8: 10x F’(x) = 2x + – Mastered calculus. 10 • Age 15: – Studied advanced calculus and displayed such a depth of understanding that he was reported to have brought his tutor, the world renowned Mathematician Gábor Szegő, to tears.

James Tam James Tam

John von Neumann (1903 – 1957): 3 John von Neumann (1903 – 1957): 4

• By age 19 he was publishing his own papers (Mathematics). • “…there are many stories of how he was able to solve problems in a few minutes that others had worked on for months with no progress being • At age 30 he was made the youngest member of the newly evident”. (Williams) opened Institute for Advanced Study (IAS at Princeton).

• During World War II he was a part of many scientific projects P1 P2 P3 – Atomic bomb research. P1 P4 P2 P5 • “He has to rank as one of this century’s most brilliant P3 P4 mathematicians and undoubtedly among the ranks of leading

mathematicians of all time.” (Williams) AM 5 min

P5 4 6 5 1 min

Images What the???!!! 1) Man using computing device at desk: Seattle Municipal Archives, used under a James Tam Creative Commons license James Tam 2) Thinking man: http://ilovetobeselling.com/tips-for-attending-networking-events-near- 30 min and-far/ (Kathy Terrill) used under a Creative Commons license

CPSC 409: Analog devices John von Neumann, The Person: Optional John von Neumann (1903 – 1957): 5 External Video

• He also had the ability to write well about complex topics. • Interview questions directed to Dr. Von Neumann about topics – Because of this his name was associated with the architecture of the such as: the state of education of the time, the need for modern computer () additional math/science/technical training: – He never claimed to invented the ideas by himself. – https://www.youtube.com/watch?v=vLbllFHBQM4

James Tam James Tam

Von Neumann And The Moore School Von Neumann And The Moore School (2)

• Early designs (ENIAC) • September 1944: – Machines of the day (Zuse Z series, Aiken Harvard series, Stibitz Bell – Von Neumann became a regular visitor at the Moore school (although too late series) used paper tape (read only storage). to participate in the ENIAC design). – Participated in the discussions in the design of a new machine (eventually called – Such designs rejected for the early ENIAC. EDVAC). • January 1944 (Moore school) • October 1944: – Mauchly and Eckert ironed out problems in the basic design. – Army Ordinance department gives $100,000 to the ENIAC budget to research – This gave them some time for reflection. developing the EDVAC. – Eckert: wrote a three page document about a magnetic calculating • Lt. Herman Goldstine (made an earlier request) machine. • John von Neumann (likely funding was provided at his request) – From this point onwards von Neumann actively participated in the design of the EDVAC. • Made many contributions • But the idea of a stored program computer (SPC) existed before his involvement

James Tam James Tam

Von Neumann And The Moore School (3) Von Neumann And The Moore School (4)

• June 1945: “The First Draft of a Report on the EDVAC” • 1946: Eckert and Mauchly left the Moore school to found their – Described in great detail the concept of a stored program digital own company (Electronic Control Company…more on this computer. later). – Von Neumann was listed as the sole author. • Summer 1946: – Draft report meant as a progress report to be given the military – “Theory and Techniques for the Design of Electronic Digital Computers” sponsors. – Disseminated information about the design of the EDVAC to developers – But it was circulated within the Moore School and even to some on both sides of the Atlantic. outsiders. • The EDVAC was the first ‘conceived of’ stored program computer – Because it was the first document describing in detail the architecture • As we will see two other machines (UK) were completed before the EDVAC of a modern computer the term “von Neumann machine” coined. – (von Neumann: I didn’t invent it, I just wrote it down). – (Others at the Moore school: $%&#!!!).

James Tam James Tam

CPSC 409: Analog devices Types/Technologies Thermal Memories

• Thermal memories • Andrew Donald Booth (1918 – 2009: United Kingdom) • Mechanical memories – Experimented with thermal memories • Delay line systems • Electrostatic storage mechanisms • Rotating magnetic memories • Static magnetic memories

– The experiment was a failure (unreliable)

James Tam James Tam Image: “A History of Computing Technology” (Williams)

Mechanical Memories Mechanical Memories (2)

• Used on a large scale by Zuse in the Z1 (“sliding plates”) • Relays (another example of mechanical memory) – Also used in several other machines (e.g., Z2+, Bell machines). • These forms of memory were much slower than the internal workings (e.g., arithmetic unit) of the electronic computer. • Andrew Donald Booth (again): disk-pin mechanical memory.

James Tam James Tam “A History of Computing Technology” (Williams) Image: “A History of Computing Technology” (Williams)

Mechanical Memories (3) Mechanical Memories (4)

• Disk-pin mechanical memory Mechanical monsters access time ~0.25 second • Zuse’s Z3: – Additions: 0.25 – 0.3 seconds – Multiplication: two numbers every 4 – 5 seconds • Bell Model V (Twin machine) – Addition: 0.3 seconds – Multiplication: 0.8 seconds • Harvard Mark I – Additions: 0.3 seconds. – Multiplication: ~6 seconds. Electronic computer • ENIAC – Multiplication: in under 3 milliseconds (0.003 seconds)

James Tam James Tam Image: “A History of Computing Technology” (Williams)

CPSC 409: Analog devices Delay Line Systems Mercury Acoustic Delay Line

• First type of memory to gain widespread acceptance • A is represented using a series of pulses – Used in many machines: EDVAC, EDSAC, UNIVAC I, Pilot ACE, SEAC, LEO I – JT: think of it like a ‘binary Morse’ code etc. 5! • Types – Mercury acoustic – Air based delay lines – Slinky delay lines – Magnetostrictive delay lines

– After a brief delay the pulses would be resent – Repeatedly pulsing the signal would allow for long term storage of the information

James Tam James Tam

Mercury Acoustic Delay Line (2) Mercury Acoustic Delay Line (3)

• Developed by William Shockley (during WW II) • Technical issues: – (Bell labs: one of the developers of the electronic ). – Getting a good contact between the mercury and the quartz • Refined by Presper Eckert (mid 1940s) • Add XXX (Turing) – (-related research at the start of World War II). – The speed of sound in mercury is greatly affected by changing Quartz Quartz temperature (+100F) Mercury

Re-shaper Control Write Read gate James Tam James Tam

Delay Line Memory: Optional External Video ‘Air-Based’ Acoustic Delay Line

• Illustrating how works (sort of) using the • Booth (yet again): Inexpensive and theoretically possible Minecraft game. – An interesting and unique approach for teaching a technical concept! – https://www.youtube.com/watch?v=vriehkFNmaw

James Tam James Tam

CPSC 409: Analog devices Optional external video: In case you have no idea what is a The ‘Slinky’ Delay Line ‘slinky’. Magnetostrictive Delay Line

• Booth (yet again!): • 1951: Booth (and the Co.)

Wave

• Less temperature sensitive than the mercury delay line

Copyright Copyright unknown unknown James Tam James Tam

Magnetostrictive Delay Line Drawbacks Of Delay Line Technology

• …the delay! • Information stored in the delay mechanism was only available after a delay. ~0.5 to 1 millisecond (~1/1,000 second)

James Tam James Tam

Types Of Electrostatic Memory Electrostatic Memory (Williams’ Tube)

•Williams tubes (CRT) • 1946: Frederic C. Williams and developed the first truly high speed random access memory while at Manchester •The Selectron form of memory University (England). • The idea of using CRT ( ray tube) technology as a form of memory was mentioned by Eckert in a Moore School lecture (summer 1946). – The ideas were still primitive at this stage. – Williams: credited (at least) for developing the rough ideas into a workable form.

James Tam James Tam Image: Tam

CPSC 409: Analog devices Electrostatic Memory (Williams’ Tube): 2 Electrostatic Memory (Williams’ Tube): 3

• The first high speed memory (a form of vacuum storage) • Binary states – access time in microseconds (1 millionths of a second)

Electron ‘Dot’ (zero) gun • beam Deflector ‘Dash’ (one)

Phosphor

James Tam James Tam

An Example Williams’ Tube: The Read-Around An Example Williams’ Tube Problem

5” screen

~1300 James Tam James Tam Image: http://www.science.uva.nl

Electrostatic Memory: Parallels Electrostatic Memory (Williams’ Tube): Timeline

• For parallel machines each bit of a word was stored on • Summer 1946: Eckert mentions the idea of using a CRT as a separate CRTs. form of memory (“”). – His ideas were only rudimentary (far from being put into practice) Etc. • 1946, end: – Frederick C. Williams applies for a patent and starts work at Manchester University Bit 3 – Later Tom Kilburn joins the work as his assistant JT: of course each CRT could store more than one – (Some time later): They developed the first truly high-speed random bit but the bits of a single access memory (Williams) Bit 2 word were split among • 1947: a working model is completed that can store up to 1,000 multiple CRTs to allow parallel access bits of information (125 bytes). Bit 1 • 1948: a working model is completed that can store several thousand bits for several hours. James Tam James Tam

CPSC 409: Analog devices Electrostatic Memory: The Selectron Electrostatic Memory: The Selectron (2)

• Developed at RCA by a team lead by Jan Rajchman.

www.rcaselectron.com “A History of Computing Technology” (Williams) Write

Read

James Tam James Tam www.absoluteastronomy.com

Electrostatic Memory: The Selectron (3) Rotating Magnetic Memories

• Originally Selectron memory was to be the main memory for • Magnetic recording (e.g., tapes) proved that audio information the Institute for Advanced Study (IAS) machine. could be recorded magnetically. • When that order for Selectron memory for the IAS machine • However the slow access time of tape made them impractical was canceled the memory was used in the ‘Johnniac’ for use (as main memory) with electronic computers. computer (Rand) • The idea of adding a magnetic coating (nickel or ferrite) to a • It was more reliable and faster than the Williams’ tube rotating drum occurred to many people at the same time. memory, but because of the high cost and lack of availability it (Williams) was installed in only one computer. • But even though the access time with rotating drum storage • (Both forms of electrostatic memory were eventually replaced was faster than tape it was still too slow to be used as the by magnetic core memory: cheaper and more compact) main memory even for these early electronic computers.

James Tam James Tam

Two-Level Memory Model Booth’s Magnetic Memory: Disk

Slower speed, high capacity memory e.g., Magnetic drum • Andrew Donald Booth (redux yet again!) • Developed a based memory – Mail a voice: oxide coated paper

High speed, low capacity memory e.g., James Tam James Tam http://homepage.mac.com

CPSC 409: Analog devices Magnetic Memory: The Institute Of Advanced Booth’s Magnetic Memory: Disk Study (IAS): Princeton

• 1947: After ‘going through’ all his free samples from Mail-A- Voice, Booth and his father began work on their own form of magnetic .

“A History of Computing Technology” (Williams) • Timeline – Jan 1 1948 completed construction. – May 1948 installed and working in the experimental computer ARC (Automatic Computer). – 1952: Booth was producing large drum memories for others to use.

James Tam •“A History of Computing Technology” (Williams) James Tam

Static Magnetic Memories Static Core Memories

• 1940s: prototypes of this technology first developed. • Static core memory in a computer consists of an array of these – WWII: The German warships used core memory in their fire control cores. systems. – After the war the technology was brought to the US and disseminated to many: IBM, Harvard, MIT… Vertical

Horizontal wire

This memory is the origin for error message: “Segmentation Magnetic core fault: core dumped”: Background video if you aren’t familiar Detection wire with this term. James Tam James Tam Image: “A History of Modern Computing” (Paul Ceruzzi)

Why The Development Of Core Memory Was Static Core Memory And Significant (E.g. Whirlwind computer)

• 1959: transistors became cheap and reliable enough for use in • Computer speed increased by a multiple computers. • Maintenance time for memory fell from 4 hours per day to 2 – Transistors can represent a binary state by acting as a hours per week. – This increased the mean time passing between failures from 2 hours to T T 2 weeks). – The increased reliability of memory allowed an entire group of skilled technicians to work on another project.

• The development of magnetic core memory and transistors is what made computers cost effective – Magnetic core memory allowed for the stored program computer to be eventually developed.

James Tam James Tam

CPSC 409: Analog devices Advantages Of Core Memory Machines With Static Core Memory

• The cores can be small (reduces the size of computers) • Harvard Mark IV: • The memory is non-volatile – An Wang (student of Aiken) invented the memory that was used in that machine. – Williams’ tube: requires electricity to refresh the information – Rotating drum (e.g., ABC): requires constant mechanical power for the • ENIAC 1952: upgraded to a 2D array of cores rotation • Whirlwind: upgraded to a 3D array of cores • Above all: allows for random access of memory (~CD vs. – Pre-1953: used Williams’ tubes cassette: faster) – 1953: installed core memory with the aforementioned change such as but not limited to: • Doubled speed • Memory maintenance time: 4 hours per day down to 2 hours per week – IBM SAGE computers (“Whirlwind II”) • Generated $500 million in contract revenue for IBM in 1950s

James Tam James Tam

Optional External Video: Core Memory Development In SPC By Country

• The video provides a brief description of core memory as well • SPC (Stored Program Computer) developments in: as contrasting it with other types of memory such as vacuum – England tube based memory. • The Manchester Machine – https://www.youtube.com/watch?v=iNZJjILMK34 • Cambridge Machine: The EDSAC • The NPL Pilot Ace – America • The EDVAC • The Institute for Advanced Study (IAS) Machine • The Eckert/Mauchly Machines: UNIVAC and the BINAC • SEAC/SWAC • Project Whirlwind

James Tam James Tam

English Developments The Manchester Machine

• The British were ahead of the Americans in the development • After the end of the war many researchers ended up working of electronic computers. at Manchester university: • As mentioned the idea of a SPC originated in 1946 at an – Code breakers working on the Colossus (and the Colossi!) American university (Moore School) but immediately – Alan Turing (Enigma work) afterward 3 projects were initiated in Britain. – Freddy Williams and Tom Kilburn (Williams tube) • While the Americans were still working out the design of their – In 1948 it was the first electronic machine that operated based on the instructions stored in its memory. computers, British were working debugging programs on their own machines. • The official title of the lab: “Royal Society Computer Laboratory” – The British projects were of a smaller scale but were still counted as stored program computers. • Unofficial description of the lab: “late lavatorial”1 – This put the early British researchers ahead of their American counterparts (issues that came up while developing software drove the design of the next generation hardware).

James Tam James Tam

•1 F.C. Williams, “Early Computers at Manchester University”, The Radio and Electronic Engineer, 45 (no. 7), p. 328.

CPSC 409: Analog devices The Manchester Machine (2) The Manchester Machine (3)

• However the initial machine was extremely limited in it’s • It was first operational on June 21, 1948. capabilities (operational 1948) – The first machine to execute a stored program. – Access to stored information was serial. – Was it the first true SPC (Stored program computer)? – The instruction set consisted of subtractions, conditional branches and • Very limited capabilities a ‘stop’ instruction. • No real problems were ever solved using the machine (only tests of it’s – 32 words of (Williams tube) memory (word size = 32 bits) capabilities) – (It was meant to be used as a test bed for Williams’ ideas for • Not a fully working SPC electrostatic memory).

James Tam James Tam “The History of Computing Technology” (Williams)

The Manchester Machine (4) The Manchester Machine (5) • Machines which were modified versions of the prototype • After getting the prototype working the machine was were used for actual work upgraded: • Ferranti Limited: – April 1949: – Saw the prototype and asked for a properly engineered version to be • Step 1: 2 CRT Williams’ tubes (128 words x 40 bits/word) completed • Step 2: Magnetic drum (1,024 words) – Ferranti machine, Ferranti Mark I, completed Feb 1951 – A copy was sold to the U of T for $300,000 (design of the St. Lawrence Seaway). “Bring the information down – Improved specifications: “Ready to receive from the drum” • Level 1 (CRT) memory: 256 words x 40 bits each data!” • Level 2 (drum) memory: 16,384 words – Speed (the improved machine and not the limited prototype) • Addition: 1.2 milliseconds • Multiplication: 2.16 milliseconds – It was probably the first machine to implement a form of (Ceruzzi) 1 million 48 bit words (core + drum). James Tam James Tam

Cambridge Machine: The EDSAC Cambridge Machine: The EDSAC (2)

• Wilkes’ goal: run real programs for actual work over speculating on what would it be like to build certain design of machines. • Used the technology of the day (vs. developing a new untested technology) www.computerhistory.org – Used mercury-based acoustic delay lines – He was a student at Cambridge before the war. – 16 steel tubes containing mercury – During the war he assisted in the effort (mathematical projects) – Each tube could store 17 bits (16 bit digit plus a sign bit) – Returned 1945 as the director of the UML (University Mathematical Library) – Received (copied) a copy of von Neumann’s “First Draft on a Report on the EDVAC” – Participated in a series of lectures at the Moore School (summer 1946).

James Tam James Tam Image Copyright held by the Computer Laboratory, University of Cambridge

CPSC 409: Analog devices Optional External Video: Eckert and Mauchly - Cambridge Machine: The EDSAC (3) UNIVAC, J. Lyons and Co – LEO (EDSAC)

• Funding was provided by J. Lyons and Co. Ltd. • Original video could not be found. – Baking business? • History behind the J. Lyons tea and cake company funding the – Book keeping/accounting? developing of the LEO computer: – Computer! – https://www.youtube.com/watch?v=X0yYDxjBnTM

James Tam James Tam

Cambridge Machine: The EDSAC (4) Cambridge Machine: The EDSAC (5)

• The “Electronic Delay Storage Automatic ” (EDSAC) • In order to the get the machine completed within a useful was completed in 1949 at Cambridge. period of time (and cost) Wilkes was pragmatic • It named after the theoretical machine (The EDVAC) written – E.g., Timing speed was reduced from 1 MHz to 500,000 Hz (Williams) about in Von Neumann’s paper. • Which was the first SPC (Stored program computer)? – Reminder: Manchester prototype operational June 21, 1948. – EDSAC completed a year later (1949) – Another machine EDVAC (US) was conceptualized before this but it still largely theoretical) – But unlike the Manchester machine, the EDSAC was used to solved real problems. – The machine succeeded at becoming ‘first’ for several things. – Speed: • Addition: 700/second (~1.4 milliseconds)

James Tam • Multiplication: 4.5 milliseconds James Tam “A History of Computing Technology” (Williams)

Cambridge Machine: The EDSAC (6) Cambridge Machine: The EDSAC (7)

• D.J. Wheeler: designed it to allow the address of (sub)parts of • J. Lyons and Co. Ltd produced a version the EDSAC for their the program to be stored in memory rather than storing the own use: LEO (Lyons Electric Office) binary instructions for that part repeatedly. – It lead off to a series of machines (LEO I, LEO II…) and a company was • The “Wheeler Jump” was the predecessor of the modern spun off from the parent: LEO Computers Ltd. function/subroutine call. – Construction on the LEO began in 1949 and was completed in 1951. – Used to solve many problems: payroll (1.5 seconds vs. 8 minutes by hand), determining the optimal mix in different brands of tea etc.

James Tam James Tam

CPSC 409: Analog devices The NPL Pilot Ace The NPL Pilot Ace (2)

• After the end of World War II Alan Turing joined the National • Eventually both Turing and Husky left the project. Physical Laboratory in 1945 with the goal of constructing an • Turing returned in 1948 but left for good to join Williams and electronic computing machine: the Automatic Computing Kilburn to work on the Manchester machine. Engine (ACE) • Finally it was decided that V5 of the design should be the one – All the preliminary designs (V1 – 4) were completed by Turing to be implement Ted (1949). – 1946: James Hardy Wilkinson and Mike Woodger joins the project and assists Turing in the design process (V5 – 7) • Eventually this machine became known as The Pilot ACE. • The design effort occurred between 1945 – 1948. • The actual production of the hardware was subcontracted out. – Unfortunately little progress was made. – 1947 Harry Huskey joined the project. – Because of the lack of progress (and the addition of Husky) Turing became quite frustrated with the work. – Cage match: Husky vs. Turing?! James Tam James Tam “A History of Computing Technology” (Williams)

The NPL Pilot Ace (3) The NPL Pilot Ace (4)

• The first test program would turn on the output lights in • The NPL-based machines were often faster than its succession in succession. contemporary computers, even ones with greater memory – The “suck digs” program became the standard test program when resources. testing the machine. – The timing clock operated at a speed that was faster. • Derivative machines: – Also it allow for some effective timing optimizations but it required – 1954: English Electric: DEUCE (Digital Electronic Universal Computing more complex programming. Engine). – The optimizations were worth the complexity. – 32 more were manufactured in the 1950s and 1960s. • The 800 NPL Pilot ACE could perform matrix multiplications – The inside of the DEUCE machines were built to allow for easy servicing. faster than the 3,000 vacuum tube Cambridge machine (EDSAC) – However the space was rumored to be put into some unexpected and unorthodox uses! • Change room? • Clothes dryer? • Dangerous liaisons?

James Tam James Tam www.members.optusnet.com.au

American Developments Controversy Over American SPC Work

• During the war the British had advanced electronic computers • Eckert and Mauchly were the main leads behind the such as the Colossus. development of the ENIAC and formed the concept of a stored • At the end of the second world war, the Americans had program computer long before von Neumamn visited the attained many advancements in electronics. Moore School. – Completion of the first fully functional electronic computer the ENIAC • Von Neumann's publication “The first draft of a report on the • The Moore School lectures outlined the design of the stored EDVAC [a conceptual SPC computer] authored solely by von program computer/SPC (1946) Neumann was viewed as an attempt to take credit. • It was believed that the Americans would develop the first SPC • U.S. Official Secrets Act: prohibited Moore School personnel in a matter of months. (Eckert and Mauchly) from publishing anything about either – The early lead was lost to the British because of a number of factors: the ENIAC or the EDVAC. • The feud between: (1) Eckert and Mauchly vs. (2) John von Neumann. – But von Neumamn wasn’t a member of the team and was under no • The loss of post war funding for electronics research. such constraints.

James Tam James Tam

CPSC 409: Analog devices Lecture/Seminar: “Theory And Techniques For Controversy Over American SPC Work (2) The Design of Electronic Digital Computers”

• Also there were disputes over patent rights. • The lectures in which a free discussion about the idea of stored – Eckert/Mauchly (and the rest of the staff) believed that the main people program computer was held summer 1946. behind the work should be the owners of any patents. • Many notable attendees: – The University (of Pennsylvania) believed that the university rather than – Eckert and Mauchly individuals should own the rights. – George Stibitz – When the Moore School required all staff to sign over their patent rights Eckert and Mauchly had no choice but to leave (many other staff – John von Neumann soon followed) in March 1946. – Howard Aiken • Electronic Control Company which built the BINAC and the UNIVAC. – Maurice Wilkes • Eventually Remington Rand took over their company. • The lecture marked a major turning point in the development • More to come… of computers. – Many projects were directly advanced as a result (e.g., Wilkes working on the EDSAC).

James Tam James Tam

The EDVAC The EDVAC (2)

• The Electronic Discrete Variable Arithmetic Computer (EDVAC). • When Eckert and Mauchly resigned in March 1946 one of the • Funded by US Army Ordnance (same as ENIAC). ENIAC engineers Kite Sharpless took over the EDVAC project. • It was conceived of by the Moore School staff while they were • Herman Lukoff: assigned to solve the problems with the still working on the ENIAC mercury delay line technology – The first stored program computer to be conceptualized (although it • Spring 1947: the delay line memory for the machine was wasn’t the first completed and operational) working well enough for a demonstration (Institute of Radio • (Conceptualized before 1948: Manchester machine, 1949: EDSAC) Engineers: New York). – Informal discussions: many staff members were involved in the ???? discussions – Formal description: “The First Draft of a Report on the EDVAC” (von Neumann). – The device was to use mercury delay line memory and a single bit would be accessed at a time (serial) to keep the design simple.

James Tam James Tam

The EDVAC (3) The EDVAC (4)

• The project progressed until summer 1947 when Kite Sharpless and others left to form their own company Technitrol Engineering. • Morale sank earlier with the problems with Eckert, Mauchly and von Neumann and fell again with the loss the project’s http://www.computermuseum.li leader again. • Although it was the first conceived of stored program computer it wasn’t the first one completed. – Several senior staff left e.g., Herman Lukoff joined Eckert and Mauchly’s company Electronic Control Company. – The project was plagued with personnel and political problems. – Finally Richard Snyder was appointed the chief engineer and saw the – Unlike many of it’s contemporary machines the EDVAC project required project to its conclusion in 1952. many its components to be developed alongside of the machine. – Also there were extraordinary mechanisms used to ensure the accuracy of the results.

James Tam James Tam

CPSC 409: Analog devices The EDVAC: Specifications The Institute For Advanced Study (IAS) Machine

• Mercury delay-line memory: 1,024 word capacity x 44 • John von Neumann and Herman Goldstine ended their bits/word. association with the Moore School to return to the IAS (Princeton) • Magnetic drum memory: 4,000 words. • Clock pulses were generated at the rate of 1 million per Lt. Herman second. Goldstine www.ias.edu • Speeds: Image from Openclipart.org and Pixabay • Funding was obtained from the same military groups that – Addition: ~1 millisecond funded the ENIAC and EDVAC. – Multiplication, division: 3 milliseconds – Partly it was through von Neumann’s ‘pull’ within the military – Partly it was because it wasn’t clear which machine would be superior (IAS or UNIVAC) • Other funds came from the Atomic Energy commission and RCA.

James Tam James Tam

The Institute For Advanced Study (IAS) Machine The Institute For Advanced Study (IAS) Machine (2) (3)

• March 1946 (Eckert and Mauchly were going through patent • Memory: problems with the Moore School). – The machine was designed to access memory in parallel (unlike the • Von Neumann invited Eckert to join him as the project leader. contemporary serial-based machines). – Originally it was to use RCA Selectron memory. – Unfortunately the insistent of the IAS on open research vs. Eckert’s belief in the inventor’s patent rights were in conflict. – Delays in the production of a working required a switch to Williams’ Tube memory. – Julian Bigelow was finally offered the position

•Bit 3

•Bit 2

•Bit 1 www.ias.edu James Tam James Tam

The Institute For Advanced Study (IAS) Machine The Institute For Advanced Study (IAS) Machine: (4) Legacy

• 1960: The original machine was donated to the Smithsonian Museum. • Von Neumann believed in an ‘open’ research project and copies of plans were sent to other groups so they could make their own copies. • Many copies were made (“IAC”/“AC” series based on the “IAS” • June 1952: the machine is officially unveiled publically. machine) – However enhancements were still made after this. – JOHNNIAC (Rand Corporation) • The machine processed data in parallel and it was very fast: – MANIAC (Los Alamos Laboratory) – Additions ~60 microseconds (EDVAC = 1,000 microseconds). – AVIDAC, ORACLE, GEORGE (Argonne National Laboratory) – Multiplications ~ 300 microseconds (EDVAC = 3,000 microseconds). – ORDVAC, ILLIAC (University of Illinois: former for the Aberdeen Proving Grounds, the latter for their own use) – SILLIAC (Sidney Australia) James Tam James Tam American Smithsonian museum: (https://americanhistory.si.edu/collections/search/object/nmah_334741 )

CPSC 409: Analog devices UNIVAC/BINAC: Background UNIVAC/BINAC: Background (2)

• Early 1946: Eckert and Mauchly could see the deteriorating – Eckert and Mauchly set up a 3 way agreement between their company, situation at the Moore School and they took appropriate the Census bureau and the National Bureau of Standards. Army measures to secure their own future (JT: with a reasonable Ordnance

level of self promotion) $$$300k? Eckert and Mauchly! Census Bureau

US census $$$ • When Eckert and Mauchly left the Moore School they founded National Bureau of the Electronic Control Company (ECC). Standards – The groundwork that they laid allowed them to get a warm reception from the Census bureau. $75k?! (Sept 1946) – Unfortunately the law prevented the Census bureau from contracting Eckert research work (only purchase a fully working machine). and Mauchly James Tam James Tam

UNIVAC/BINAC: Background (3) UNIVAC/BINAC: Background (4)

• Originally it was called “..an EDVAC-type machine” in the • 1947 (latter half): The government funding only brought contracts but because of the problems with the Moore School limited cash flow. the name was changed to UNIVAC (UNIVersal Automatic • October 1947: Northrop Aircraft Company agreed to fund the Computer). development of a BINary Automatic Computer (BINAC). • UNIVAC finances – $80k upfront. – Cost ~$400K – $20k upon completion – Census bureau funding $300k – Target completion date: May 15 1948 (would have been the first – National Bureau of Standards $75k (to study the feasibility of operational stored program computer). developing the machine) – Actual completion date: 1949 (the first stored program computer – Shortfall <$25k - $100k> operational in North America). • 1947: Eckert and Mauchly changed their business partnership to a formally incorporated entity: Eckert-Mauchly Computer Corporation to attract outside investment. James Tam James Tam

BINAC BINAC (2)

• Accounting: – Amount paid by Northrop: $100k – Actual cost to produce the machine: $278k – Problem: <$-178k> • However the completion of a working machine allowed prospective clients to put in orders for the (still theoretical) UNIVAC. • BI = Binary (representation method and it was a 2-in-1) – 3 government agencies • Memory: – A.C. Nielsen – Main: Mercury delay lines: 512 words (for each half) x 31 bit/word – Prudential Insurance – Secondary memory: nickel-coated bronze (magnetic) tape • But the contract price was insufficient to cover the research and development costs.

James Tam James Tam Image: “A History of Computing Technology” (Williams)

CPSC 409: Analog devices UNIVAC UNIVAC (2)

• Feb 1950: with an imminent insolvency the Eckert-Mauchly • At first Remington Rand didn’t fully understand the Computer Corporation was sold to Remington Rand. significance of the technology that it had bought but – A senior Remington Rand executive was put in charge but Eckert and fortunately their customers clamored for computers despite a Mauchly were both retained on staff. reluctance for the sales staff to sell them. (Ceruzzi). – Remington Rand attempted to renegotiate the 5 contracts – The 2 private sector contracts were canceled but the 3 government • A total of 44 UNIVAC computers were produced for contracts were successfully renegotiated. government and industry. – The first UNIVAC was delivered to the Census Bureau March 1951. • It made Remington Rand the first large scale computer company •Several years Computer = Remington Rand

– It was the second (after the Ferranti Mark I) electronic computer to be produced under a contract for a commercial customer. Image: www.computermuseum.li James Tam James Tam

UNIVAC In Actual Use UNIVAC In Actual Use • CBS used a UNIVAC computer to predict the 1952 U.S. presidential election. • CBS (TV network) used a UNIVAC to predict a US presidential election Eisenhower Adlai Stevenson

Image US Army: The “UNIVAC” on TV: https://www.eisenhowerli Results after 1st run Stevenson (Image from hano22 and Deviant brary.gov/eisenhowers/ar Eisenhower Art my-years https://www.deviantart.com/hano2 2/art/Merry-christmas- 581952051) Results after 2nd run Stevenson

Eisenhower The real UNIVAC: in the basement

Results after 3rd run Stevenson

(Broadcast on network Eisenhower TV) James Tam James Tam “Annuals of the History of Computing” Vol. 3 #4 October 1981

Optional External Video (New For 2020): The UNIVAC: Specifications First Computer Calling US Elections

• Memory: 1,000 words • A documentary/archived news cast about the Eisenhower- • Timing clock: 2.2 MHz Stevenson 1952 American election results: • Speed: – https://www.youtube.com/watch?v=nHov1Atrjzk – Addition: 0.5 millisecond (500 microseconds) – Multiplication ~2 milliseconds (2,000 microseconds) – Division ~4 milliseconds (4,000 microseconds) – (Similar to the BINAC each operation was completed independently by each half of the computer and then the results were compared).

James Tam James Tam

CPSC 409: Analog devices SEAC/SWAC SEAC/SWAC (2)

• During the Great Depression a US government - National • Stop-gap computer: Bureau of Standards (NBS) - stimulus program involved hiring – Initially known as the National Bureau of Standards Interim Computer the unemployed to create mathematical tables. – Later became known as the SEAC (Standards Eastern Automatic • National Applied Mathematics Laboratories was set up as a Computer). special division. – It was a national body to lead the development of new computational technology and perform large-scale calculations. • One of the leaders on the project (chief mathematician) George Dantzig tired of the delays in the development of the UNIVAC and the IAS machine. • Late 1948: Dantzig convinced the US Air Force to provide funding to the Applied Mathematics Laboratories to produce a small computer as a stop gap. James Tam James Tam “A History of Computing Technology” (Williams)

SEAC: Specifications SEAC: Construction • Mercury delay line memory. • Input/Output: • As mentioned the machine was to be constructed as a stop gap. – Hexadecimal • It consisted of a simple design that was constructed as quickly – Via a single teletype, paper tape punch and reader as possible to avoid major technical problems. – Low clock speed to avoid interference between electronic components. • Simple instruction set: addition, – Soldering was sometimes poorly done and required unique and subtraction, multiplication, division, ingenious maintenance techniques. comparison, input, output. • Clock: 1 MHz • Memory: 512 words x 45 bits/word Microsoft clipart

– SEAC was fully operation during the first demonstration: April 1950 (In contrast the BINAC ran some test programs ~August 1949 but was still James Tam incomplete) James Tam Image: www.computerhistorymuseum.org

SWAC SWAC: Specifications

• Standards Western Automatic Computer (SWAC). • Memory: • The Institute for Numerical Analysis (INA) was a research – Primary: 256 words x 37 bits/word group within the (National) Applied Mathematics Laboratories. – Secondary: 8,000 words • 1948: Harry Husky came over from the National Physical • Speed: Laboratory (Britain) and initiated the INA computer – Addition: 64 microseconds (0.064 milliseconds) construction project Jan 1949. – Multiplication: 384 microseconds (0.384 milliseconds) – To reduce the risk of investing in an unproven technology (Williams’ – As of its completion date: July 1950 it was the fastest machine in the tube) the NBS opted to make the SWAC a parallel machine using world (until the IAS machine was completed a year later) Williams’ tube memory (primary) and magnetic drum (secondary). – Similar to the SEAC the SWAC was meant as a stop gap computer.

James Tam James Tam “A History of Computing Technology” (Williams)

CPSC 409: Analog devices Project Whirlwind Project Whirlwind (2)

• 1943: Louis de Florez (US Navy, Aeronautics) • ~1944: Jay Forrester, a graduate student with the Servomechanisms Laboratory (MIT), was asked to look into the project. • Initially analog technology was investigated but it proved to be too slow for the simulator. • Late 1945: the machine’s design was switched entirely to digital electronic. • Early 1950s: the focus of the Whirlwind computer switched A History of Computing www.colourbox.com) Technology” (Williams) from acting as a flight simulator to a coordinate a defense against the possibility of an enemy bomber attack (Cape Cod) – Tracking incoming bombers – Scrambling fighter interceptors

James Tam James Tam

Project Whirlwind (3) Optional External Video: Project Whirlwind

• The Whirlwind computer first went online on April 20, 1951 • A video from MIT’s official YouTube channel showing how the • It was the first computer to utilize magnetic core memory. Project Whirlwind computer can be used to compute the flight • It was successful so many of the Whirlwind staff were of a Viking military rocket. transferred to work on a continent wide system: SAGE (Semi – Narrated by legendary journalist Edward R. Murrow interviewing for CBS news. Automatic Ground Environment) Air Defense System. – Actual military information is provided to the computer from a US navy – The work was contracted out to IBM. admiral. – The machines were known as AN/FSQ7 (first mass produced machine to – https://www.youtube.com/watch?v=5ZQP4G3Qwb4 utilize core memory). – Referred to as “Whirlwind II” but they were of a different design. – The AN/FSQW7 machines provided the central air defense radar system (North America) until the 1980s

James Tam James Tam

Comparison Of The First SPCs References Completion Date Addition (ms) Multiplication (ms)

Manchester June 1948 1.2 milliseconds 2.16 milliseconds • A History of Computing Technology, Williams, Michael R. (IEEE machine Computer Society Press 1997): Chapter 8. EDSAC 1949 ~1.4 milliseconds ~4.5 milliseconds • A History of Modern Computing, Ceruzzi, Paul E. (MIT Press NPL DEUCE 1954, Pilot NA NA 2003). ACE 1959 EDVAC 1952 ~1 millisecond 3 milliseconds

IAS Machine 1952 0.06 milliseconds 0.3 milliseconds

UNIVAC 1951 0.5 milliseconds ~2 milliseconds

SEAC April 1950 NA NA

SWAC July 1950 0.064 milliseconds 0.384 milliseconds

Project April, 1951 NA NA Whirlwind James Tam James Tam

CPSC 409: Analog devices After This Section You Should Now Know After This Section You Should Now Know (2)

• What is a stored program computer (SPC) and what differed • What were the early memory technologies from earlier machines – How did each one work, what were their strengths and drawbacks (if applicable) • How/who/where was the concept of a stored program – Who were the people behind each technology computer developed – (If applicable) was the memory successfully used in any of the early SPC • Important biographical events in the life of John von Neumann and if so which ones – When was the technology invented and put into use • What was the significance of the paper “The First Draft of a • How did the two-level memory model work report on the EDVAC” and how was it related to the controversy over the development of the first SPC • What were the early SPC projects in England and in America – How did the Americans lose their early head start to the British • What was the significance of the seminar: “Theory and – What was the first and the fastest (in the world and in North America) Techniques for the Design of Electronic Digital Computers” – When was work commenced on these machines and when were they complete (this is the date that they were fully/largely operational – later enhancements could have been added later)

James Tam James Tam

After This Section You Should Now Know (3) After This Section You Should Now Know (4)

• What were the early SPC projects in England and in America • What were the early SPC projects in England and in America (continued) (continued: 2) – What motivated the creation of these machines (if applicable) – What significant developments that came out of the creation of these – What was the general appearance and physical characteristics of these machines (e.g., new technologies, new programming techniques) machines – How did these machines receive their name/naming convention (if applicable) – How were these machines designed and what were their important technical specifications of these machines – What were some of the challenges involved in the creation of these machines (if applicable) – What sort of technologies were employed in these machines – Who were the major people and organizations behind the development of these machines – How were these machines used (if applicable)

James Tam James Tam

Copyright Notification

• “Unless otherwise indicated, all images in this presentation come from www.colourbox.com”

James Tam slide 119

CPSC 409: Analog devices