Keeping Old Computers Alive for Deeper Understanding of Computer Architecture
Total Page:16
File Type:pdf, Size:1020Kb
Keeping Old Computers Alive for Deeper Understanding of Computer Architecture Hisanobu Tomari Kei Hiraki Grad. School of Information Grad. School of Information Science and Technology, Science and Technology, The University of Tokyo The University of Tokyo Tokyo, Japan Tokyo, Japan [email protected] [email protected] Abstract—Computer architectures, as they are seen by stu- computers retrospectively. Working hardware is a requisite for dents, are getting more and more monolithic: few years ago a software execution environment that reproduces behavior of student had access to x86 processor on his or her laptop, SPARC socially and culturally important computers. server in the backyard, MIPS and PowerPC on large SMP system, and Alpha on calculation server. Today, only architectures that This paper presents our information science undergraduate students experience writing program on are x86 64 and possibly course for teaching concepts and methodology of computer ARM. On one hand, this simplifies their learning, but on the architecture. In this class, historic computer systems are used other hand, this makes it harder to discover options that are by students to learn different design concepts and perfor- available in designing an instruction set architecture. mance results. Students learn the different instruction sets In this paper, we introduce our undergraduate course that teaches computer architecture design and evaluation that uses by programming on a number of working systems. This historic computers to make more processor architectures acces- gives them an opportunity to learn what characteristics are sible to students. The collection of more than 270 old computers shared among popular instruction set, and what are special that were marketed in 1979 to 2014 are used in the class. These features specific to an instruction set architecture. They can computers had to be repaired and restored to working condition verify their interpretation of manuals through experiments. before using in exercise for the undergraduate students. By experiencing different architectures from what is used everyday, The knowledge of how designers in the past have decided students learn the context of features that are standard today. architectural parameters and its end results are then used for This paper also shows power consumption and benchmark designing students’ own architecture. This paper also shows comparison results obtained using old computers outside class- power consumption and benchmark-to-benchmark comparison room. These data are also used as the basis for learning about observations obtained through our collection of computers, concepts and issues of computer architecture. which are also useful materials for teaching these issues. For students to work with old computers, the computers I. INTRODUCTION need to be in a working condition. Restoration requires dif- As computer technology advances, it becomes more difficult ferent set of skills from keeping them in shelves. There are to fully understand why things have converged to what they are several restoration efforts in museums [11][7]. However, their now. History plays a role in letting us know both success and restoration effort is not sufficient: they are mainly targeted failure stories of the past. Without the knowledge of history, at only a few very early (pre-microprocessor) systems. As a we will not just reinvent the wheel, but also fall in pitfalls that result, many of the semi-modern computers that are kept in we have fallen before. such ”museums” are not in a working condition, and they are There have been efforts of saving the history of computer going to be kept there for visitors to enjoy just the industrial technology by curation of resources about computers. Com- design on the surface of each system. Completely different puter History Museum [6] and Computermuseum Munchen¨ [5] approach, where the computer is manufactured again, using are examples that actually collects computers. They are mostly the blueprints that are left by the designer is practiced by focused on telling visitors the story behind each computer and Swade [14]. This approach is only useful for limited set of how they looks like. Even though there are a few exceptions computers where blueprints are available, and the effort it that are discussed later, most of these computers are dead – takes is too much for applying this method for many systems. they do no longer run software. Keeping historic computers in After all, the scale of restoration and preservation so far has a working condition has fundamentally different importance been insufficient for investigating technical trends and other from leaving them in disrepair [1]. Computers are built to details. There are people showing concerns about current state run software written for them. In future, it will be required of history preservation surrounding computing. to analyze and inspect how software worked in the past for There are emulators and simulators that mimic the behavior both technical and cultural interests. For technical purposes, of old systems [17][8], which can be considered as a way new methods of measuring performance can be applied to old to preserve the behavior of computer systems. While running simulators are inexpensive compared to keeping real hard- ware, the accuracy of both execution result and execution TABLE I time needs verification using working hardware. Writing an REPRESENTATIVE COMPUTER SYSTEMS IN OUR COLLECTION accurate simulator for a system is harder a task than restoring Year System name and preserving old computers, For example, PTLsim is an 1975 MITS Altair 680 x86 64 full-system simulator that is considered accurate, yet 1978 IBM 5110 APL it has 4.30% difference in cycle count from real system[16]. 1979 SORD M223 mark III NEC PC-8001 Our understanding is that simulators are useful for evaluating 1981 IBM PC (5150) variations of parameters for specific design, but it is difficult 1982 Commodore 64 to estimate the performance difference of two very distant 1983 NEC PC-100 Apple IIe architectures with different set of features. Full-system simu- HP-41CX lation involves implementing non-processor parts of a system 1984 NEC PC-9801M in software, which is more error-prone and difficult to verify. 1985 HP 9000/310 NEC PC-9801VM2 Also, undergraduate students may find setting up simulation 1986 IBM PC AT (5170-319) environment harder than using real system. Additionally, there 1987 Commodore AMIGA 500 are copyright issues regarding the use of firmware and other EPSON PC-286L V30 Fujitsu FM77AV20EX software images on such systems. NEC PC-9801VX41 Therefore, restoring and preserving actual computers is the SONY HB-F1XD MSX2 easiest method for inheriting the history of computers in both 1988 SHARP PC-E500 1989 HP 9000/340C+ technical and cultural aspects. There are more benefits to this EPSON PC-386V approach in addition to educational uses. As the requirements IBM PS/2 55SX (8555) surrounding computer systems change, parameters that are Apple Macintosh IIci Sun386i/250 considered important in a system design will change: power SHARP X68000 PRO HD (CZ-662C-BK) consumption is a current example. With working computers TOSHIBA J-3100SS from wide range of configuration and age, the trend of change 1990 Apple Macintosh IIfx 1991 Apple PowerBook 100 in such parameter is accurately observed. With the trend of VAXstation 4000 60 change obtained, the future prediction of that parameter can be SGI Personal IRIS 4D/35 inferred, just like branch prediction algorithms refer to history SGI Indigo R3000 SONY NEWS NWS-1460 table. The future prediction are then used for designing next KUBOTA AVSstation TITAN Vistra 800 generation computer systems. 1992 HP 9000 747i/100 We have collected more than 270 types of computer systems SGI Indigo R4000/100 1993 Apple Macintosh LC 475 that were marketed over years 1979 to 2014. We extensively DEC 3000/300 repaired and restored most of them to working condition. The DEC 3000/800 CPU instruction set architecture family in our collection spans Fujitsu FMTOWNS II MX 1994 HP 9000 712/80 DEC Alpha, ARM, IA-32, Itanium 2, Intel 860, Motorola SparcStation 20 680x0, MIPS, HP PA-RISC, PowerPC, Renesas SH, SPARC, Intel Deskside Xpress LM NEC SX, DEC VAX, x86 64. Older instruction set architec- NeTpower FASTseries SP 1995 Apple Power Macintosh 7100/80 tures such as M6800, 6502, Z80 are also in the collection, IBM RS/6000 43P/120 We have multiple implementations for most of these. See Sun Ultra1 Table I for non-exhaustive/representative list of systems in 1996 HP Vectra VE 5/200 Series 4 SGI O2 R5000/180 our collection. The key aspect that differentiate our collection 1997 Apple PowerMac G3 MT 266 MHz from many other hobbyist-driven projects are that ours include Compaq Deskpro 4000 5200MMX systems that do not have any games for it. Most system DEC AlphaStation 500/400 PalmPilot Professional marketed toward consumers have games that run on them. Bull Estrella Series 300 There are a number of hobbyists who keep these systems 1998 Ultra Enterprise 3000 in working condition to play games on them. Our collection SGI Origin 2000 Apple iMac rev.C Strawberry includes such personal systems too, but there are other classes 2001 NEC SX-6i of computers that are rarely collected. They are workstations 2002 HP rx5670 and servers, which were often used in scientific and industrial Blade 2000 2004 Apple PowerMac G5 1.8 GHz, Dual environment. They often use more costly, large-scale hardware SGI Prism to implement higher performance than personal systems. They 2005 IBM OpenPower 710 (9123-710) often showcases what the technology could do at the time of Sun Fire T2000 2006 HP ProLiant DL360 G5 their design, so they are necessary in our class. 2009 Apple MacPro4,1 The remainder of this paper is organized as follows. Section SHARP PC-Z1 Netwalker II discusses the backgrounding teaching context of this course.