The Read-Only Semi-External Model

Total Page:16

File Type:pdf, Size:1020Kb

The Read-Only Semi-External Model The Read-Only Semi-External Model Guy E. Blelloch Laxman Dhulipala Phillip B. Gibbons Carnegie Mellon University MIT CSAIL Carnegie Mellon University [email protected] [email protected] [email protected] Yan Gu Charles McGuffey Julian Shun UC Riverside Carnegie Mellon University MIT CSAIL [email protected] [email protected] [email protected] Abstract external memory, with transfers between the two done in We introduce the Read-Only Semi-External (ROSE) Model blocks of size B. The cost of an algorithm is the number of for the design and analysis of algorithms on large graphs. As such transfers, called its I/O complexity. The model captures in the well-studied semi-external model for graph algorithms, the fact that (i) real-world performance is often bottlenecked we assume that the vertices but not the edges fit in a small by the number of transfers (I/Os) to/from the last (slowest, fast (shared) random-access memory, the edges reside in an largest) level of the hierarchy used, (ii) that level is used unbounded (shared) external memory, and transfers between because the second-to-last level is of limited size, and (iii) the two memories are done in blocks of size B. A key transfers are done in large blocks (e.g., cache lines or pages). difference in ROSE, however, is that the external memory Because of its simplicity and saliency, the External Memory can be read from but not written to. This difference is model has proven to be an effective model for algorithm motivated by important practical considerations: because the design and analysis [7, 15, 51, 67, 74]. graph is not modified, a single instance of the graph can be The Semi-External model [1] is a well-studied special shared among parallel processors and even among unrelated case of the External Memory model suitable for graph concurrent graph algorithms without synchronization, that algorithms, in which the vertices of the graph, but not the instance can be stored compressed without the need for edges, fit in the internal memory. This model reflects the re-compression, the graph can be accessed without cache reality that large real-world graphs tend to have at least an coherence issues, and the wear-out problems of non-volatile order of magnitude more edges than vertices. Figure1, for memory, such as Optane NVRAM, can be avoided. example, shows that all the large graphs (at least 1 billion Using ROSE, we analyze parallel algorithms (some edges) in the SNAP [56], LAW [30] and Azad et al. [9] existing, some new) for 18 fundamental graph problems. We datasets have an average degree more than 10, and over half show that these algorithms are work-efficient, highly parallel, have average degree at least 64. The assumptions in the Semi- and read the external memory using only a block-friendly External model have proven to be effective in both theory and (and compression-friendly) primitive: fetch all the edges for practice [1, 42, 57, 60, 69, 75, 76]. a given vertex. Analyzing the maximum times this primitive However, the recent emergence of new nonvolatile is called for any vertex yields an (often tight) bound on the memory (NVRAM) technologies (e.g., Intel’s Optane DC (low) I/O cost of our algorithms. We present new, specially- Persistent Memory) has added a new twist to memory designed ROSE algorithms for triangle counting, FRT trees, hierarchies: writes to NVRAM are much more costly than and strongly connected components, devising new parallel reads in terms of energy, throughput, and wear-out [18, 33, algorithm techniques for ROSE and beyond. 42, 50, 72, 73]. Neither the External Memory model nor the Semi-External model account for this read-write asymmetry. 1 Introduction To partially rectify this, Blelloch et al. [18] introduced the Asymmetric External Memory model, a variant of the External Efficient use of the memory hierarchy is crucial to obtaining Memory model that charges ω 1 for writes to the external good performance. For the design and analysis of algorithms, memory (the NVRAM), while reads are still unit cost (see it is often useful to consider simple models of computation also [52]). To our knowledge, the Semi-External setting with that capture the most salient aspects of the memory hierarchy. asymmetric read-write costs has not been studied. Although The External Memory model (also known as the I/O or disk- one could readily define such a model, graph algorithms access model) [3], for example, models the memory hierarchy provide an opportunity to go beyond just penalizing writes, as a bounded internal memory of size M and an unbounded by eliminating writes to the external memory altogether! Copyright © 2021 by SIAM Unauthorized reproduction of this article is prohibited Table 1: Analysis of graph algorithms in ROSE, for a graph G 103 Social of n vertices and m edges, assuming m = Ω¹nº. ∗ denotes that Web z Biology a bound holds in expectation and denotes that a bound holds with high probability or whp (O¹k f ¹nºº cost with probability at least 1 − 1/nk ). y denotes the bound assumes the average degree davg = m/n = O¹lognº; for larger davg, one of the logs in the depth 102 should be replaced by davg. B, the block size, is the number of edges that fit in a block. D = diam¹Gº is the diameter of G. rsrc is the eccentricity from the source vertex.p ∆ is the maximum degree. α is the arboricity of G. L = min ¹ m; ∆º + log2 ∆ logn/log logn. ρ Num. Edges / Num. Vertices is the peeling complexity of G [41]. WSP , DSP , and QSP are the work, depth, and I/O complexity of a single-source shortest path 1 10 computation, which depends on the metric used for the FRT trees. 107 108 109 Number of vertices Problem Work Depth I/O Complexity Triangle Counting O¹αmº∗ O¹α log nºz O¹α¹n + m/Bºº FRT Trees O¹W log nº∗ O¹D log nºz O¹Q log nº∗ Figure 1: (Adapted from [42]) Number of vertices ( , in log-scale) SP SP SP n Strongly Connected Comp O¹m log nº∗ O¹D log3 nºz O¹¹n + m/Bº vs. average degree (m/n, in log-scale) on 52 real-world graphs log nº∗ with m > 109 edges from the SNAP [56], LAW [30] and Azad Breadth-First Search O¹mº O¹D log nºy O¹n + m/Bº et al. [9] datasets. All of the graphs have more than 10 times as ∗ zy Integral-weight BFS O¹rsr c + mº O¹rsr c log nº O¹n + m/Bº many edges as vertices (corresponding to the gray dashed line), and Bellman-Ford O¹Dmº O¹D log nºy O¹D¹n 52% of the graphs have at least 64 times as many edges as vertices + m/Bºº y (corresponding to the green dashed line). Single-Source Widest Path O¹Dmº O¹rsr c log nº O¹D¹n + m/Bºº y This paper presents the Read-Only Semi-External (ROSE) Single-Source Betweenness O¹mº O¹D log nº O¹n + m/Bº O¹kº-Spanner O¹mº O¹k log nºzy O¹n + m/Bº model, for the design and analysis of algorithms on large LDD O¹mº O¹log2 nºzy O¹n + m/Bº graphs. As in the Semi-External model, the ROSE model Connectivity O¹mº∗ O¹log3 nºzy O¹n + m/Bº∗ assumes that the vertices but not the edges fit in a small Spanning Forest O¹mº∗ O¹log3 nºzy O¹n + m/Bº∗ ∗ ∗ fast (shared) random-access memory, the edges reside in an Biconnectivity O¹mº O¹D log n O¹n + m/Bº + log3 nºzy unbounded (shared) external memory, and transfers between Maximal Independent Set O¹mº O¹log2 nºzy O¹n + m/Bº the two memories are done in blocks of size B (where B is Graph Coloring O¹mº O¹log n O¹n + m/Bº the number of edges that fit in a block). A key difference + L log ∆º∗† ∗ z in the ROSE model, however, is that the external memory k-core O¹mº O¹ρ log nº O¹n + m/Bº Apx. Densest Subgraph O¹mº O¹log2 nº O¹n + m/Bº can be read from but not written to. The input graph is PageRank Iteration O¹mº O¹log nº O¹m/Bº stored in the read-only external memory, but the output gets written to the read-write internal memory. Unlike general algorithms such as sorting, whose output size is A read-only input graph: Because the graph is not modified, Θ¹input sizeº, graph algorithms are amenable to a read-only a single instance of the graph can be shared among parallel external memory setting because their output sizes are often processors and even unrelated concurrent graph algorithms Θ¹nº rather than Θ¹mº, where n (m) is the number of vertices without synchronization. Because data from NVRAM, like (edges, respectively) in the graph. DRAM, is brought into CPU caches that are kept coherent The ROSE model is motivated by practical benefits by hardware, read-only access means that these cache lines arising from two main consequences of the model: will avoid the costly invalidation that arises with concurrent No external memory writes: Because of NVRAM’s order(s) readers and writers (or concurrent writers). Finally, graphs of magnitude advantage in latency/throughput/wear-out over are often stored in compressed format [41, 65], to reduce traditional (NAND Flash) SSDs and in capacity/cost-per-byte their footprint and the memory bandwidth needed to access over traditional (DRAM) main memory, the emerging setting them.
Recommended publications
  • Paralellizing the Data Cube
    PARALELLIZING THE DATA CUBE By Todd Eavis SUBMITTED IN PARTIAL FULFILLMENT OF THE REQUIREMENTS FOR THE DEGREE OF DOCTOR OF PHILOSOPHY AT DALHOUSIE UNIVERSITY HALIFAX, NOVA SCOTIA JUNE 27, 2003 °c Copyright by Todd Eavis, 2003 DALHOUSIE UNIVERSITY DEPARTMENT OF COMPUTER SCIENCE The undersigned hereby certify that they have read and recommend to the Faculty of Graduate Studies for acceptance a thesis entitled “Paralellizing the Data Cube” by Todd Eavis in partial fulfillment of the requirements for the degree of Doctor of Philosophy. Dated: June 27, 2003 External Examiner: Virendra Bhavsar Research Supervisor: Andrew Rau-Chaplin Examing Committee: Qigang Gao Evangelos Milios ii DALHOUSIE UNIVERSITY Date: June 27, 2003 Author: Todd Eavis Title: Paralellizing the Data Cube Department: Computer Science Degree: Ph.D. Convocation: October Year: 2003 Permission is herewith granted to Dalhousie University to circulate and to have copied for non-commercial purposes, at its discretion, the above title upon the request of individuals or institutions. Signature of Author THE AUTHOR RESERVES OTHER PUBLICATION RIGHTS, AND NEITHER THE THESIS NOR EXTENSIVE EXTRACTS FROM IT MAY BE PRINTED OR OTHERWISE REPRODUCED WITHOUT THE AUTHOR’S WRITTEN PERMISSION. THE AUTHOR ATTESTS THAT PERMISSION HAS BEEN OBTAINED FOR THE USE OF ANY COPYRIGHTED MATERIAL APPEARING IN THIS THESIS (OTHER THAN BRIEF EXCERPTS REQUIRING ONLY PROPER ACKNOWLEDGEMENT IN SCHOLARLY WRITING) AND THAT ALL SUCH USE IS CLEARLY ACKNOWLEDGED. iii To the two women in my life: Amber and Bailey. iv Table of Contents Table of Contents v List of Tables x List of Figures xi Abstract i Acknowledgements ii 1 Introduction 1 1.1 Overview of Primary Research .
    [Show full text]
  • Two-Level Main Memory Co-Design: Multi-Threaded Algorithmic Primitives, Analysis, and Simulation
    Two-Level Main Memory Co-Design: Multi-Threaded Algorithmic Primitives, Analysis, and Simulation Michael A. Bender∗x Jonathan Berryy Simon D. Hammondy K. Scott Hemmerty Samuel McCauley∗ Branden Moorey Benjamin Moseleyz Cynthia A. Phillipsy David Resnicky and Arun Rodriguesy ∗Stony Brook University, Stony Brook, NY 11794-4400 USA fbender,[email protected] ySandia National Laboratories, Albuquerque, NM 87185 USA fjberry, sdhammo, kshemme, bjmoor, caphill, drresni, [email protected] zWashington University in St. Louis, St. Louis, MO 63130 USA [email protected] xTokutek, Inc. www.tokutek.com Abstract—A fundamental challenge for supercomputer memory close to the processor, there can be a higher architecture is that processors cannot be fed data from number of connections between the memory and caches, DRAM as fast as CPUs can consume it. Therefore, many enabling higher bandwidth than current technologies. applications are memory-bandwidth bound. As the number 1 of cores per chip increases, and traditional DDR DRAM While the term scratchpad is overloaded within the speeds stagnate, the problem is only getting worse. A computer architecture field, we use it throughout this variety of non-DDR 3D memory technologies (Wide I/O 2, paper to describe a high-bandwidth, local memory that HBM) offer higher bandwidth and lower power by stacking can be used as a temporary storage location. DRAM chips on the processor or nearby on a silicon The scratchpad cannot replace DRAM entirely. Due to interposer. However, such a packaging scheme cannot contain sufficient memory capacity for a node. It seems the physical constraints of adding the memory directly likely that future systems will require at least two levels of to the chip, the scratchpad cannot be as large as DRAM, main memory: high-bandwidth, low-power memory near although it will be much larger than cache, having the processor and low-bandwidth high-capacity memory gigabytes of storage capacity.
    [Show full text]
  • Minimizing Writes in Parallel External Memory Search
    Proceedings of the Twenty-Third International Joint Conference on Artificial Intelligence Minimizing Writes in Parallel External Memory Search Nathan R. Sturtevant and Matthew J. Rutherford University of Denver Denver, CO, USA fsturtevant, [email protected] Abstract speed in Chinese Checkers, and is 3.5 times faster in Rubik’s Cube. Recent research on external-memory search has shown that disks can be effectively used as sec- WMBFS is motivated by several observations: ondary storage when performing large breadth- first searches. We introduce the Write-Minimizing First, most large-scale BFSs have been performed to ver- Breadth-First Search (WMBFS) algorithm which ify the diameter (the number of unique depths at which states is designed to minimize the number of writes per- can be found) or the width (the maximum number of states at formed in an external-memory BFS. WMBFS is any particular depth) of a state space, after which any com- also designed to store the results of the BFS for puted data is discarded. There are, however, many scenarios later use. We present the results of a BFS on a in which the results of a large BFS can be later used for other single-agent version of Chinese Checkers and the computation. In particular, a breadth-first search is the under- Rubik’s Cube edge cubes, state spaces with about lying technique for building pattern databases (PDBs), which 1 trillion states each. In evaluating against a com- are used as heuristics for search. PDBs require that the depth parable approach, WMBFS reduces the I/O for the of each state in the BFS be stored for later usage.
    [Show full text]
  • The Parallel Persistent Memory Model
    The Parallel Persistent Memory Model Guy E. Blelloch∗ Phillip B. Gibbons∗ Yan Gu∗ Charles McGuffey∗ Julian Shuny ∗Carnegie Mellon University yMIT CSAIL ABSTRACT 1 INTRODUCTION We consider a parallel computational model, the Parallel Persistent In this paper, we consider a parallel computational model, the Par- Memory model, comprised of P processors, each with a fast local allel Persistent Memory (Parallel-PM) model, that consists of P pro- ephemeral memory of limited size, and sharing a large persistent cessors, each with a fast local ephemeral memory of limited size M, memory. The model allows for each processor to fault at any time and sharing a large slower persistent memory. As in the external (with bounded probability), and possibly restart. When a processor memory model [4, 5], each processor runs a standard instruction set faults, all of its state and local ephemeral memory is lost, but the from its ephemeral memory and has instructions for transferring persistent memory remains. This model is motivated by upcoming blocks of size B to and from the persistent memory. The cost of an non-volatile memories that are nearly as fast as existing random algorithm is calculated based on the number of such transfers. A access memory, are accessible at the granularity of cache lines, key difference, however, is that the model allows for individual pro- and have the capability of surviving power outages. It is further cessors to fault at any time. If a processor faults, all of its processor motivated by the observation that in large parallel systems, failure state and local ephemeral memory is lost, but the persistent mem- of processors and their caches is not unusual.
    [Show full text]
  • Implementing Operational Intelligence Using In-Memory Computing
    Implementing Operational Intelligence Using In-Memory Computing William L. Bain ([email protected]) June 29, 2015 Agenda • What is Operational Intelligence? • Example: Tracking Set-Top Boxes • Using an In-Memory Data Grid (IMDG) for Operational Intelligence • Tracking and analyzing live data • Comparison to Spark • Implementing OI Using Data-Parallel Computing in an IMDG • A Detailed OI Example in Financial Services • Code Samples in Java • Implementing MapReduce on an IMDG • Optimizing MapReduce for OI • Integrating Operational and Business Intelligence © ScaleOut Software, Inc. 2 About ScaleOut Software • Develops and markets In-Memory Data Grids, software middleware for: • Scaling application performance and • Providing operational intelligence using • In-memory data storage and computing • Dr. William Bain, Founder & CEO • Career focused on parallel computing – Bell Labs, Intel, Microsoft • 3 prior start-ups, last acquired by Microsoft and product now ships as Network Load Balancing in Windows Server • Ten years in the market; 400+ customers, 10,000+ servers • Sample customers: ScaleOut Software’s Product Portfolio ® • ScaleOut StateServer (SOSS) ScaleOut StateServer In-Memory Data Grid • In-Memory Data Grid for Windows and Linux Grid Grid Grid Grid • Scales application performance Service Service Service Service • Industry-leading performance and ease of use • ScaleOut ComputeServer™ adds • Operational intelligence for “live” data • Comprehensive management tools • ScaleOut hServer® • Full Hadoop Map/Reduce engine (>40X faster*)
    [Show full text]
  • Models for Parallel Computation in Multi-Core, Heterogeneous, and Ultra Wide-Word Architectures
    Models for Parallel Computation in Multi-Core, Heterogeneous, and Ultra Wide-Word Architectures by Alejandro Salinger A thesis presented to the University of Waterloo in fulfillment of the thesis requirement for the degree of Doctor of Philosophy in Computer Science Waterloo, Ontario, Canada, 2013 c Alejandro Salinger 2013 I hereby declare that I am the sole author of this thesis. This is a true copy of the thesis, including any required final revisions, as accepted by my examiners. I understand that my thesis may be made electronically available to the public. iii Abstract Multi-core processors have become the dominant processor architecture with 2, 4, and 8 cores on a chip being widely available and an increasing number of cores predicted for the future. In ad- dition, the decreasing costs and increasing programmability of Graphic Processing Units (GPUs) have made these an accessible source of parallel processing power in general purpose computing. Among the many research challenges that this scenario has raised are the fundamental problems related to theoretical modeling of computation in these architectures. In this thesis we study several aspects of computation in modern parallel architectures, from modeling of computation in multi-cores and heterogeneous platforms, to multi-core cache management strategies, through the proposal of an architecture that exploits bit-parallelism on thousands of bits. Observing that in practice multi-cores have a small number of cores, we propose a model for low-degree parallelism for these architectures. We argue that assuming a small number of processors (logarithmic in a problem's input size) simplifies the design of parallel algorithms.
    [Show full text]
  • High Performance Computing Ð Past, Present and Future
    High Performance Computing – Past, Present and Future Anthony J. G. Hey University of Southampton, Southampton, UK 1 Introduction The New Technology Initiative of the Joint Information Systems Committee in the UK defined High Performance Computing (HPC) in the following terms [1]: “Computing resources which provide more than an order of magnitude more computing power than is normally available on one's desktop.” This is a useful definition of HPC – since it reflects the reality that HPC is a moving target: what is state of the art supercomputing this year will be desktop computing in a few years' time. Before we look towards the future for HPC, it is well worthwhile for us to spend a little time surveying the incredible technological progress in computing over the past 50 years. We will then quickly review some “Grand Challenge” scientific applications, followed by a discussion of the Fortran programming language. Fortran is the paradigmatic scientific programming language and in many respects the evolution of Fortran mirrors developments in computer architecture. After a brief look at the ambitious plans of IBM and Lawrence Livermore Laboratory in the USA to build a true “Grand Challenge” computer by 2004, we conclude with a look at the rather different types of application which are likely to make parallel computers a real commercial success. 2 The Past to the Present Historians of computing often begin by paying tribute to Charles Babbage and his famous Difference Engine – the first complete design for an automatic calculating device. The “Grand Challenge” problem that Babbage was attacking was the calculation of astronomical and nautical tables – a process that was extremely laborious and error-prone for humans.
    [Show full text]
  • Experiments with a Parallel External Memory System*
    Experiments with a Parallel External Memory System? Mohammad R. Nikseresht1, David A. Hutchinson2, and Anil Maheshwari1 1 School of Computer Science, Carleton University 2 Dept. of Systems and Computer Engineering, Carleton University Abstract. The theory of bulk-synchronous parallel computing has pro- duced a large number of attractive algorithms, which are provably op- timal in some sense, but typically require that the aggregate random access memory (RAM) of the processors be sufficient to hold the entire data set of the parallel problem instance. In this work we investigate the performance of parallel algorithms for extremely large problem instances relative to the available RAM. We describe a system, Parallel Exter- nal Memory System (PEMS), which allows existing parallel programs designed for a large number of processors without disks to be adapted easily to smaller, realistic numbers of processors, each with its own disk system. Our experiments with PEMS show that this approach is practi- cal and promising and the run times scale predictable with the number of processors and with the problem size. 1 Introduction In this work we investigate the performance of parallel algorithms for extremely large problem instances relative to the available Random Access Memory (RAM). Using theoretical results of [1, 2], we transform parallel algorithms designed for a large number of processors without disks to smaller, realistic numbers of pro- cessors, each with its own disk system. External Memory (EM) Algorithms: These algorithms are designed so that their run times scale predictably even as the size of their data increases far be- yond the size of internal RAM.
    [Show full text]
  • Fundamentals – Parallel Architectures, Models, and Languages
    HPC – Algorithms and Applications Fundamentals – Parallel Architectures, Models, and Languages Michael Bader TUM – SCCS Winter 2017/2018 Part I Parallel Architectures (sorry, not everywhere the latest ones . ) Michael Bader j HPC – Algorithms and Applications j Fundamentals j Winter 2017/2018 2 Manycore CPU – Intel Xeon Phi Coprocessor • coprocessor = works as an extension card on the PCI bus • ≈ 60 cores, 4 hardware threads per core • simpler architecture for each core, but • wider vector computing unit (8 double-precision floats) • next generation (Knights Landing) available as standalone CPU (since 2017) Michael Bader j HPC – Algorithms and Applications j Fundamentals j Winter 2017/2018 3 Manycore CPU – Intel “Knights Landing” 2nd half ’15 Unveiling Details of Knights Landing 1st commercial systems (Next Generation Intel® Xeon Phi™ Products) 3+ TFLOPS1 In One Package Platform Memory: DDR4 Bandwidth and Parallel Performance & Density Capacity Comparable to Intel® Xeon® Processors Compute: Energy-efficient IA cores2 … . Microarchitecture enhanced for HPC3 . 3X Single Thread Performance vs Knights Corner4 5 . Intel Xeon Processor Binary Compatible . Intel® Silvermont Arch. On-Package Memory: Enhanced for HPC . up to 16GB at launch . 1/3X the Space6 Integrated Fabric . 5X Bandwidth vs DDR47 . 5X Power Efficiency6 Processor Package Jointly Developed with Micron Technology All products, computer systems, dates and figures specified are preliminary based on current expectations, and are subject to change without notice. 1Over 3 Teraflops of peak theoretical double-precision performance is preliminary and based on current expectations of cores, clock frequency and floating point operations per cycle. FLOPS = cores x clock frequency x floating- point operations per second per cycle. 2Modified version of Intel® Silvermont microarchitecture currently found in Intel® AtomTM processors.
    [Show full text]
  • The Efficiency of Mapreduce in Parallel External Memory Arxiv
    The Efficiency of MapReduce in Parallel External Memory Gero Greiner Riko Jacob Institute of Theoretical Computer Science ETH Zurich, Switzerland {greinerg,rjacob}@inf.ethz.ch Abstract Since its introduction in 2004, the MapReduce framework has be- come one of the standard approaches in massive distributed and paral- lel computation. In contrast to its intensive use in practise, theoretical footing is still limited and only little work has been done yet to put MapReduce on a par with the major computational models. Follow- ing pioneer work that relates the MapReduce framework with PRAM and BSP in their macroscopic structure, we focus on the functionality provided by the framework itself, considered in the parallel external memory model (PEM). In this, we present upper and lower bounds on the parallel I/O-complexity that are matching up to constant factors for the shuffle step. The shuffle step is the single communication phase where all information of one MapReduce invocation gets transferred from map workers to reduce workers. Hence, we move the focus to- wards the internal communication step in contrast to previous work. The results we obtain further carry over to the BSP∗ model. On the one hand, this shows how much complexity can be “hidden” for an algo- rithm expressed in MapReduce compared to PEM. On the other hand, arXiv:1112.3765v1 [cs.DC] 16 Dec 2011 our results bound the worst-case performance loss of the MapReduce approach in terms of I/O-efficiency. 1 Introduction The MapReduce framework has been introduced by Dean and Ghemawat [5] to provide a simple parallel model for the design of algorithms on huge data sets.
    [Show full text]
  • The Power of In-Memory Computing: from Supercomputing to Stream Processing
    The Power of In-Memory Computing: From Supercomputing to Stream Processing William Bain, Founder & CEO ScaleOut Software, Inc. October 28, 2020 About the Speaker Dr. William Bain, Founder & CEO of ScaleOut Software: • Email: [email protected] • Ph.D. in Electrical Engineering (Rice University, 1978) • Career focused on parallel computing – Bell Labs, Intel, Microsoft ScaleOut Software develops and markets In-Memory Data Grids, software for: • Scaling application performance with in-memory data storage • Providing operational intelligence on live data with in-memory computing • 15+ years in the market; 450+ customers, 12,000+ servers 2 What Is In-Memory Computing? Generally accepted characteristics: • Comprises both hardware & software techniques. • Hosts data sets in primary memory. • Distributes computing across many servers. • Employs data-parallel computations. Why use IMC? • Can quickly process “live,” fast-changing data. • Can analyze large data sets. • “Scaling out” is more scalable and cost- effective than “scaling up”. 3 In the Beginning Caltech Cosmic Cube (1983) • Possibly the earliest in-memory computing system • Created by professors Geoffrey Fox and Charles Seitz • Targeted at solving scientific problems (high energy physics, astrophysics, chemistry, chip simulation) • 64 “nodes” with Intel 8086/8087 processors & 8MB total memory, hypercube interconnect, 3.2 MFLOPS • “One-tenth the power of the Cray 1 but 100X less expensive” 4 The Era of Commercialization Commercial Parallel Supercomputers • 1984: Industry pioneered
    [Show full text]
  • On the Complexity of List Ranking in the Parallel External Memory Model
    On the Complexity of List Ranking in the Parallel External Memory Model Riko Jacob1, Tobias Lieber1, and Nodari Sitchinava2 1 Institute for Theoretical Computer Science, ETH Z¨urich, Switzerland frjacob,[email protected] 2 Department of Information and Computer Sciences, University of Hawaii, USA [email protected] Abstract. We study the problem of list ranking in the parallel external memory (PEM) model. We observe an interesting dual nature for the hardness of the problem due to limited information exchange among the processors about the structure of the list, on the one hand, and its close relationship to the problem of permuting data, which is known to be hard for the external memory models, on the other hand. By carefully defining the power of the computational model, we prove a permuting lower bound in the PEM model. Furthermore, we present a stronger Ω(log2 N) lower bound for a special variant of the problem and for a specific range of the model parameters, which takes us a step closer toward proving a non-trivial lower bound for the list ranking problem in the bulk-synchronous parallel (BSP) and MapReduce models. Finally, we also present an algorithm that is tight for a larger range of parameters of the model than in prior work. 1 Introduction Analysis of massive graphs representing social networks using distributed pro- gramming models, such as MapReduce and Hadoop, has renewed interests in dis- tributed graph algorithms. In the classical RAM model, depth-first search traver- sal of the graph is the building block for many graph analysis solutions.
    [Show full text]