Virtual Memory

Total Page:16

File Type:pdf, Size:1020Kb

Virtual Memory ECE4750/CS4420 Computer Architecture L7: Virtual Memory Edward Suh Computer Systems Laboratory [email protected] Announcements . HW1 due today • Check the clarification and announcement on blackboard • Submit a version early – we will be strict with the deadline . Prelim conflict should be reported by the end of this week ECE4750/CS4420 — Computer Architecture, Fall 2008 2 1 Overview . Previous lecture: Improving cache performance • Reduce hit time • Reduce miss rate • Reduce miss penalty . Today: Virtual memory (VM) • Why do we need it? • What is it? • How does it affect the cache design? . Reading: Appendix C.3, C.4, Chapter 5.4 ECE4750/CS4420 — Computer Architecture, Fall 2008 3 Imagine Computers w/o VM Wireless sensor node (8-bit CPU, 4KB RAM) EDSAC, early 50’s What are the difficulties of programming such machines? ECE4750/CS4420 — Computer Architecture, Fall 2008 4 2 Virtual Memory Concept ECE4750/CS4420 — Computer Architecture, Fall 2008 5 Simple Base and Bound Translation current Load X Virtual segment Address Main Memory Main Program Address Space ECE4750/CS4420 — Computer Architecture, Fall 2008 6 3 Separate Areas for Program and Data Data Bound Bounds Register Violation? data Effective Addr Load X Register segment Data Base Register + Program Program Bound Bounds Address Register Violation? MemoryMain Space Program program Counter segment Program Base Register + What is an advantage of this separation? ECE4750/CS4420 — Computer Architecture, Fall 2008 7 Memory Fragmentation Users 4 & 5 Users 2 & 5 free arrive leave user 1 16K user 1 16K user 1 16K user 2 24K user 2 24K 24K user 4 24K 16K user 4 16K 8K 8K user 3 32K user 3 32K user 3 32K 24K user 5 24K 24K ECE4750/CS4420 — Computer Architecture, Fall 2008 8 4 Paged Memory Systems . Processor generated address can be interpreted as a pair <page number, offset> page number offset . A page table contains the physical address of the base of each page 1 0 0 1 2 3 3 Address Space of User-1 2 Physical Memory ECE4750/CS4420 — Computer Architecture, Fall 2008 9 Private Address Space per User OS User 1 VA1 pages Page Table Physical Memory User 2 VA1 Page Table User 3 VA1 Page Table free ECE4750/CS4420 — Computer Architecture, Fall 2008 10 5 A Problem in Early Sixties . There were many applications whose data could not fit in the main memory, e.g., payroll 40k bits • Paged memory system reduced fragmentation but still required the whole program to be resident in main the main memory 640k bits . Manual overlay: programmer keeps track of addresses in the main memory and initiates an drum I/O transfer when required Central Store Ferranti Mercury 1956 . Problems? ECE4750/CS4420 — Computer Architecture, Fall 2008 11 Demand Paging in Atlas (1962) “A page from secondary storage is brought into the primary storage whenever it is (implicitly) demanded by the processor.” Tom Kilburn Primary 32 Pages 512 words/page Primary memory as a cache for secondary memory Secondary Central (Drum) User sees 32 x 6 x 512 words Memory 32x6 pages of storage ECE4750/CS4420 — Computer Architecture, Fall 2008 12 6 Atlas Demand Paging Scheme . Page Address Register (PAR, 32 entries) . On a memory access, compare the effective (virtual) page address against all 32 PAR entries • Match: normal access • No match: page fault . On a page fault: • If a free page is left – Transfer into a free page is initiated – The Page Address Register (PAR) is updated • If no free page is left, a page is selected to be replaced (based on usage) – The replaced page is written on the drum • to minimize drum latency effect, the first empty page on the drum was selected – The page table is updated to point to the new location of the page on the drum ECE4750/CS4420 — Computer Architecture, Fall 2008 13 Caching vs. Demand Paging secondary memory primary primary CPU cache CPU memory memory Caching Demand paging ECE4750/CS4420 — Computer Architecture, Fall 2008 14 7 Modern Virtual Memory Systems Illusion of a large, private, uniform store OS useri Swapping Store Primary Memory VA mapping PA TLB ECE4750/CS4420 — Computer Architecture, Fall 2008 15 Linear Page Table Data Pages . Page Table Entry (PTE) contains: Page Table PPN • A bit to indicate if a page exists PPN DPN • PPN (physical page number) for PPN a memory-resident page Data word • DPN (disk page number) for a Offset page on the disk • Status bits for protection and DPN PPN usage PPN DPN DPN . OS sets the Page Table Base VPN Register whenever active user DPN process changes PPN PPN PT Base Register VPN Offset Virtual address ECE4750/CS4420 — Computer Architecture, Fall 2008 16 8 Size of Linear Page Table . With 32-bit addresses, 4-KB pages & 4-byte PTEs: . What about 64-bit virtual address space??? . Larger pages? ECE4750/CS4420 — Computer Architecture, Fall 2008 17 Hierarchical Page Table Virtual Address offset Root of the Current Page Table p2 p1 (Processor Level 1 Register) Page Table page in primary memory Level 2 page in secondary memory Page Tables PTE of a nonexistent page Data Pages ECE4750/CS4420 — Computer Architecture, Fall 2008 18 9 Where Should Page Tables Reside? . Space required by the page tables (PT) is proportional to the address space, number of users, ... ECE4750/CS4420 — Computer Architecture, Fall 2008 19 Page Tables in Physical Memory PT User 1 VA1 PT User 2 User 1 VA1 User 2 ECE4750/CS4420 — Computer Architecture, Fall 2008 20 10 Address Translation & Protection Virtual Address Virtual Page No. (VPN) offset Kernel/User Mode Read/Write Protection Address Check Translation Exception? Physical Address Physical Page No. (PPN) offset • Every instruction and data access needs address translation and protection checks A good VM design needs to be fast (~ one cycle) and space efficient ECE4750/CS4420 — Computer Architecture, Fall 2008 21 Translation Lookaside Buffers Address translation is very expensive! ECE4750/CS4420 — Computer Architecture, Fall 2008 22 11 TLB Designs . Typically 32-128 entries, usually fully associative • Each entry maps a large page, hence less spatial locality across pages more likely that two entries conflict • Sometimes larger TLBs (256-512 entries) are 4-8 way set-associative . Random or FIFO replacement policy . No process information in TLB? . TLB Reach: Size of largest virtual address space that can be simultaneously mapped by TLB Example: 64 TLB entries, 4KB pages, one page per entry TLB Reach = __________________________________________? ECE4750/CS4420 — Computer Architecture, Fall 2008 23 Handling a TLB Miss Software (MIPS, Alpha) TLB miss causes an exception and the operating system walks the page tables and reloads TLB. A privileged “untranslated” addressing mode used for walk Hardware (SPARC v8, x86, PowerPC) A memory management unit (MMU) walks the page tables and reloads the TLB If a missing (data or PT) page is encountered during the TLB reloading, MMU gives up and signals a Page-Fault exception for the original instruction ECE4750/CS4420 — Computer Architecture, Fall 2008 24 12 Address Translation: putting it all together Virtual Address TLB Lookup ECE4750/CS4420 — Computer Architecture, Fall 2008 25 Address Translation in CPU pipeline Inst Inst. Data Data Decode PC TLB Cache D E + M TLB Cache W TLB miss? Page Fault? TLB miss? Page Fault? Protection violation? Protection violation? . Software handlers need a restartable exception on page fault or protection violation . How does a TLB affect the performance? ECE4750/CS4420 — Computer Architecture, Fall 2008 26 13 Virtual Address Caches PA VA Physical Primary CPU TLB Cache Memory Alternative: place the cache before the TLB Primary CPU Memory (StrongARM) ECE4750/CS4420 — Computer Architecture, Fall 2008 27 Aliasing in Virtual-Address Caches Page Table Tag Data VA1 Data Pages VA1 PA VA2 VA2 Two virtual pages share one physical page General Solution: Software (i.e., OS) solution for direct-mapped cache VAs of shared pages must agree in cache index bits; this ensures all VAs accessing same PA will conflict in direct- mapped cache (early SPARCs) ECE4750/CS4420 — Computer Architecture, Fall 2008 28 14 Concurrent Access to TLB & Cache VA VPN TLB k Direct-map Cache 2L blocks 2b-byte block PA PPN Page Offset ECE4750/CS4420 — Computer Architecture, Fall 2008 29 Concurrent Access & Large L1 Virtual Index L1 PA cache VA VPN a Page Offset b Direct-map VA PPN Data TLB 1 a VA2 PPNa Data PA PPN Page Offset b = hit? Tag ECE4750/CS4420 — Computer Architecture, Fall 2008 30 15 Virtual-Index Physical-Tag Caches: Associative Organization Virtual 2a VA VPN a L = k-b b Index Direct-map Direct-map k TLB 2L blocks 2L blocks Phy. PA PPN Page Offset Tag = = Tag hit? 2a Data ECE4750/CS4420 — Computer Architecture, Fall 2008 31 A Solution via Second Level Cache L1 Instruction Memory Cache Unified L2 Memory CPU Cache Memory L1 Data RF Cache Memory Usually a common L2 cache backs up both Instruction and Data L1 caches L2 is “inclusive” of both Instruction and Data caches ECE4750/CS4420 — Computer Architecture, Fall 2008 32 16 Anti-Aliasing Using L2: MIPS R10000 Virtual Index L1 cache: VA VPN a Page Offset b Physical tag TLB PA PPN Page Offset b PPN = hit? Tag L2 cache ECE4750/CS4420 — Computer Architecture, Fall 2008 33 Virtually-Addressed L1: Anti-Aliasing using L2 Virtual VA VPN Page Offset b Index & Tag VA1 Data TLB VA2 Data PA PPN Page Offset b L1 VA Cache “Virtual Tag Physical Tag” Index & Tag PA VA1 Data Physically-addressed L2 can also be used to avoid aliases in virtually- L2 PA Cache addressed L1 L2 “contains” L1 ECE4750/CS4420 — Computer Architecture, Fall 2008 34 17 Virtual Memory Use Today - 1 . Desktops/servers have full demand-paged virtual memory • Portability between machines with different memory sizes • Protection between multiple users or multiple tasks • Share small physical memory among active tasks • Simplifies implementation of some OS features .
Recommended publications
  • Technical Details of the Elliott 152 and 153
    Appendix 1 Technical Details of the Elliott 152 and 153 Introduction The Elliott 152 computer was part of the Admiralty’s MRS5 (medium range system 5) naval gunnery project, described in Chap. 2. The Elliott 153 computer, also known as the D/F (direction-finding) computer, was built for GCHQ and the Admiralty as described in Chap. 3. The information in this appendix is intended to supplement the overall descriptions of the machines as given in Chaps. 2 and 3. A1.1 The Elliott 152 Work on the MRS5 contract at Borehamwood began in October 1946 and was essen- tially finished in 1950. Novel target-tracking radar was at the heart of the project, the radar being synchronized to the computer’s clock. In his enthusiasm for perfecting the radar technology, John Coales seems to have spent little time on what we would now call an overall systems design. When Harry Carpenter joined the staff of the Computing Division at Borehamwood on 1 January 1949, he recalls that nobody had yet defined the way in which the control program, running on the 152 computer, would interface with guns and radar. Furthermore, nobody yet appeared to be working on the computational algorithms necessary for three-dimensional trajectory predic- tion. As for the guns that the MRS5 system was intended to control, not even the basic ballistics parameters seemed to be known with any accuracy at Borehamwood [1, 2]. A1.1.1 Communication and Data-Rate The physical separation, between radar in the Borehamwood car park and digital computer in the laboratory, necessitated an interconnecting cable of about 150 m in length.
    [Show full text]
  • Information Technology 3 and 4/1998. Emerging
    OCCASION This publication has been made available to the public on the occasion of the 50th anniversary of the United Nations Industrial Development Organisation. DISCLAIMER This document has been produced without formal United Nations editing. The designations employed and the presentation of the material in this document do not imply the expression of any opinion whatsoever on the part of the Secretariat of the United Nations Industrial Development Organization (UNIDO) concerning the legal status of any country, territory, city or area or of its authorities, or concerning the delimitation of its frontiers or boundaries, or its economic system or degree of development. Designations such as “developed”, “industrialized” and “developing” are intended for statistical convenience and do not necessarily express a judgment about the stage reached by a particular country or area in the development process. Mention of firm names or commercial products does not constitute an endorsement by UNIDO. FAIR USE POLICY Any part of this publication may be quoted and referenced for educational and research purposes without additional permission from UNIDO. However, those who make use of quoting and referencing this publication are requested to follow the Fair Use Policy of giving due credit to UNIDO. CONTACT Please contact [email protected] for further information concerning UNIDO publications. For more information about UNIDO, please visit us at www.unido.org UNITED NATIONS INDUSTRIAL DEVELOPMENT ORGANIZATION Vienna International Centre, P.O. Box 300, 1400 Vienna, Austria Tel: (+43-1) 26026-0 · www.unido.org · [email protected] EMERGING TECHNOLOGY SERIES 3 and 4/1998 Information Technology UNITED NATIONS INDUSTRIAL DEVELOPMENT ORGANIZATION Vienna, 2000 EMERGING TO OUR READERS TECHNOLOGY SERIES Of special interest in this issue of Emerging Technology Series: Information T~chn~~ogy is the focus on a meeting that took INFORMATION place from 2n to 4 November 1998, in Bangalore, India.
    [Show full text]
  • Alan Turingturing –– Computercomputer Designerdesigner
    AlanAlan TuringTuring –– ComputerComputer DesignerDesigner Brian E. Carpenter with input from Robert W. Doran The University of Auckland May 2012 Turing, the theoretician ● Turing is widely regarded as a pure mathematician. After all, he was a B-star Wrangler (in the same year as Maurice Wilkes) ● “It is possible to invent a single machine which can be used to compute any computable sequence. If this machine U is supplied with the tape on the beginning of which is written the string of quintuples separated by semicolons of some computing machine M, then U will compute the same sequence as M.” (1937) ● So how was he able to write Proposals for development in the Mathematics Division of an Automatic Computing Engine (ACE) by the end of 1945? 2 Let’s read that carefully ● “It is possible to inventinvent a single machinemachine which can be used to compute any computable sequence. If this machinemachine U is supplied with the tapetape on the beginning of which is writtenwritten the string of quintuples separated by semicolons of some computing machinemachine M, then U will compute the same sequence as M.” ● The founding statement of computability theory was written in entirely physical terms. 3 What would it take? ● A tape on which you can write, read and erase symbols. ● Poulsen demonstrated magnetic wire recording in 1898. ● A way of storing symbols and performing simple logic. ● Eccles & Jordan patented the multivibrator trigger circuit (flip- flop) in 1919. ● Rossi invented the coincidence circuit (AND gate) in 1930. ● Building U in 1937 would have been only slightly more bizarre than building a differential analyser with Meccano.
    [Show full text]
  • NEWSLETTER Cpdtrf;Lq'tp.Nn •
    Th~?p~,~eps~9ti(t~J.s··r'~ws{~tt~I"" DIGITAL COMPUTER j.~~p'~r()xJ ?~i~\ .me? lumfOr ~he !.."te r-?h~9ge among t n'ter~~te~ p~r~On~\?jlnf9rtl).~t 1?n<?o" ... <;(Enl~g ,·rT?~9~•.· •.···· ••• ~. ~v;lop1l1en~~ In.t,v.~t.I.~iJ$>·· .. ~... 1,9 f~·.1l.·I·i· ••. ?9I11p.tJt~.r pr;.;J;ct$~pi.~lr.I.~.lIt.ton.<.i~ ..... 11 T'" ItT<i'~O'9?y~rvm~~t~gEl~<:iesi NEWSLETTER cPDtrf;lQ'tp.nn •. "'n(.t,.~ontr I bu't;Qrs. OFFICE OF NAVAL RESEARCH MATHEMATICAL SCIENCES DIVISION Vol. 11, No.3 Gordon D. Goldstein, Editor July 1959 Jean S. Campbell, Asst. Editor TABLE OF CONTENTS Page No. COMPUTERS AND DATA PROCESSING, NORTH AMERICA 1. Ferranti Electric, Inc., Sirius, Hempstead, L.L, New York 1 2. Librascope, Inc., Libratrol- 500, Glendale, California 1 3. Monroe Calculating Machine Company, Distributape, Orange, New Jersey 2 COMPUTING CENTERS 1. Air Force Cambridge Research Center, Computer and Mathematical Sciences Laboratory, L.G. Hanscom Field, Bedford, Massachusetts 2 2. Georgia Institute of Technology, Rich Electronic Computer Center, 2 Atlanta, Georgia 2 3. Holloman Air Force Base, New Mexico, Data Assimilator 3 4. National Bureau of Standards, Computation Laboratory, Washington, D.C. 4 5. New York University,AEC Computing and Applied Mathematics Center, NewYork,N.Y. 4 6. RCA Service Company, FLAC I and IBM 709, Patrick Air Force Base, Florida 5 7. U.S. Naval Missile Center, 709 andRAYDAC Systems, Point Mugu, California 5 8. U.S. NavalProving Ground, Naval Ordnance Computation Center, Dahlgren, Virginia 6 9.
    [Show full text]
  • Clementina - (1961-1966) a Personal Experience
    View metadata, citation and similar papers at core.ac.uk brought to you by CORE provided by Servicio de Difusión de la Creación Intelectual The Beginning of Computer Science in Argentina – Clementina - (1961-1966) A Personal Experience Cecilia Berdichevsky 1 SADIO-Argentine Computing Society-Uruguay 252-Buenos Aires-Argentina http://www.sadio.org.ar, <[email protected]> 2 ICDL Argentina (International Computer Driving Licence)-Rincon 326-Buenos Aires-Argentina http://www.icdl.org.ar, <[email protected]> I dedicate this work to the memory of Dr. Manuel Sadosky. Abstract. 1957 marked the beginning of modern education in computing in Argentina. I was lucky enough to live this part of the history. After issuing an international bid that year, all members of a special commission from the University of Buenos Aires selected the Ferranti Mercury computer to be purchased for the University. Once installed in 1961, an Institute of Calculus1 was created with the aim of improving the use and professional and technical applications of the machine. Almost at the same time, a new course of study was organized, the Scientific Computist2. Those three events, promoted by our teacher and mentor Manuel Sadosky, set the start point of education assisted by computers in our country. The work at the Institute covered three fields: problem solving, research and teaching. Several Working Teams were organized looking to solve “real problems” in different disciplines: Mathematical Economics, Operations Research, Statistics, Linguistics, Applied Mechanics, Numerical Analysis, Electronic Engineering and Programming Systems. The architecture, structure, operation, languages and other characteristics of the machine, quite advanced for the time, determined the specific area of each of the working teams.
    [Show full text]
  • Issue 3 January 2005 Ferranti Mercury X1 Index B3 Sales of Ferranti
    Issue 3 January 2005 Ferranti Mercury X1 Index B3 Sales of Ferranti Mercury Computers etc D1 Design history and designers References Delivery etc Issue 3 January 2005 B3 Sales of Ferranti Mercury computers. Information mostly taken from: The Ferranti Computer Department – an informal history. B B Swann, 1975. Typescript for private circulation only. See the National Archive for the History of Computing, catalogue number NAHC/FER/C30. No. customer date del’d scientific applic’s. Commercial applic’s 1 Norwegian Defence Research Aug. ’57 Atomic energy work - Est., Kjeller. 2 Manchester University Oct. ’57 Research & service work - Transferred to University of Sheffield 1963 3 French Atomic Energy Nov. ’57 Atomic energy work - Authority, Saclay. 4 United Kingdom Atomic Feb. ’58 Atomic energy work - Energy Authority, Harwell. 5 RAF Meteorological Office, Sept. ’58 Weather forecasting - Dunstable. 6 Council for European Nuclear Jun. ’58 Atomic energy work - Research, Geneva. 7 London University. Oct. ’58 Research & service work - 8 United Kingdom Atomic Oct. ’58 Atomic energy work Energy Authority, Risley. 9 Oxford University. Nov. ’58 Research & service work - Forestry (large Dbs) Replaced by KDF9 10 Shell International Petroleum Jan. ’59 Linear programming. Sales analysis Co. Ltd., London. 11 Royal Aircraft Establishment, Mar. ’59 Aircraft calculations - Farnborough. 12 ICI Ltd., Central Instruments Jun. ’59 Chemical process analysis - Division, Reading. 13 Swedish Atomic Energy Jul. ’59 Atomic energy work - Authority, Stockholm. 14 Belgian Atomic Energy Sept. ’59 Atomic energy work - Authority, Mol. 15 The General Electric Co. Ltd., Dec. ’59 Atomic energy work - Erith. and machine design. 16 Metropolitan-Vickers Electrical Oct. ’60 Transformer design - Co.
    [Show full text]
  • Systems Architecture of the Ferranti Mark I and Mark I* Computers
    Version 1, August 2011. CCS-F1X2 Systems Architecture of the Ferranti Mark I and Mark I* computers. Contents. 1. Historical development. 2. The early Manchester University computers, 1948 – 1949. 3. Overview of the Ferranti Mark I. 4. Summary of the main differences between the Ferranti Mark I and the Mark I*. 1. Historical development. These Ferranti machines were the fully-engineered production versions of prototype computers designed and built at the University of Manchester. The first of the prototypes was called the Small Scale Experimental Machine (SSEM), also known as the Baby. The SSEM first ran a program on the morning of Monday 21st June 1948, thereby being the world‟s first electronic stored-program computer to become operational. The SSEM was a minimal computer, primarily intended to test a novel storage system that had been developed by F C Williams and T Kilburn, first at the Telecommunications Research Establishment and then, from January 1947 at the Electro-technical Department of the University of Manchester where Professor Freddie Williams moved to become head of Department. Tom Kilburn was seconded to Manchester, to help with the storage research. The novel storage system, later to be called the Williams-Kilburn tube, depended upon regenerating a pattern of electrostatically- charged spots on the inner surface of a cathode ray tube. The system is thus sometimes called CRT storage, or electrostatic storage. Each charged spot represented a binary one or zero. Two varieties of spots were tried: dot-dash, and focus-defocus, the latter being used on the Ferranti computers. The system was patented and eventually used under licence on several early computers, including the IBM 701 and 702.
    [Show full text]
  • Version 3 January 2005 Ferranti Mercury. X2. Systems Architecture
    Version 3 January 2005 Ferranti Mercury. X2. Systems Architecture. Note:- Ferranti terminology is used with modern equivalents in brackets when first used. Index B1 Computer and user features D4 Hardware and technical details References Version 3 January 2005 B1 Computer and User features. According to the manufacturer’s literature1 the Ferranti Mercury Computer was a high speed machine using hardware floating point arithmetic and with exceptionally large storage capacity. The main applications areas were foreseen as in science and technology, with nine areas listed as:- volume computation matrix algebra X-ray analysis Eigenvalue problems design optimisation linear programming stress analysis relaxation techniques partial differential equations. “When an IBM representative, Samuels, visited Dover Street and saw the electronic floating point in operation he was very impressed. IBM stopped production of their current machine soon after and came out later with a floating point version.” (DBG Edwards, private communication) Mercury was unusual in that it was designed for floating point use exclusively. The integer arithmetic was limited to 10 digits (bits) and thus is difficult to compare with other machines on the basis of fixed point operations. The multiplier was a parallel/serial design, operating on 10 digits in parallel with three serial sections using what later became known as carry save adders. Two multiplier bits where decoded per cycle (Mark I performed 20 digits in parallel in two sections, ‘decoding’ one digit at a time and also using the ‘carry save’ technique). D4 Hardware Technical Details. The CPU was serial in operation, with a clock speed of 1 Mc/s (Mhz).
    [Show full text]
  • Early Nordic Compilers and Autocodes Peter Sestoft
    Early Nordic Compilers and Autocodes Peter Sestoft To cite this version: Peter Sestoft. Early Nordic Compilers and Autocodes. 4th History of Nordic Computing (HiNC4), Aug 2014, Copenhagen, Denmark. pp.350-366, 10.1007/978-3-319-17145-6_36. hal-01301428 HAL Id: hal-01301428 https://hal.inria.fr/hal-01301428 Submitted on 12 Apr 2016 HAL is a multi-disciplinary open access L’archive ouverte pluridisciplinaire HAL, est archive for the deposit and dissemination of sci- destinée au dépôt et à la diffusion de documents entific research documents, whether they are pub- scientifiques de niveau recherche, publiés ou non, lished or not. The documents may come from émanant des établissements d’enseignement et de teaching and research institutions in France or recherche français ou étrangers, des laboratoires abroad, or from public or private research centers. publics ou privés. Distributed under a Creative Commons Attribution| 4.0 International License Early Nordic Compilers and Autocodes Version 2.1.0 of 2014-11-17 Peter Sestoft IT University of Copenhagen Rued Langgaards Vej 7, DK-2300 Copenhagen S, Denmark [email protected] Abstract. The early development of compilers for high-level program- ming languages, and of so-called autocoding systems, is well documented at the international level but not as regards the Nordic countries. The goal of this paper is to provide a survey of compiler and autocode development in the Nordic countries in the early years, roughly 1953 to 1965, and to relate it to international developments. We also touch on some of the historical societal context. 1 Introduction A compiler translates a high-level, programmer-friendly programming language into the machine code that computer hardware can execute.
    [Show full text]
  • In Focus: Computing
    CERNCOURIER IN FOCUS COMPUTING A retrospective of 60 years’ coverage of computing technology cerncourier.com 2019 COMPUTERS, WHY? 1972: CERN’s Lew Kowarski on how computers worked and why they were needed COMPUTING IN HIGH ENERGY PHYSICS 1989: CHEP conference considered the data challenges of the LEP era WEAVING A BETTER TOMORROW 1999: a snapshot of the web as it was beginning to take off THE CERN OPENLAB 2003: Grid computing was at the heart of CERN’s new industry partnership CCSupp_4_Computing_Cover_v3.indd 1 20/11/2019 13:54 CERNCOURIER WWW. I N F OCUS C OMPUT I N G CERNCOURIER.COM IN THIS ISSUE CERN COURIER IN FOCUS COMPUTING Best Cyclotron Systems provides 15/20/25/30/35/70 MeV Proton Cyclotrons as well as 35 & 70 MeV Multi-Particle (Alpha, Deuteron & Proton) Cyclotrons Motorola CERN Currents from 100uA to 1000uA (or higher) depending on the FROM THE EDITOR particle beam are available on all BCS cyclotrons Welcome to this retrospective Best 20u to 25 and 30u to 35 are fully upgradeable on site supplement devoted to Cyclotron Energy (MeV) Isotopes Produced computing – the fourth in 18F, 99mTc, 11C, 13N, 15O, a series celebrating CERN Best 15 15 64Cu, 67Ga, 124I, 103Pd Courier’s 60th anniversary. Big impact An early Data shift CERN’s Computer Centre in 1998, with banks of Best 15 + 123I, The Courier grew up during the microprocessor chip. 19 computing arrays for the major experiments. 25 Best 20u/25 20, 25–15 111 68 68 In, Ge/ Ga computing revolution. CERN’s first Best 30u Best 15 + 123I, SPECIAL FOREWORD 5 30 computer, the Ferranti Mercury, which (Upgradeable) 111In, 68Ge/68Ga CERN computing guru Graeme Stewart describes the immense task of had less computational ability than an taming future data volumes in high-energy physics.
    [Show full text]
  • The Atlas Story
    The Atlas story. Simon Lavington. Second edition, 6 th December 2012. Contents. Introduction page 1 Birth pains 1 Atlas at Manchester 1 Ferranti and the market place 5 Timeline 6 Technical innovations: facts and figures 6 The London Atlas 8 The Chilton Atlas 9 The Atlas 2 developments 11 Titan at Cambridge 13 Atlas 2 at AWRE Aldermaston 13 Atlas 2 at the CAD centre 13 More technical details of Atlas installations 15 Physical layout 17 Organisation of the Atlas storage hierarchy 17 Format of an Atlas instruction. 19 Guide to the Atlas Supervisor 20 People and places 21 More information 22 Originally produced for the Atlas Symposium held on 5 th December 2012 in the School of Computer Science, Kilburn Building, University of Manchester. It is a pleasure to acknowledge the help given by many former Atlas pioneers in the writing of this brochure. Comments on the text are welcomed and should be sent to Simon Lavington : [email protected] Picture credits to copyright holders. Computer Laboratory, University of Cambridge: Figure 9 Graham Penning: Figure 10 Simon Lavington: Figure 3 Iain MacCallum: Front cover Museum of Science & Industry, Manchester Figures 1, 2, 4, 5, 6 STFC Rutherford Appleton Laboratory: Figures 7a, 7b, 8 (On 5 th December the original printed version of this document had a cover design based on photographs of the Atlas at Manchester University in 1963). i By the end of 1955 there were less than 16 production digital computers in use in the UK. They were of five British designs, from five different companies, and were single-user systems with practically no systems software.
    [Show full text]
  • Whatever Happened to the Other Turing Machine?
    WhateverWhatever HappenedHappened toto thethe OtherOther TuringTuring Machine?Machine? Brian E. Carpenter Robert W. Doran The University of Auckland ACE2012 June 2012 WhateverWhatever HappenedHappened toto thethe OtherOther TuringTuring Machine?Machine? Brian E. Carpenter Robert W. Doran The University of Auckland ACE2012 June 2012 How we started ● In 1975, we (BEC and RWD) were lowly academics in the CS Department at Massey University, Palmerston North, New Zealand. ● There wasn’t much to do in Palmerston North at the weekend, and more seriously, research funding for CS was hard to get. ● We were both interested in computer architecture and its history. ● In 1975, computer history was largely American – the computer was the von Neumann machine and everybody knew about ENIAC and EDVAC. ● Early British computers were viewed as a footnote. 3 Inputs ● Turing was known as a theoretician and for his work on AI. ● But the first paper on ACE did say “based on an earlier design by A M Turing” (Wilkinson 1954). ● A trade press article by Rex Malik described Turing as “a four in the morning system kicker” - that didn’t sound like a theoretician. ● There were rumours of secret stuff happening during World War II, and there were Brian Randell’s 1972 paper and 1973 book. ● The Ultra secret was blown in 1974. ● In 1972, NPL issued a reprint of Turing’s 1945/46 ACE report; we got hold of it in 1975. 4 Processing the input ● Reading, in 1975, what Turing wrote in 1945 was an astounding experience. ● Of course, he’d read the EDVAC report by von Neumann, but the ACE proposal went much further.
    [Show full text]