MPI Library Combination That Adds Resource-Elasticity Support for HPC Applications Is Proposed in This Work

Total Page:16

File Type:pdf, Size:1020Kb

MPI Library Combination That Adds Resource-Elasticity Support for HPC Applications Is Proposed in This Work TECHNISCHE UNIVERSITAT¨ MUNCHEN¨ Fakultat¨ fur¨ Informatik Resource-Elasticity Support for Distributed Memory HPC Applications Isa´ıas Alberto Compres´ Urena˜ Vollstandiger¨ Abdruck von der Fakultat¨ fur¨ Informatik der Technischen Universitat¨ Munchen¨ zur Erlangung des akademischen Grades eines Doktors der Naturwissenschaften genehmigten Dissertation. Vorsitzender: Prof. Bernd Brugge,¨ Ph.D. Prufende¨ der Dissertation: 1. Prof. Dr. Hans Michael Gerndt 2. Prof. Dr. Michael Georg Bader Die Dissertation wurde am 23.06.2017 bei der Technischen Universitat¨ Munchen¨ eingereicht und durch die Fakultat¨ fur¨ Informatik am 12.07.2017 angenommen. TECHNICAL UNIVERSITY OF MUNICH Dissertation Resource-Elasticity Support for Distributed Memory HPC Applications Author: Isa´ıas Alberto Compres´ Urena˜ First examiner: Prof. Dr. Hans Michael Gerndt Second examiner: Prof. Dr. Michael Georg Bader The dissertation was submitted to the Technical University of Munich on 23.06.2017, and was approved by the Faculty of Informatics on 12.07.2017. I hereby declare that this thesis is entirely the result of my own work except where other- wise indicated. I have only used the resources given in the list of references. Garching, 5.5.2017 Isa´ıas Alberto Compres´ Urena˜ Acknowledgments First, I want to thank to Prof. Gerndt. It was because of a recommendation of his that I originally had the opportunity to engage in message passing research at a reputable re- search institution. He later gave me the opportunity to pursue this doctorate, with an ex- panded scope that includes resource management and scheduling. In addition, the quality of this work has largely improved thanks to his diligent supervision and advice. I would also like to thank the people in my academic environment. To all my colleagues that provided me with new ideas to consider, I am forever grateful. To the staff of the Technical University of Munich, for providing a great environment for work and research. To the Leibniz Supercomputing Center, for granting me access to the supercomputing re- sources needed for this type of research. Finally, to the Invasive Computing Transregional Collaborative Research Center for providing the theoretical background and necessary funding for this work. I would also like to take this opportunity to thank all my friends and relatives, in no particular order, who have directly or indirectly positively influenced my life. I would like to express my gratitude to Manuel and Gloria Cocco, who helped me during moments of adversity. I am thankful to my mother Yvette Urena,˜ whose lifelong interest in my well being has no parallels. I also want to thank my uncle Miguel Ramon´ Urena˜ for his constant advice and support. Finally, I want to express gratitude to my aunt Miguelina Urena,˜ who has helped me in many ways over the years. vii Abstract Computer simulations are alternatives to the scientific method in domains where physi- cal experiments are unfeasible or impossible. When the amount of memory and processing speed required is large, simulations are executed in distributed memory High Performance Computing (HPC) systems. These systems are usually shared among its users. A resource manager with a batch scheduler is used to fairly and efficiently share the resources of these systems among its users. Current large HPC systems have thousands of compute nodes connected over a high-performance network. Users submit batch job descriptions where the number of resources required by their simulations are specified. Batch job descriptions are queued and scheduled based on priorities and submission times. The parallel efficiency of a simulation depends on the number of resources allocated to it. It is challenging for users to specify allocation sizes that produce adequate paral- lel efficiencies. A resource allocation can be too small and the parallel efficiency of the application may be adequate, but its performance may not be scaled to its maximum po- tential. A resource allocation can be too large and therefore the parallel efficiency of the application may be degraded due to synchronization overheads. Unfortunately, in current systems these resource allocations cannot be adapted once the applications of a job start. A resource manager and MPI library combination that adds resource-elasticity support for HPC applications is proposed in this work. The resource manager is extended with op- erations to adapt the resources of running applications in jobs; in addition, new scheduling techniques are added to it. The MPI library has been extended with operations that enable resource adaptations as changes in the number of processes in world communicators. The goal is to optimize system-wide efficiency metrics through adjustments to the resource al- locations of running applications. Resource allocations are adjusted continuously based on performance feedback from running applications. ix x Contents Acknowledgements vii Abstract ix 1 Introduction 1 2 Motivation 7 2.1 Adaptive Mesh Refinement (AMR) Methods . .8 2.1.1 Challenges of AMR Methods in Distributed Memory Systems . .9 2.2 Applications with Multiple Computational Phases . 11 2.2.1 Phases with Different Scalability Properties . 12 2.2.2 Network-, Memory- and Compute-Bound Phases . 12 2.2.3 Phases with Different Input Dependent Network and Compute Scal- ing Proportionalities . 15 2.2.4 Efficient Ranges for Application Phase Scalability . 16 2.3 System-Wide Parallel Efficiency . 16 2.3.1 Suboptimal Network Performance due to Fixed Initial Allocations . 16 2.3.2 Idle Resources due to Inflexible Resource Requirements in Jobs . 18 2.3.3 Energy and Power Optimizations . 18 3 Invasive Computing 19 3.1 Invasive Computing Research Groups . 19 3.1.1 Group A Projects . 19 3.1.2 Group B Projects . 20 3.1.3 Group C Projects . 21 3.1.4 Group D Projects . 22 3.1.5 Group Z Projects . 23 4 Related Work 25 4.1 Programming Languages and Interfaces without Elastic Execution Support 25 4.1.1 Parallel Shared Memory Systems . 25 4.1.2 Distributed Memory Systems . 27 4.1.3 Cloud and Grid Computing . 28 4.2 Elastic Programming Languages and Interfaces for HPC . 29 4.2.1 Charm++ and Adaptive MPI . 30 4.2.2 The X10 Programming Language . 31 4.2.3 Parallel Virtual Machine (PVM) . 32 4.2.4 Other Related Works . 32 xi Contents 5 The Message Passing Interface (MPI) 33 5.1 MPI Features Overview . 33 5.1.1 Data Types . 34 5.1.2 Groups and Communicators . 34 5.1.3 Point-to-Point Communication . 35 5.1.4 One-Sided Communication . 35 5.1.5 Collective Communication . 36 5.1.6 Parallel IO . 37 5.1.7 Virtual Topologies . 37 5.2 Dynamic Processes Support and its Limitations . 38 5.3 MPICH: High-Performance Portable MPI . 40 5.3.1 Software Architecture . 40 5.3.2 MPI Layer . 41 5.3.3 Device Layer . 41 5.3.4 Channel Layer . 41 6 Elastic MPI Library 43 6.1 MPI Extension Operations . 43 6.1.1 MPI Initialization in Adaptive Mode . 45 6.1.2 Probing Adaptation Data . 45 6.1.3 Beginning an Adaptation Window . 47 6.1.4 Committing an Adaptation Window . 48 6.2 MPI Extension Implementation . 48 6.2.1 MPI INIT ADAPT . 48 6.2.2 MPI PROBE ADAPT . 49 6.2.3 MPI COMM ADAPT BEGIN . 50 6.2.4 MPI COMM ADAPT COMMIT . 52 7 Elastic-Phase Oriented Programming (EPOP) 53 7.1 Motivation for a Resource-Elastic Programming Model . 53 7.1.1 Identification of Serial and Parallel Phases in the Source Code . 53 7.1.2 Process Entry and Data Redistribution Locations . 54 7.2 The EPOP Programming Model . 56 7.2.1 Initialization, Rigid and Elastic-Phases (EPs) . 56 7.2.2 EPOP Programs and Branches . 56 7.2.3 Application Data . 57 7.3 Current Implementation . 57 7.3.1 Driver Program . 57 7.3.2 Program Element . 59 7.3.3 Program Structure . 61 7.4 Additional Benefits of the EPOP Model and Driver Programs . 61 8 Resource Management in High Performance Computing 63 8.1 Resource Management in Shared Memory Systems . 63 8.2 Resource Management in Distributed Memory Systems . 64 8.2.1 Additional Requirements for the Scheduling of Elastic Jobs . 65 8.3 Simple Linux Utility for Resource Management (SLURM) . 65 8.3.1 Controller Daemon (SLURMCTLD).................... 67 xii Contents 8.3.2 Node Daemon (SLURMD).......................... 67 9 Elastic Resource Manager 69 9.1 Overview of the Integration with the Elastic MPI Library . 69 9.1.1 Rank to Process Mapping Strategy . 71 9.1.2 Support for Arbitrary Node Identification Orders . 71 9.2 Elastic Batch and Runtime Scheduler . 73 9.3 Node Daemons . 74 9.4 Launcher for Elastic Jobs . 76 10 Monitoring and Scheduling Infrastructure 77 10.1 Theoretical Background on Multiprocessor Scheduling . 77 10.1.1 Problem Statement . 77 10.1.2 Computational Complexity . 78 10.1.3 Resource-Static Scheduling in Distributed Memory HPC Systems . 79 10.1.4 Modified Scheduling Problem for Resource-Elastic Execution . 81 10.2 Performance Monitoring Infrastructure . 82 10.2.1 Process-Local Pattern Detection and Performance Measurements . 82 10.2.2 Node-Local Reductions and Performance Data Updates . 85 10.2.3 Distributed Reductions and Performance Models . 87 10.2.4 EPOP Integration . 88 10.3 Elastic Schedulers . 88 10.3.1 Elastic Runtime Scheduler (ERS) . 89 10.3.2 Performance Model and Resource Range Vector (RRV) . 92 10.3.3 Elastic Backfilling . 93 11 Evaluation Setup 97 11.1 Elastic Resource Manager Nesting in SuperMUC . 97 11.1.1 Phase 1 and Phase 2 Nodes . 98 11.1.2 MPI Library and Compilers Setup . 98 11.2 Testing and Measurement Binaries . 98 12 Elastic MPI Performance 99 12.1 MPI INIT ADAPT . 99 12.2 MPI PROBE ADAPT . 99 12.3 MPI COMM ADAPT BEGIN .
Recommended publications
  • Slurm Overview and Elasticsearch Plugin
    Slurm Workload Manager Overview SC15 Alejandro Sanchez [email protected] Copyright 2015 SchedMD LLC http://www.schedmd.com Slurm Workload Manager Overview ● Originally intended as simple resource manager, but has evolved into sophisticated batch scheduler ● Able to satisfy scheduling requirements for major computer centers with use of optional plugins ● No single point of failure, backup daemons, fault-tolerant job options ● Highly scalable (3.1M core Tianhe-2 at NUDT) ● Highly portable (autoconf, extensive plugins for various environments) ● Open source (GPL v2) ● Operating on many of the world's largest computers ● About 500,000 lines of code today (plus test suite and documentation) Copyright 2015 SchedMD LLC http://www.schedmd.com Enterprise Architecture Copyright 2015 SchedMD LLC http://www.schedmd.com Architecture ● Kernel with core functions plus about 100 plugins to support various architectures and features ● Easily configured using building-block approach ● Easy to enhance for new architectures or features, typically just by adding new plugins Copyright 2015 SchedMD LLC http://www.schedmd.com Elasticsearch Plugin Copyright 2015 SchedMD LLC http://www.schedmd.com Scheduling Capabilities ● Fair-share scheduling with hierarchical bank accounts ● Preemptive and gang scheduling (time-slicing parallel jobs) ● Integrated with database for accounting and configuration ● Resource allocations optimized for topology ● Advanced resource reservations ● Manages resources across an enterprise Copyright 2015 SchedMD LLC http://www.schedmd.com
    [Show full text]
  • Intel® SSF Reference Design: Intel® Xeon Phi™ Processor, Intel® OPA
    Intel® Scalable System Framework Reference Design Intel® Scalable System Framework (Intel® SSF) Reference Design Cluster installation for systems based on Intel® Xeon® processor E5-2600 v4 family including Intel® Ethernet. Based on OpenHPC v1.1 Version 1.0 Intel® Scalable System Framework Reference Design Summary This Reference Design is part of the Intel® Scalable System Framework series of reference collateral. The Reference Design is a verified implementation example of a given reference architecture, complete with hardware and software Bill of Materials information and cluster configuration instructions. It can confidently be used “as is”, or be the foundation for enhancements and/or modifications. Additional Reference Designs are expected in the future to provide example solutions for existing reference architecture definitions and for utilizing additional Intel® SSF elements. Similarly, more Reference Designs are expected as new reference architecture definitions are introduced. This Reference Design is developed in support of the specification listed below using certain Intel® SSF elements: • Intel® Scalable System Framework Architecture Specification • Servers with Intel® Xeon® processor E5-2600 v4 family processors • Intel® Ethernet • Software stack based on OpenHPC v1.1 2 Version 1.0 Legal Notices No license (express or implied, by estoppel or otherwise) to any intellectual property rights is granted by this document. Intel disclaims all express and implied warranties, including without limitation, the implied warranties of merchantability, fitness for a particular purpose, and non-infringement, as well as any warranty arising from course of performance, course of dealing, or usage in trade. This document contains information on products, services and/or processes in development. All information provided here is subject to change without notice.
    [Show full text]
  • SUSE Linux Enterprise High Performance Computing 15 SP3 Administration Guide Administration Guide SUSE Linux Enterprise High Performance Computing 15 SP3
    SUSE Linux Enterprise High Performance Computing 15 SP3 Administration Guide Administration Guide SUSE Linux Enterprise High Performance Computing 15 SP3 SUSE Linux Enterprise High Performance Computing Publication Date: September 24, 2021 SUSE LLC 1800 South Novell Place Provo, UT 84606 USA https://documentation.suse.com Copyright © 2020–2021 SUSE LLC and contributors. All rights reserved. Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or (at your option) version 1.3; with the Invariant Section being this copyright notice and license. A copy of the license version 1.2 is included in the section entitled “GNU Free Documentation License”. For SUSE trademarks, see http://www.suse.com/company/legal/ . All third-party trademarks are the property of their respective owners. Trademark symbols (®, ™ etc.) denote trademarks of SUSE and its aliates. Asterisks (*) denote third-party trademarks. All information found in this book has been compiled with utmost attention to detail. However, this does not guarantee complete accuracy. Neither SUSE LLC, its aliates, the authors nor the translators shall be held liable for possible errors or the consequences thereof. Contents Preface vii 1 Available documentation vii 2 Giving feedback vii 3 Documentation conventions viii 4 Support x Support statement for SUSE Linux Enterprise High Performance Computing x • Technology previews xi 1 Introduction 1 1.1 Components provided 1 1.2 Hardware platform support 2 1.3 Support
    [Show full text]
  • Version Control Graphical Interface for Open Ondemand
    VERSION CONTROL GRAPHICAL INTERFACE FOR OPEN ONDEMAND by HUAN CHEN Submitted in partial fulfillment of the requirements for the degree of Master of Science Department of Electrical Engineering and Computer Science CASE WESTERN RESERVE UNIVERSITY AUGUST 2018 CASE WESTERN RESERVE UNIVERSITY SCHOOL OF GRADUATE STUDIES We hereby approve the thesis/dissertation of Huan Chen candidate for the degree of Master of Science Committee Chair Chris Fietkiewicz Committee Member Christian Zorman Committee Member Roger Bielefeld Date of Defense June 27, 2018 TABLE OF CONTENTS Abstract CHAPTER 1: INTRODUCTION ............................................................................ 1 CHAPTER 2: METHODS ...................................................................................... 4 2.1 Installation for Environments and Open OnDemand .............................................. 4 2.1.1 Install SLURM ................................................................................................. 4 2.1.1.1 Create User .................................................................................... 4 2.1.1.2 Install and Configure Munge ........................................................... 5 2.1.1.3 Install and Configure SLURM ......................................................... 6 2.1.1.4 Enable Accounting ......................................................................... 7 2.1.2 Install Open OnDemand .................................................................................. 9 2.2 Git Version Control for Open OnDemand
    [Show full text]
  • Extending SLURM for Dynamic Resource-Aware Adaptive Batch
    1 Extending SLURM for Dynamic Resource-Aware Adaptive Batch Scheduling Mohak Chadha∗, Jophin John†, Michael Gerndt‡ Chair of Computer Architecture and Parallel Systems, Technische Universitat¨ Munchen¨ Garching (near Munich), Germany Email: [email protected], [email protected], [email protected] their resource requirements at runtime due to varying computa- Abstract—With the growing constraints on power budget tional phases based upon refinement or coarsening of meshes. and increasing hardware failure rates, the operation of future A solution to overcome these challenges and efficiently utilize exascale systems faces several challenges. Towards this, resource awareness and adaptivity by enabling malleable jobs has been the system components is resource awareness and adaptivity. actively researched in the HPC community. Malleable jobs can A method to achieve adaptivity in HPC systems is by enabling change their computing resources at runtime and can signifi- malleable jobs. cantly improve HPC system performance. However, due to the A job is said to be malleable if it can adapt to resource rigid nature of popular parallel programming paradigms such changes triggered by the batch system at runtime [6]. These as MPI and lack of support for dynamic resource management in batch systems, malleable jobs have been largely unrealized. In resource changes can either increase (expand operation) or this paper, we extend the SLURM batch system to support the reduce (shrink operation) the number of processors. Malleable execution and batch scheduling of malleable jobs. The malleable jobs have shown to significantly improve the performance of a applications are written using a new adaptive parallel paradigm batch system in terms of both system and user-centric metrics called Invasive MPI which extends the MPI standard to support such as system utilization and average response time [7], resource-adaptivity at runtime.
    [Show full text]
  • Distributed HPC Applications with Unprivileged Containers Felix Abecassis, Jonathan Calmels GPUNVIDIA Computing Beyond Video Games
    Distributed HPC Applications with Unprivileged Containers Felix Abecassis, Jonathan Calmels GPUNVIDIA Computing Beyond video games VIRTUAL REALITY SCIENTIFIC COMPUTING MACHINE LEARNING AUTONOMOUS MACHINES GPU COMPUTING 2 Infrastructure at NVIDIA DGX SuperPOD GPU cluster (Top500 #20) x96 3 NVIDIA Containers Supports all major container runtimes We built libnvidia-container to make it easy to run CUDA applications inside containers We release optimized container images for each of the major Deep Learning frameworks every month We use containers for everything on our HPC clusters - R&D, official benchmarks, etc Containers give us portable software stacks without sacrificing performance 4 Typical cloud deployment e.g. Kubernetes Hundreds/thousands of small nodes All applications are containerized, for security reasons Many small applications running per node (e.g. microservices) Traffic to/from the outside world Not used for interactive applications or development Advanced features: rolling updates with rollback, load balancing, service discovery 5 GPU Computing at NVIDIA HPC-like 10-100 very large nodes “Trusted” users Not all applications are containerized Few applications per node (often just a single one) Large multi-node jobs with checkpointing (e.g. Deep Learning training) Little traffic to the outside world, or air-gapped Internal traffic is mostly RDMA 6 Slurm Workload Manager https://slurm.schedmd.com/slurm.html Advanced scheduling algorithms (fair-share, backfill, preemption, hierarchical quotas) Gang scheduling: scheduling and
    [Show full text]
  • Cluster Deployment
    INAF-OATs Technical Report 222 - INCAS: INtensive Clustered ARM SoC - Cluster Deployment S. Bertoccoa, D. Goza, L. Tornatorea, G. Taffonia aINAF-Osservatorio Astronomico di Trieste, Via G. Tiepolo 11, 34131 Trieste - Italy Abstract The report describes the work done to deploy an Heterogeneous Computing Cluster using CPUs and GPUs integrated on a System on Chip architecture, in the environment of the ExaNeSt H2020 project. After deployment, this cluster will provide a testbed to validate and optimize several HPC codes developed to be run on heterogeneous hardware. The work done includes: a technology watching phase to choose the SoC best fitting our requirements; installation of the Operative System Ubuntu 16.04 on the choosen hardware; cluster layout and network configuration; software installation (cluster management software slurm, specific software for HPC programming). Keywords: SoC, Firefly-RK3399, Heterogeneous Cluster Technology HCT, slurm, MPI, OpenCL, ARM 1. Introduction The ExaNeSt H2020 project aims at the design and development of an exascale ready supercomputer with a low energy consumption profile but able to support the most demanding scientific and technical applica- tions. The project will produce a prototype based on hybrid hardware (CPUs+accelerators). Astrophysical codes are playing a fundamental role to validate this exascale platform. A preliminary work has been done to Email addresses: [email protected] ORCID:0000-0003-2386-623X (S. Bertocco), [email protected] ORCID:0000-0001-9808-2283 (D. Goz), [email protected] ORCID:0000-0003-1751-0130 (L. Tornatore), [email protected] ORCID:0000-0001-7011-4589 (G. Taffoni) Preprint submitted to INAF August 3, 2018 port on the heterogeneous platform a state-of-the-art N-body code (called ExaHiGPUs) [4].
    [Show full text]
  • Sansa - the Supercomputer and Node State Architecture
    SaNSA - the Supercomputer and Node State Architecture Neil Agarwal∗y, Hugh Greenberg∗, Sean Blanchard∗, and Nathan DeBardeleben∗ ∗ Ultrascale Systems Research Center Los Alamos National Laboratory High Performance Computing Los Alamos, New Mexico, 87545 Email: fhng, seanb, [email protected] y University of California, Berkeley Berkeley, California, 94720 Email: [email protected] Abstract—In this work we present SaNSA, the Supercomputer vendor, today there exists relatively poor fine-grained informa- and Node State Architecture, a software infrastructure for histor- tion about the state of individual nodes of a cluster. Operators ical analysis and anomaly detection. SaNSA consumes data from and technicians of data centers have dashboards which actively multiple sources including system logs, the resource manager, scheduler, and job logs. Furthermore, additional context such provide real time feedback about coarse-grained information as scheduled maintenance events or dedicated application run such as whether a node is up or down. times for specific science teams can be overlaid. We discuss how The Slurm Workload Manager, which runs on most of the this contextual information allows for more nuanced analysis. U.S. Department of Energy’s clusters, has one view of the SaNSA allows the user to apply arbitrary attributes, for instance, state of the nodes in the system. Slurm uses this to know positional information where nodes are located in a data center. We show how using this information we identify anomalous whether nodes are available for scheduling, jobs are running, behavior of one rack of a 1,500 node cluster. We explain the and when they complete. However, there are other views such design of SaNSA and then test it on four open compute clusters as the node’s own view as expressed via system logs it reports at LANL.
    [Show full text]
  • Intelligent Colocation of HPC Workloads?,??
    Intelligent colocation of HPC workloads?;?? Felippe Vieira Zacariasa,b,c, Vinicius Petruccia,e, Rajiv Nishtalad, Paul Carpenterc, Daniel Mosse´e aUniversidade Federal da Bahia bUniversitat Polit`ecnicade Catalunya cBarcelona Supercomputing Center dCoop, Norway/Norwegian University of Science and Technology, Norway eUniversity of Pittsburgh Abstract Many HPC applications suffer from a bottleneck in the shared caches, instruction execution units, I/O or memory bandwidth, even though the remaining resources may be underutilized. It is hard for developers and runtime systems to ensure that all critical resources are fully exploited by a single application, so an attractive technique for increasing HPC system utilization is to colocate multiple applications on the same server. When applications share critical resources, however, contention on shared resources may lead to reduced application performance. In this paper, we show that server efficiency can be improved by first modeling the expected performance degradation of colocated applications based on measured hardware performance counters, and then exploiting the model to determine an optimized mix of colocated applications. This paper presents a new intelligent resource manager and makes the following contributions: (1) a new machine learning model to predict the performance degradation of colocated applications based on hardware counters and (2) an intelligent scheduling scheme deployed on an existing resource manager to enable application co-scheduling with minimum performance degradation. Our results show that our approach achieves performance improvements of 7 % (avg) and 12 % (max) compared to the standard policy commonly used by existing job managers. Keywords: Resource manager, HPC systems, Machine learning, Colocation, Performance Characterization, Performance counters 1. Introduction is key to keeping up with increased computational demands.
    [Show full text]
  • Winter 2016 Vol
    ;login WINTER 2016 VOL. 41, NO. 4 : & Your Cores Are Slacking Off Jean-Pierre Lozi, Baptiste Lepers, Justin Funston, Fabien Gaud, Vivien Quéma, and Alexandra Fedorova & BeyondCorp Part III: The Access Proxy Luca Cittadini, Batz Spear, Betsy Beyer, and Max Saltonstall & OpenLambda for Microservices Scott Hendrickson, Stephen Sturdevant, Edward Oakes, Tyler Harter, Venkateshwaran Venkataramani, Andrea Arpaci-Dusseau, and Remzi Arpaci-Dusseau & Tuning ZFS for Databases Allan Jude and Michael W. Lucas & Interview with Fyodor Vaskovich Rik Farrow Columns Understanding Python Metaclasses David Beazley Monitoring Your Monitoring Systems Dave Josephsen Forecasting the Weather with Dark Sky David N. Blank-Edelman Extending Go Applications with Exec Plugins Kelsey Hightower Rising Tide of IoT Devices Dan Geer Idiot-Blockers for the Internet Robert G. Ferrell UPCOMING EVENTS LISA16 USENIX ATC ’17: 2017 USENIX Annual Technical December 4–9, 2016, Boston, MA, USA Conference www.usenix.org/lisa16 July 12-14, 2017, Santa Clara, CA, USA Co-located with LISA16 Submissions due February 7, 2017 www.usenix.org/atc17 SESA ’16: 2016 USENIX Summit for Educators in System Administration Co-located with USENIX ATC ’17 December 6, 2016 HotCloud ’17: 9th USENIX Workshop on Hot Topics www.usenix.org/sesa16 in Cloud Computing July 10-11, 2017, Santa Clara, CA, USA USENIX Journal of Education in System Administration Submissions due March 14, 2017 (JESA) www.usenix.org/hotcloud17 Published in conjunction with SESA www.usenix.org/jesa HotStorage ’17: 9th USENIX Workshop
    [Show full text]
  • Virtual Machine Checkpoint Storage and Distribution for Simuboost
    Virtual Machine Checkpoint Storage and Distribution for SimuBoost Master Thesis by Bastian Eicher at the Department of Computer Science Operating Systems Group Karlsruhe Institute of Technology Supervisor: Prof. Dr. Frank Bellosa Supervising Research Assistant:Dipl.-Inform. Marc Rittinghaus Created during: April 1st 2015 – September 4th 2015 KIT – Universität des Landes Baden-Württemberg und nationales Forschungszentrum in der Helmholtz-Gemeinschaft www.kit.edu iii I hereby declare that this thesis is my own original work which I created without illegitimate help by others, that I have not used any other sources or resources than the ones indicated and that due acknowledgment is given where reference is made to the work of others. Karlsruhe, September 4th 2015 iv Abstract While full-system simulation enables detailed analysis of workloads it is much slower than hardware-assisted virtualization, with slowdown factors ranging from 30 to 1000. The SimuBoost concept aims to combine the benefits of full-system simulation and virtualization. Checkpoints of a virtual machine’s state are cre- ated in regular intervals and used to seed parallelized distributed simulations. To reach an optimal degree of parallelization, checkpoints have to be created in short intervals with low downtimes. In this thesis we evaluate the viability of the SimuBoost concept. We improve an existing checkpointing prototype to minimize the downtime by replacing the un- derlying storage mechanism and performing asynchronous deduplication. We also implement a cluster-distribution solution in order to measure the actual speedup achievable by SimuBoost. The evaluation shows that the new storage mechanism and performing deduplica- tion asynchronously greatly reduce the downtime caused by checkpointing.
    [Show full text]
  • The Crossroads of Cloud And
    Table of Contents Introduction 1 OpenStack and Virtualised HPC 5 OpenStack and HPC Network Fabrics 14 OpenStack and High-Performance Data 25 OpenStack and HPC Workload Management 38 OpenStack and HPC Infrastructure Management 52 OpenStack and Research Cloud Federation 67 Summary 77 AUTHORS “OpenStack and Virtualised HPC”, “OpenStack and HPC Network Fabrics”, “OpenStack and High-Performance Data”, “OpenStack and HPC Workload Management” and “OpenStack and HPC Infrastructure Management” by Stig Telfer, CTO, StackHPC Ltd. with the support of Cambridge University. “OpenStack and Research Cloud Federation” by Enol Fernández, Cloud Technologist, EGI. CONTRIBUTIONS, GUIDANCE AND FEEDBACK OPENSTACK AND VIRTUALISED HPC: Blair Bethwaite, Senior HPC Consultant, Monash University Dr. Xiaoyi Lu, Senior Research Associate, NOWLAB, The Ohio State University Dhabaleswar K. (DK) Panda, Professor and University Distinguished Scholar, NOWLAB, The Ohio State University OPENSTACK AND HPC NETWORK FABRICS: Paul Browne, OpenStack Engineer, Cambridge University Dr. Xiaoyi Lu, Senior Research Associate, NOWLAB, The Ohio State University Jonathan Mills, Senior HPC Engineer, CSC @ NASA Goddard Space Flight Center Dhabaleswar K. (DK) Panda, Professor and University Distinguished Scholar, NOWLAB, The Ohio State University OPENSTACK AND HIGH-PERFORMANCE DATA: Dr. Tom Connor, Senior Lecturer, Cardiff University and the CLIMB collaboration Vincent Ferretti, Senior Principal Investigator & Associate Director, Bioinformatics Software Development, Ontario Institute for Cancer
    [Show full text]