Resource Management in a Multicore Operating System

Total Page:16

File Type:pdf, Size:1020Kb

Resource Management in a Multicore Operating System Research Collection Doctoral Thesis Resource management in a multicore operating system Author(s): Peter, Simon Publication Date: 2012 Permanent Link: https://doi.org/10.3929/ethz-a-007579246 Rights / License: In Copyright - Non-Commercial Use Permitted This page was generated automatically upon download from the ETH Zurich Research Collection. For more information please consult the Terms of use. ETH Library DISS.ETH NO. 20664 Resource Management in a Multicore Operating System A dissertation submitted to ETH ZURICH for the degree of Doctor of Sciences presented by SIMON PETER Diplom-Informatiker, Carl-von-Ossietzky Universität Oldenburg born October 13, 1981 citizen of Federal Republic of Germany accepted on the recommendation of Prof. Timothy Roscoe, examiner Prof. Steven Hand, co-examiner Prof. Gustavo Alonso, co-examiner Prof. Markus Püschel, co-examiner 2012 Abstract Trends in hardware design have led to processors with many cores on a single die, which present the opportunity for commodity com- puting to become increasingly parallel. These multicore architectures bring with them complex memory and cache hierarchies and processor interconnects. While the execution of batch parallel applications has been researched in the context of high-performance computing (HPC), commodity hardware is evolving at a faster pace than specialized su- percomputers and applications are interactive, requiring fast system response times and the ability to react to ad-hoc workload changes. Leveraging and managing the existing potential for parallelization thus presents a difficult challenge for the development of both commodity operating systems and application programs, which have to keep up with hardware developments and present nimble solutions. This dissertation presents the design and implementation of oper- ating system mechanisms to support the execution of a dynamic mix of interactive and parallel applications on commodity multicore com- puters. The main goals are to provide a system that is scalable with an increasing number of processor cores, is agile with a changing hard- ware architecture, and provides interactive response time to the user when running a mix of parallel, interactive applications. I describe a new operating system architecture, the Multikernel, and report about a concrete implementation of it, called Barrelfish. The Multikernel takes a novel view on the underlying hardware ar- chitecture: as a network of autonomous, heterogeneous processors. The Barrelfish operating system is structured as a distributed system of servers to facilitate easy restructuring of OS services according to the hardware architecture. Applying techniques from the field of dis- tributed systems, Barrelfish demonstrates that the operating system can scale and perform equally well as manually tuned operating systems, like Linux, and in some cases better, while remaining agile with a range of different multicore systems. I present the design and implementation of the inter-process com- munication system and process scheduler within Barrelfish and show how it can be made scalable and agile by applying the Multikernel de- sign principles. Finally, I apply the gang scheduling technique from HPC and show how it can be made nimble to support interactive re- sponse times via a novel technique called phase-locked scheduling to support scheduling a dynamic mix of parallel, interactive applications. Zusammenfassung Hardwaredesign Trends haben zu Prozessoren mit vielen Kernen auf einem einzelnen Chip geführt, welches der elektronischen Daten- verarbeitung ermöglicht, paralleler zu werden. Diese multicore Ar- chitekturen ziehen komplexe Speicher und Cache Hierarchien, sowie Prozessorverbindungen mit sich. Während die Ausführung von paral- lelen Stapelverarbeitungsanwendungen im Kontext von Hochleistungs- rechnern gut erforscht ist, entwickelt sich Massenhardware schneller als spezialisierte Supercomputer und die Anwendungen sind interak- tiv, was schnelle Systemantwortzeiten und die Fähigkeit, schnell auf ad-hoc Änderungen der Arbeitslast zu reagieren, voraussetzt. Die Aus- nutzung und Verwaltung des existierenden Parallelisierungspotenzials stellt daher ein schwieriges Problem für die Entwicklung sowohl von Massenbetriebssystemen, als auch Anwendungsprogrammen dar, die mit der Hardwareentwicklung mithalten und flinke Lösungen anbieten müssen. Diese Dissertation stellt das Design und die Implementierung von Betriebssystemmechanismen vor, welche die Ausführung einer dy- namischen Mischung von interaktiven und parallelen Anwendungen auf multicore Massencomputern unterstützt. Die Hauptziele sind ein System bereit zu stellen, welches mit einer steigenden Anzahl an Pro- zessorkernen skaliert, Agilität gegenüber einer sich verändernden Hard- warearchitektur bietet und dem Anwender interaktive Antwortzeiten bereitstellt, während es eine Mischung aus parallelen und interaktiven Anwendungen ausführt. Ich beschreibe eine neue Betriebssystemarchitektur, den Multik- ernel, und berichte über eine konkrete Implementierung derselben, genannt Barrelfish. Der Multikernel nimmt eine neue Sicht auf die darunterliegende Hardwarearchitektur: Als Netzwerk autonomer, het- erogener Prozessoren. Das Barrelfish Betriebssystem ist strukturiert als verteiltes System von Servern, welches ein leichtes Restrukturi- eren von Betriebssystemservices anhand der Hardwarearchitektur er- möglicht. Dabei wendet Barrelfish Techniken aus dem Bereich der verteilten Systeme an und demonstriert, daß das Betriebssytem ebenso gut skalieren und funktionieren kann, wie manuell auf die Hardware abgestimmte Betriebssysteme, wie zum Beispiel Linux, und in eini- gen Fällen sogar besser, während es agil gegenüeber einer Anzahl ver- schiedener Multicoresysteme bleibt. Ich stelle das Design und die Implementierung des Interprozesskom- munikationssystems und des Prozess-Schedulers vor und zeige wie beide Systeme skalierbar und agil gemacht werden können, indem die Designprinzipien des Multikernels angewandt werden. Schließlich wende ich die Gang-Scheduling Technik aus dem Feld des Hochleis- tungsrechnens an und zeige, wie es durch eine neue Technik, genannt phase-locked scheduling, flink gemacht werden kann, so dass es inter- aktive Antwortzeiten beim Scheduling einer dynamischen Mischung aus parallelen und interaktiven Anwendungen unterstützt. Acknowledgements I would like to thank my supervisor Timothy Roscoe for all his help, pa- tience, support and advice, and the entire Barrelfish team, at ETH and Mi- crosoft, for all the insightful discussions, around the whiteboard, in corri- dors, and elsewhere, in particular Paul Barham, Andrew Baumann, Pierre- Evariste Dagand, Jana Giceva, Tim Harris, Rebecca Isaacs, Ross McIlroy, Adrian Schüpbach, and Akhilesh Singhania. Also, I am heavily indebted to the authors of the work that this dissertation builds upon, namely the Barrelfish team, interns, students, and collaborators. Without them, this dissertation would not exist. In addition, I would like to acknowledge my examination committee for the detailed feedback on numerous drafts of this document. I would like to thank the researchers, staff, and interns at the Microsoft Research labs in Cambridge and Silicon Valley for the incredibly fun and rewarding time. Finally, I would like to thank my parents for their patience and support through all the years, as well as Akhilesh Singhania, for being a very good and supporting friend in good and in tough times. Thanks for making all of this so much more worthwhile! Zurich, August 2012. Contents 1 Introduction 1 1.1 Motivation . .2 1.2 Contribution . .5 1.3 Dissertation Structure . .6 1.4 Related Publications . .7 2 The Multikernel 9 2.1 Motivation . 10 2.1.1 Hardware Diversity . 11 2.1.2 Interconnect Latency Matters . 12 2.1.3 Remote Procedure Call vs. Shared Memory . 15 2.1.4 Cache Coherence Protocol Scalability . 18 2.1.5 Discussion . 19 2.2 Background . 20 2.3 Evaluation Platforms . 22 2.3.1 x86-based Systems . 22 2.3.2 Intel Single-Chip Cloud Computer . 23 2.4 The Multikernel Architecture . 24 2.4.1 Explicit Inter-core Communication . 26 2.4.2 Hardware-neutral OS Structure . 28 2.4.3 State Replication . 29 2.5 System Structure . 31 2.5.1 CPU Drivers . 33 2.5.2 Process Structure . 35 2.5.3 Protection Model . 41 2.5.4 Monitors . 43 2.5.5 Threads and Shared Address Spaces . 44 2.5.6 Knowledge and Policy Engine . 45 2.6 Inter-domain Communication . 46 2.6.1 Naming and Binding . 47 2.6.2 Same-core Communication . 48 2.6.3 Inter-core Communication . 49 2.6.4 Application-level Messaging Performance . 57 2.6.5 Summary . 59 2.7 Related Work . 60 2.8 Summary . 62 3 Scheduling in a Multikernel 64 3.1 Motivation . 65 3.1.1 System Diversity . 67 3.1.2 Multiple Applications . 68 3.1.3 Interactive Workloads . 71 3.2 Background . 72 3.2.1 Parallel Scheduling in High-Performance Computing 72 3.2.2 Scheduling with Information from Applications . 75 3.2.3 Commodity Multicore OS Scheduling . 76 3.2.4 Studies in Commodity Multicore Scheduling . 77 3.2.5 Blocking Cost Evaluation . 78 3.3 Example Workloads . 79 3.3.1 Virtual Machine Monitors . 80 3.3.2 Parallel Garbage Collection . 81 3.3.3 Potential Future Workloads . 81 3.4 Design Principles . 85 3.4.1 Time-multiplexing Cores is Still Needed . 85 3.4.2 Schedule at Multiple Timescales . 87 3.4.3 Reason Online About the Hardware . 87 3.4.4 Reason Online About Each Application . 88 3.4.5 Applications and OS Must Communicate . 89 3.4.6 Summary . 90 3.5 Scheduler Concepts . 90 3.5.1 Dispatcher Groups . 91 3.5.2 Scheduler Activations . 92 3.5.3 Deterministic
Recommended publications
  • ANSA: an Engineer’S Introduction
    An Engineer’s Introduction to the Architecture ANSA: An Engineer’s Introduction to the Architecture Release TR.03.02 November 1989 This document provides an introduction to ANSA. It is specifically oriented towards those with a software and systems background. It describes what is available and how it is used; it does not describe how the architecture is applied to specific application domains. Architecture Projects Management Limited Architecture Projects Management Limited and their sponsors take no responsibility for the consequences of errors or omissions in this manual, nor for any damages resultmg from the applicatron of the ideas expressed herein. Architecture Projects Management Limited Poseidon House Castle Park CAMBRIDGE CB3 ORD United Kingdom TELEPHONE UK Cambridge (0223) 323010 INTERNATIONAL +44 223 323010 FAX + 44 223 359779 UUCP . ..ukc!acorn!ansa!apm ARPA Internet [email protected] 8 1989 Architecture Projects Management Limited Permission to copy without fee all or part of this material is granted provided that notice IS given that copying is by permission of Architecture Projects Management Limited. To copy otherwise or to republish requiresspecific permlssion. Advanced Networked Systems Architecture CONTENTS Page 1 Background ........................................... 1 1.1 Objectives ......................................... 1 1.2 Activities ............................................ 1 1.3 Standardization ...................................... 2 2 Executive summary ................................... 3 2.1 The problem
    [Show full text]
  • Exception Handling with Fail-Safe Semantics Phd Thesis
    Exception Handling With Fail-Safe Semantics PhD Thesis Steven J. Drew B.App.Sci. (Computing) Hons. Date: 29th. November, 1996. Principal Supervisor: Prof.K.J.Gough School Of Computing Science Faculty Of Information Technology Queensland University Of Technology DEDICATION To my father for all his love and support, To my mother, I'm glad you saw the start of this, I'll tell you how it ended one day. QUT QUEENSLAND UNIVERSITY OF TECHNOLOGY DOCTOR OF PHILOSOPHY THESIS EXAMINATION CANDIDATE NAME Steven John Drew CENTRE/RESEARCH CONCENTRATION Programming Languages and Systems PRINCIPAL SUPERVISOR Professor John Gough ASSOCIATE SUPERVISOR(S) Dr John Hynd THESIS TITLE Exception Handling with Fail-Safe Semantics Under the requirements of PhD regulation 9.2, the above candidate was examined orally by the Faculty. The members of the panel set up for this examination recommend that the thesis be accepted by the University and forwarded to the appointed Committee for examination. Prof K J Gough Name ....................................................................... Panel Chairperson (Principal Supervisor) Name ...... ~?.';'.<?~.-:~.:.<?.~ .. ~.. -~-~XP.~:.E?~~ ......................... Panel Member Assoc Prof G Mohay Name ....................................................................... Panel Member Under the requirements of PhD regulation 9.15, it is hereby certified that the thesis of the above-named candidate has been examined. I recommend on behalf of the Thesis Examination Committee that the thesis be accepted in fulfilment of the conditions for the award of the degree of Doctor of Philosophy. Name .. :'9r.... Y~~~.. .zy~ • Date .. .<f. ..P~:'?.~ .. Chair of Examiners (Thesis Examination Comrilittee) Keywords Exception handling, programming languages, fail-safety, fail-safe semantics, software fault tolerance, program complexity, program comprehensibility, Modula-2. Abstract Computer architectures are becoming increasingly complex and are being used to solve problems of similarly increasing complexity.
    [Show full text]
  • Dissertation Acceptance
    SEVER INSTITUTE OF TECHNOLOGY DOCTOR OF SCIENCE DEGREE DISSERTATION ACCEPTANCE (To be the first page of each copy of the dissertation) DATE: July 24, 1998 STUDENT’S NAME: Charles D. Cranor This student’s dissertation, entitled Design and Implementation of the UVM Virtual Memory System has been examined by the undersigned committee of five faculty members and has received full approval for acceptance in partial fulfillment of the requirements for the degree Doctor of Science. APPROVAL: Chairman Short Title: Design and Implementation of UVM Cranor, D.Sc. 1998 WASHINGTON UNIVERSITY SEVER INSTITUTE OF TECHNOLOGY DEPARTMENT OF COMPUTER SCIENCE DESIGN AND IMPLEMENTATION OF THE UVM VIRTUAL MEMORY SYSTEM by Charles D. Cranor, M.S. Prepared under the direction of Professor Gurudatta M. Parulkar A dissertation presented to the Sever Institute of Washington University in partial fulfillment of the requirements for the degree of Doctor of Science August, 1998 Saint Louis, Missouri WASHINGTON UNIVERSITY SEVER INSTITUTE OF TECHNOLOGY DEPARTMENT OF COMPUTER SCIENCE ABSTRACT DESIGN AND IMPLEMENTATION OF THE UVM VIRTUAL MEMORY SYSTEM by Charles D. Cranor ADVISOR: Professor Gurudatta M. Parulkar August, 1998 Saint Louis, Missouri We introduce UVM, a new virtual memory subsystem for 4.4BSD that makes better use of existing hardware memory management features to reduce overhead and improve performance. Our novel approach focuses on allowing processes to pass memory to and from other processes and the kernel, and to share memory. This approach reduces or elim- inates the need to copy data thus reducing the time spent within the kernel and freeing up cycles for application processing. Unlike the approaches that focus exclusively on the networking and inter-process communications (IPC) subsystems, our approach provides a general framework for solutions that can improve efficiency of the entire I/O subsystem.
    [Show full text]
  • Appendix M Historical Perspectives and References
    M.1 Introduction M-2 M.2 The Early Development of Computers (Chapter 1) M-2 M.3 The Development of Memory Hierarchy and Protection (Chapter 2 and Appendix B) M-9 M.4 The Evolution of Instruction Sets (Appendices A, J, and K) M-17 M.5 The Development of Pipelining and Instruction-Level Parallelism (Chapter 3 and Appendices C and H) M-27 M.6 The Development of SIMD Supercomputers, Vector Computers, Multimedia SIMD Instruction Extensions, and Graphical Processor Units (Chapter 4) M-45 M.7 The History of Multiprocessors and Parallel Processing (Chapter 5 and Appendices F, G, and I) M-55 M.8 The Development of Clusters (Chapter 6) M-74 M.9 Historical Perspectives and References M-79 M.10 The History of Magnetic Storage, RAID, and I/O Buses (Appendix D) M-84 M Historical Perspectives and References If … history … teaches us anything, it is that man in his quest for knowledge and progress is determined and cannot be deterred. John F. Kennedy Address at Rice University (1962) Those who cannot remember the past are condemned to repeat it. George Santayana The Life of Reason (1905), Vol. 2, Chapter 3 M-2 ■ Appendix M Historical Perspectives and References M.1 Introduction This appendix provides historical background on some of the key ideas presented in the chapters. We may trace the development of an idea through a series of machines or describe significant projects. If you are interested in examining the initial development of an idea or machine or are interested in further reading, references are provided at the end of each section.
    [Show full text]
  • Uva-DARE (Digital Academic Repository)
    UvA-DARE (Digital Academic Repository) On the construction of operating systems for the Microgrid many-core architecture van Tol, M.W. Publication date 2013 Document Version Final published version Link to publication Citation for published version (APA): van Tol, M. W. (2013). On the construction of operating systems for the Microgrid many-core architecture. General rights It is not permitted to download or to forward/distribute the text or part of it without the consent of the author(s) and/or copyright holder(s), other than for strictly personal, individual use, unless the work is under an open content license (like Creative Commons). Disclaimer/Complaints regulations If you believe that digital publication of certain material infringes any of your rights or (privacy) interests, please let the Library know, stating your reasons. In case of a legitimate complaint, the Library will make the material inaccessible and/or remove it from the website. Please Ask the Library: https://uba.uva.nl/en/contact, or a letter to: Library of the University of Amsterdam, Secretariat, Singel 425, 1012 WP Amsterdam, The Netherlands. You will be contacted as soon as possible. UvA-DARE is a service provided by the library of the University of Amsterdam (https://dare.uva.nl) Download date:09 Oct 2021 128.256.16-II MicroGrid MicroGrid 128.256.16-II MicroGrid OS v4.01 MicroGridv4.01 OS MicroGrid OS v2.1 OS MicroGrid MicroGrid 128.256.16-II MicroGrid OS MicroGrid v4.01 On the construction of operating systemsv2.1 OS MicroGrid for the Microgrid MicroGrid 128.256.16-II
    [Show full text]
  • A High-Bandwidth Cross-Domain Transfer Facility
    Fbufs: A High-Bandwidth Cross-Domain Transfer Facility Peter Druschel and Larry L. Peterson* Department of Computer Science University of Arizona Tucson, AZ 85721 Abstract be copied from one domain to another. This paper con- siders the complementary issue of increasing data transfer We have designed and implemented a new operating throughput—we are interested in I/O intensive applications system facility for 1/0 buffer management and data trans- that require significant amounts of data to be moved across fer across protection domain boundm-ies on shared memory protection boundaries. Such applications include real-time machines. This facility, called ~ast buffers (fbufs), com- video, digital image retrieval, and accessing large scientific bines virtual page remapping with shared virtual memory, data sets. and exploits locality in I/O traffic to achieve high through- put without compromising protection, security, or modular- Focusing more specifically on network I/0, we observe ity. Its goal is to help deliver the high bandwidth afforded that on the one hand emerging network technology will by emerging high-speed networks to user-level processes, soon offer sustained data rates approaching one gigabit per both in monolithic and microkernel-based operating sys- second to the end host, while on the other hand, the trend tems. towards microkernel-based operating systems leads to a This paper outlines the requirements for a cross-domain situation where the 1/0 data path may intersect multiple transfer facility, describes the design of the fbuf mechanism protection domains. The challenge is to turn good net- that meets these requirements, and experimentally quanti- work bandwidth into good application-to-application band- fies the impact of fbufs on network performance.
    [Show full text]
  • Ism Genmin Frd
    PROCEEDINGS VI · VI HOT EL, CALE DON 2 - 3 JULY 1991 VI � SPONSORE D - I BY VI ISM FRDV· GENMIN I VI EDITED BY VI M H Linck DEPARTMENT OF COMPUTER SCIENCE • UNIVERSITY OF CAPE TOWN I I PROCEEDINGS / KONGRESOPSOMMINGS 6th SOUTHERN AFRICAN COMPUTER SYMPOSI� 6de SUIDELIKE-AFRIKAANSE REKENAARSIMPOSIUM De Overberger Hotel, Caledon 2 - 3 JULY 1991 SPONSORED by ISM FRD GENMIN EDITED by MHLINCK Department of Computer Science University of Cape Town TABLE OF CONTENTS Foreword 1 Organising Committee 2 Referees 3 Program 5 Papers (In order of presentation) 9 "A value can belong to many types" BH Venter, University of FortHare 10 "A Transputer Based Embedded Controller Development System" MR Webster, R G Harley,DC Levy& DR Woodward, University of Natal 16 "Improving a Control and Sequencing Language" G Smit & CFair, University of Cape Town 25 "Design of an Object Orientated Framework/or Optimistic Parallel Simulation on Shared-Memory Computers" PMachanick, University of Witwatersrand 40 "Using Statecharts to Design and Specifythe GMA Direct-Manipulation User Interface" L vanZijl & D Mitton, University of Stellenbosch 51 "Product FormSolutions/or Multiserver Centres with Heirarchical Classesof Customers" A Krzesinski, University of Stellenboschand RSchassberger, TechnischeU niversitatBraunschweig 69 "A ReusableKernel for the Development of ControlSoftware" WFouche and Pde Villiers, University of Stellenbosch 83 "An Implementation of LindaTuple Space under the, Helios Operating System" PG Clayton, E P Wentworth, G C Wells andF deHeer-Menlah, Rhodes
    [Show full text]
  • INFORMATION to USERS This Manuscript Has Been Reproduced
    Operating system support for high-speed networking. Item Type text; Dissertation-Reproduction (electronic) Authors Druschel, Peter Publisher The University of Arizona. Rights Copyright © is held by the author. Digital access to this material is made possible by the University Libraries, University of Arizona. Further transmission, reproduction or presentation (such as public display or performance) of protected items is prohibited except with permission of the author. Download date 29/09/2021 12:17:24 Link to Item http://hdl.handle.net/10150/186828 INFORMATION TO USERS This manuscript has been reproduced from the microfilm master. UMI films the text directly from the original or copy submitted. Thus, some thesis and dissertation copies are in typewriter face, while others may be from any type of computer printer. The quality of this reproduction is dependent upon the quality of the copy submitted. Broken or indistinct print, colored or poor quality illustrations and photographs, print bleedthrough, substandard margins, and improper alignment can adversely affect reproduction. In the unlikely. event that the author did not send UMI a complete manuscript and there are missing pages, these will be noted. Also, if unauthorized copyright material had to be removed, a note will indicate the deletion. Oversize materials (e.g., maps, drawings, charts) are reproduced by sectioning the original, beginning at the upper left-hand corner and continuing from left to right in equal sections with small overlaps. Each original is also photographed in one exposure and is included in reduced form at the back of the book. Photographs included in the original manuscript have been reproduced xerograpbically in this copy.
    [Show full text]
  • Digital Equipment Corporation Records
    http://oac.cdlib.org/findaid/ark:/13030/c8t72p80 No online items Guide to the Digital Equipment Corporation records Finding aid prepared by Bo Doub, Kim Hayden, and Sara Chabino Lott Processing of this collection was made possible through generous funding from The Andrew W. Mellon Foundation, administered through the Council on Library and Information Resources' Cataloging Hidden Special Collections and Archives grant. Computer History Museum 1401 N. Shoreline Blvd. Mountain View, CA, 94043 (650) 810-1010 [email protected] April 2017 Guide to the Digital Equipment X2675.2004 1 Corporation records Title: Digital Equipment Corporation records Identifier/Call Number: X2675.2004 Contributing Institution: Computer History Museum Language of Material: English Physical Description: 1,239 Linear feet,611 record cartons, 357 manuscript boxes, 56 newspaper boxes, 169 periodical boxes, and 150 other box types Date (bulk): Bulk, 1957-1998 Date (inclusive): 1947-2002 Abstract: The Digital Equipment Corporation (DEC) records comprise DEC’s corporate archives, with material dating from 1947 to 2002. The bulk of the collection was collected and created during the company’s years of operation from 1957 to 1998. DEC, founded by engineers Ken Olsen and Harlan Anderson, was one of the largest and most successful computer companies in the industry’s history. Widely recognized for its PDP and VAX minicomputer product lines, by 1988 DEC was second only to IBM as the world’s largest computer company. This collection holds the papers of DEC’s executives, engineers, and personnel -- including the personal collections of founders Ken Olsen and Harlan Anderson. Also included are DEC’s administrative records and material relating to product development and engineering, with committee meeting minutes, correspondence, internal newsletters, product proposals, and engineering drawings.
    [Show full text]
  • DSM-PM2: Une Plate-Forme Portable Pour L'implémentation De Protocoles
    DSM-PM2 : une plate-forme portable pour l’implémentation de protocoles de cohérence multithreads pour systèmes à mémoire virtuellement partagée Gabriel Antoniu To cite this version: Gabriel Antoniu. DSM-PM2 : une plate-forme portable pour l’implémentation de protocoles de co- hérence multithreads pour systèmes à mémoire virtuellement partagée. Informatique [cs]. Ecole normale supérieure de lyon - ENS LYON, 2001. Français. tel-00565382 HAL Id: tel-00565382 https://tel.archives-ouvertes.fr/tel-00565382 Submitted on 12 Feb 2011 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. N d’ordre : 200 N bibliothèque : 01ENSL0200 ÉCOLE NORMALE SUPÉRIEURE DE LYON Laboratoire de l’Informatique du Parallélisme THÈSE pour obtenir le grade de Docteur de l’École Normale Supérieure de Lyon spécialité : Informatique au titre de l’école doctorale de MathIF présentée et soutenue publiquement le 21 novembre 2001 par Monsieur Gabriel ANTONIU DSM-PM2 : une plate-forme portable pour l’implémentation de protocoles de cohérence multithreads pour systèmes à mémoire virtuellement partagée Directeurs de thèse : Monsieur Luc BOUGÉ Monsieur Raymond NAMYST Après avis de : Monsieur Thierry PRIOL Monsieur Pierre SENS Devant la commission d’examen formée de : Monsieur Luc BOUGÉ, Membre Monsieur Denis CAROMEL, Membre Monsieur Raymond NAMYST, Membre Monsieur Thierry PRIOL, Membre et Rapporteur Monsieur Pierre SENS, Membre et Rapporteur Monsieur Jean-Bernard STEFANI, Membre À la mémoire de mes parents, Remerciements Ce manuscrit est le résultat de trois années de travail.
    [Show full text]
  • A Comparison of Basic CPU Multiprocessor UNIX
    A Comparison of Basic CPU Scheduling Algorithms for Multiprocessor UNIX Stephen Curran and Michael Stumm University of Toronto ABSTRACT: In this paper, we present the results of a simulation study comparing three basic algorithms that schedule independent tasks in multiprocessor versions of UNIX. Two of these algorithms, namely Central Queue and Initial Placement, are obvious extensions to the standard uniprocessor scheduling algorithm and are in use in a number of multipro- cessor systems. A third algorithm, Take, is a varia- tion on Initial Placement, where processors are allowed to raid the task queues of the other proces- sors. Our simulation results show the difference between the performance of the three algorithms to be small when scheduling a typical UNIX workload running on a small, bus-based, shared memory mul- tiprocessor. They also show that the Take algo- rithm performs best for those multiprocessors on which tasks incur overhead each time they migrate. In particular, the Take algorithm appears to be more stable than the other two algorithms under extreme conditions. @ Computing Systems, Vol. 3 'No. 4'Fall 1990 551 I. Introduction In this paper, we consider ways to organize and manage the ready tasks in a shared memory multiprocessor. The uniprocessor UNIX kernel uses a single priority queue for this purpose: A task is added to the ready queue behind all tasks ofhigher or equal prior- ity, and the CPU is allocated to the task with the highest priority which is at the head of the queue. For the shared memory mul- tiprocessor case, we consider three basic scheduling algorithms in a simulation study, and compare their behavior and performance in scheduling a UNIX workload of tasks.
    [Show full text]
  • Why Parallel Parallel Processors Types of Parallelism Historical
    Why Parallel Parallel Processors the greed for speed is a permanent malady ❏ The high end requires this approach 2 basic options: • DOE’s ASCI program for example ❏ Build a faster uniprocessor ❏ Advantages • advantages • leverage off the sweet spot technology • programs don’t need to change • huge partially unexplored set of options • compilers may need to change to take advantage of intra-CPU parallelism • disadvantages ❏ Disadvantages • improved CPU performance is very costly - we already see diminishing • software - optimized balance and change are required returns • very large memories are slow • overheads - a whole new set of organizational disasters are now possible ❏ Parallel Processors • today implemented as an ensemble of microprocessors • SAN style interconnect • large variation in how memory is treated University of Utah 1 CS6810 University of Utah 2 CS6810 School of Computing School of Computing Types of Parallelism Historical Perspective Note: many overlaps Table 1: Technology and Software and Representative Generation • lookahead & pipelining Architecture Applications Systems • vectorization First Vacuum tubes and relay Machine language ENIAC (1945 - 1954) memories - simple PC and Single user Princeton IAS • concurrency & simultaneity ACC Programmed I/O IBM 701 Second Discrete transistor Fortran & Cobol IBM 7090 • data and control parallelism (1955 - 1964) Core Memory Subroutine libraries CDC 1604 Floating point arith. Batch processing OS Univac LARC • partitioning & specialization I/O Processors Burroughs B5500 Third SSI
    [Show full text]