Computer Architecture Today

Informing the broad computing community about current activities, advances and future directions in computer architecture.

On February 15th, 2021, we will celebrate the 75th anniversary of the unveiling of ENIAC — the electronic computer that started our field.  The banner image above shows the ENIAC, unveiled Feb 14 1946, with Presper Eckert, Jr. and John W. Mauchly. 

The University of Pennsylvania School of Engineering and Applied Science (Penn SEAS) is the successor of Penn’s Moore School for Electrical Engineering where ENIAC was designed and built.  Penn SEAS will host an online mini-symposium to celebrate the legacy of ENIAC with Architect and Turing Award Winner Dave Patterson as the lead speaker starting at 10:30am EST. 

Penn’s celebration will include some architecture and history as a nostalgic reminder for those who have lived and followed computer evolution from the early days and as education for younger generations who would like to know where it began and how we got here.  It will include a celebration of the first programmers—the women of ENIAC who made it actually compute something interesting.

We will record the proceedings and make them available, but the Zoom Webinar session provides an opportunity for people to participate live on this 75th anniversary.

Eckert and Mauchly, the engineers who built ENIAC also went on to give us EDVAC, the design for the first stored-program processor (more popularly known as “Von Neumann Architecture” since Von Neumann wrote the famous “First Draft of a Report on the EDVAC”).  EDVAC is the more direct progenitor of today’s scalar microprocessors.  EDVAC at a mere 6,000 vacuum tubes in a 490 sq. ft. footprint was, at the time, an advance over ENIAC, which required 18,000 vacuum tubes in over 1800 sq. ft.  It was also an advance because it could be programmed by setting bits in memory rather than manually turning knobs and connecting wires.  

EDVAC — stored-program processor successor to ENIAC, also designed by Eckert and Mauchly

However, after decades of Moore’s Law capacity scaling, and now the slowing of Moore’s Law feature scaling, the original architecture of ENIAC may be more relevant than ever. With 64b ARM cores that fit in fractions of a millimeter-squared on economical 100 millimeter-squared dies, we don’t have the same premium for compactness that we had in the 1940s or even in the 1980s.  Today’s accelerators and Field-Programmable Gate Arrays (FPGAs) look more like ENIAC than EDVAC.  In today’s parlance, we might say ENIAC was a parallel, dataflow machine with a collection of parallel accumulators and functional units and programmable lookup tables that could be wired up to perform a wide range of computations—not unlike FPGAs that are built with programmable lookup tables, multipliers, and accumulators that can be programmably wired up to perform any computation exploiting spatial parallelism.  Today, we set configuration bits on chips to program the wiring of computations and the contents of lookup tables on FPGAs, removing the need for manual wiring.  We use high-level languages, like C and OpenCL, coupled with layers of automatic compilation tools, developed over the intervening decades and run on advanced computers, to route and program up wired connections between functional units.  That is, today we have computers and compilers to close the gap for us between high-level program descriptions and functional unit allocation, wiring, and control that they did not have in the 1940s.  Professor Mitch Marcus will cover ENIAC history and architecture, and Professor André DeHon will address the relation between ENIAC and modern FPGAs.

Ruth Lichterman and Marlyn Wescoff reprogramming ENIAC in 1946

Gini [Mauchly] Calcerano, daughter of ENIAC designer John Mauchly and ENIAC programmer Kathleen Mauchly will talk about the first ENIAC programmers, who were all women.  If you aren’t familiar with their history, now is the time to learn.  It parallels similar stories now being made famous by movies like Hidden Figures and The Imitation Game and books like Code Girls.  At the time ENIAC was designed, “Computers” were women with advanced mathematical training who performed mathematical computations by hand.  The ENIAC programmers were recruited from the best and brightest of the human “Computers” to develop the plans and wiring for ENIAC to configure it for an intended computation.  Owing to scant documentation, they had to decipher the machine from the schematics to develop programs that looked more like ASIC or FPGA wiring of custom computing machines than our modern assembly language.  With unreliable vacuum tube technology and cables, they became experts in debugging both the physical machines along with their logical programs.

Programming has come a long way since ENIAC and EDVAC.  ENIAC President’s Distinguished Professor of Computer and Information Systems Stephanie Weirich will talk about programming languages from Grace Hopper to today. In addition to Admiral Hopper’s distinctions as being one of the first to develop computer-readable languages and overseeing the design of COBOL, she was part of the Eckert-Mauchly Computer Corporation that built UNIVAC, the commercial successor to EDVAC, and served on the faculty of the Penn Moore School for 15 years.

Computer and Information Sciences Chair Zach Ives will look broadly at the impact of ENIAC and computing on today’s world.  Associate Dean Camilo J. Taylor will share a vision for autonomous vehicles, and Prof. Sebastian Angel will look at programming and building today’s large-scale distributed systems.

About the Author: André DeHon is an ACM Fellow and a Professor of Electrical and Systems Engineering at the University of Pennsylvania. He is broadly interested in how we physically implement computations with special emphasis on spatially programmable architectures (e.g., FPGAs) and interconnect design and optimization.

Disclaimer: These posts are written by individual contributors to share their thoughts on the Computer Architecture Today blog for the benefit of the community. Any views or opinions represented in this blog are personal, belong solely to the blog author and do not represent those of ACM SIGARCH or its parent organization, ACM.