Starling: A Scheduler Architecture for High Performance Cloud Computing
|
|
- Nigel Norris
- 5 years ago
- Views:
Transcription
1 Starling: A Scheduler Architecture for High Performance Cloud Computing Hang Qu, Omid Mashayekhi, David Terei, Philip Levis Stanford Platform Lab Seminar May 17,
2 High Performance Computing (HPC) Arithmetically dense codes (CPU-bound) Operate on in-memory data SpaceX NOAA Pixar A lot of machine learning is HPC 2
3 HPC on the Cloud HPC has struggled to use cloud resources HPC software has certain expectations Cores are statically allocated, never change Cores do not fail Every core has identical performance Cloud doesn t meet these expectations Elastic resources, dynamically reprovisioned Expect some failures Variable performance 3
4 HPC in a Cloud Framework? Strawman: run HPC codes inside a cloud framework (e.g., Spark, MapReduce, Naiad, etc.) Framework handles all of the cloud s challenges for you: scheduling, failure, resource adaptation Problem: too slow (by orders of magnitude) Spark can schedule 2,500 tasks/second Typical HPC compute task is 10ms Each core can execute 100 tasks/second A single 18 core machine can execute 1,800 tasks/second Queueing theory and batch processing mean you want to operate well below the maximum scheduling throughput 4
5 Starling Scheduling architecture for high performance cloud computing (HPCC) Controller decides data distribution, workers decide what tasks to execute In steady state, no worker/controller communication except periodic performance updates Can schedule up to 120,000,000 tasks/s Scales linearly with number of cores HPC benchmarks run x faster 5
6 Outline HPC background Starling scheduling architecture Evaluation Thoughts and questions 6
7 High Performance Computing Arithmetically intense floating point problems Simulations Image processing If you might want to do it on a GPU but it s not graphics, it s probably HPC Embedded in a geometry, data dependencies 7
8 Example: Semi-lagrangian Advection A fluid is represented as a grid Each cell has a velocity Update value/velocity for next time step 8
9 9
10 Example: Semi-lagrangian Advection A fluid is represented as a grid Each cell has a velocity Update value/velocity for next time step 10
11 Example: Semi-lagrangian Advection A fluid is represented as a grid Each cell has a velocity Update value/velocity for next time step Walk velocity vector backwards, interpolate 11
12 Example: Semi-lagrangian Advection A B A fluid is represented as a grid Each cell has a velocity Update value/velocity for next time step Walk velocity vector backwards, interpolate What if partitions A+B are on different nodes? 12
13 Example: Semi-lagrangian Advection A B ab A fluid is represented as a grid Each cell has a velocity Update value/velocity for next time step Walk velocity vector backwards, interpolate What if partitions A+B are on different nodes? Each partition has partial data from other, adjacent partitions ( ghost cells ) 13
14 High Performance Computing Arithmetically intense floating point problems Simulations Image processing If you might want to do it on a GPU but it s not graphics, it s probably HPC Embedded in a geometry, data dependencies Many small data exchanges after computational steps Ghost cells, reductions, etc. 14
15 Most HPC Today (MPI) while (time < duration) { // locally calculate, then global min dt = calculate_dt(); // locally calculate, then exchange update_velocity(dt); // locally calculate, then exchange update_fluid(dt); // locally calculate, then exchange update_particles(dt); time += dt; } Control flow is explicit in each process. Operate in lockstep. Partitioning and communication is static. A single process fails, program crashes. Problems in the cloud Runs as fast as slowest process. Assumes every node runs at the same speed. 15
16 Most HPC Today (MPI) while (time < duration) { // locally calculate, then global min dt = calculate_dt(); // locally calculate, then exchange update_velocity(dt); // locally calculate, then exchange update_fluid(dt); // locally calculate, then exchange update_particles(dt); time += dt; } Control flow is explicit in each process. Operate in lockstep. Partitioning and communication is static. A single process fails, program crashes. Runs as fast as slowest process. Assumes every node runs at the same speed. 16
17 HPC inside a cloud framework? HPC code cloud (EC2, GCP) HPC code cloud framework cloud (EC2, GCP) load balancing failure recovery elastic resources {stragglers 17
18 Frameworks too slow Depend on a central controller to schedule tasks to worker nodes Controller can schedule ~2,500 tasks/second Fast, optimized HPC tasks can be ~10ms long 18-core worker executes 1,800 tasks/second Two workers overwhelm a scheduler Prior work is fast or distributed, not both Driver Tasks Tasks Controller Stats Worker Worker Worker 18
19 Outline HPC background Starling scheduling architecture Evaluation Thoughts and questions 19
20 Best of both worlds? Depend on a central controller to Balance load Recover from failures Adapt to changing resources Handle stragglers Depend on worker nodes to Schedule computations Don t execute in lockstep Use AMT/software processor model (track dependencies) Exchange data 20
21 Control Signal Need a different control signal between controller and workers to schedule tasks Intuition: tasks execute where data is resident Data moves only for load balancing/recovery Controller determines how data is distributed Workers generate schedule tasks based on what data they have 21
22 Controller Architectures Driver Program RDD Lineage Par//on Manager Master P1 P2 P3 W2 W1 W2 Spark Controller Report data placement Scheduler Task Graph T1 T2 T3 T4 Slaves report local par//ons P1 P2 W2 W1 Par//on Manager Slave T2 T1 Task Queue P1 P3 W2 W2 Par//on Manager Slave T3 Task Queue Spark Worker 1 Spark Worker 2 22
23 Controller Architectures Slaves report local par//ons Driver Program RDD Lineage Par//on Manager Master P1 P2 P3 W2 W1 W2 Spark Controller Report data placement Scheduler Task Graph T1 T2 T3 T4 Par$$on Manager Replica Par$$on Manager P1 P2 P3 W2 W1 W2 Broadcast data placement P1 P2 P3 W2 W1 W2 Starling Controller Decide data placement Par$$on Manager Replica Scheduler Snapshot Specify a stage to snapshot at P1 P2 P3 W2 W1 W2 P1 P2 W2 W1 Par//on Manager Slave T2 T1 Task Queue P1 P3 W2 W2 Par//on Manager Slave T3 Task Queue Scheduler Task Graph Driver Program T2 T4 Task Queue T2 Scheduler Task Graph T1 Driver Program T3 Task T3 Queue T1 Spark Worker 1 Spark Worker 2 Canary Worker 1 Canary Worker 2 23
24 Partitioning Specification Driver program computes valid placements Task accesses determine a set of constraints E.g., A1 and B1 must be on the same node, A2 and B2, etc. Micropartitions (overdecomposition) If expected max cores is n, create 2-8n partitions 24
25 Managing Migrations Controller does not know where workers are in the program Workers do not know where each other are in program When a data partition moves, need to ensure that destination picks up where source left off 25
26 Example Task Graph sca*erw 0 LW0 TD0 LG0 gatherw 0 gradient 0 sca*erg 0 gatherw 1 gradient 1 sca*erg 1 LW1 TD1 LG1 LW: local weight TD: training data LG: local gradient GW: global weight GG: global gradient write read gatherg 0 sum 0 again? 0 GW0 GG0 26
27 Execution Tracking Program posi;on Stage Id Stage sca$erw gatherw gradient sca$erg gatherg sum again? sca$erw. Par++on : Metadata LW0 TD0 LG0 GW0 GG0 : : : : : Each worker executes the identical program in parallel Control flow is identical (like GPUs) Tag each partition with last stage that accessed it Spawn all subsequent stages Data exchanges implicitly synchronize 27
28 Implicitly Synchronize sca*erw 0 LW0 TD0 LG0 gatherw 0 gradient 0 sca*erg 0 gatherw 1 gradient 1 sca*erg 1 LW1 TD1 LG1 LW: local weight TD: training data LG: local gradient GW: global weight GG: global gradient write read gatherg 0 sum 0 again? 0 GW0 GG0 Stage gatherg0 cannot execute until both gradient1 and gradient2 complete Stage again?0 cannot execute until sum0 completes 28
29 Spawning and Executing Local Tasks Metadata for each data partition is the last stage that reads from or writes to it. After finishing a task, a worker: Updates metadata. Examines task candidates that operate on data partitions generated by the completed task. Puts a candidate task into a ready queue if all data partitions it operates on are (1) local, and (2) modified by the right tasks. 29
30 Two Communication Primitives Scatter-gather Similar to MapReduce, Spark GroupBy, etc. Takes one or more datasets as input Produces one or more datasets as output Used for data exchange Signal Deliver a boolean result to every node Used for control flow 30
31 EVALUATION 31
32 Evaluation Questions How many tasks/second can Starling schedule? Where are the scheduling bottlenecks? Does this improve computational performance? Logistic regression K-means, PageRank Lassen PARSEC fluidanimate Can Starling adapt HPC applications to changes in available nodes? 32
33 Scheduling Throughput CPU utilization (6.6µs, 90%) Average task length (µs) A single core can schedule 136,000 tasks/second while using 10% of CPU cycles. Scheduling puts a task on a local queue (no locks); no I/O needed. 33
34 Scheduling Throughput Scheduling throughput increases linearly with number of cores. 120,000,000 tasks/second on 1,152 cores (10% CPU overhead) Bottleneck is data transmission on partition migration. 34
35 Overprovisioned Scheduling Workload is 3,600 tasks/second. Queueing delay due to batched scheduling means much higher throughput needed. 35
36 Queueing Delay Controller dispatches 4 tasks/sec 0.00s 0.25s 0.50s 0.75s 1.00s 1.25s 1.50s 1.75s Core Core Core Core task(1s) task(1s) task(1s) task(1s) Load is 4 tasks/second. If scheduler can handle 4 tasks/second, queueing delay increases execution time from 1s to 1.75s (75%). 36
37 Logistic Regression Optimal micropartitioning on 32 workers is >18,000 tasks/second Controller: c4.large instance (1 core) workers: c4.8xlarge instance (18 cores)
38 Lassen (Eulerian) Micro partitioning + load balancing runs 3.3x faster than MPI. Controller: c4.large instance (1 core) workers: c4.8xlarge instance (18 cores)
39 PARSEC fluidanimate (Lagrangian) Micro partitioning + load balancing runs 2.4x faster than MPI. Controller: c4.large instance (1 core) workers: c4.8xlarge instance (18 cores)
40 Migration Costs 32 nodes, reprovisioned so computation moves off of 16 nodes onto 16 new nodes. Data transfer takes several seconds at 9Gbps. Migration times are huge compared to task execution times. Migration not a bottleneck at controller. 40
41 Starling Evaluation Summary Can schedule 136,000 tasks/s/core 120,000,000/s on 1,152 cores Need to overprovision scheduling/high throughput Schedules HPC applications on >1,000 cores Micropartitions improve performance Increase required throughput: 5-18,000 tasks/s on 32 nodes Central load balancer improves performance x for HPC benchmarks Can adapt to changing resources 41
42 Outline HPC background Starling scheduling architecture Evaluation Thoughts and questions 42
43 Thoughts Many newer cloud computing workloads resembled high performance computing I/O bound workloads are slow CPU bound workloads are fast Next generation systems will draw from both Cloud computing: variation, completion time, failure, programming models, system decomposition HPC: scalability, performance 43
44 Thank you! Philip Levis Hang Qu Omid Mashayekhi David Terei Chinmayee Shah
Decoupling the Control Plane from Program Control Flow for Flexibility and Performance in Cloud Computing
Decoupling the Control Plane from Program Control Flow for Flexibility and Performance in Cloud Computing ABSTRACT Hang Qu Stanford University Stanford, California quhang@stanford.edu Chinmayee Shah Stanford
More informationExecu&on Templates: Caching Control Plane Decisions for Strong Scaling of Data Analy&cs
Execu&on Templates: Caching Control Plane Decisions for Strong Scaling of Data Analy&cs Omid Mashayekhi Hang Qu Chinmayee Shah Philip Levis July 13, 2017 2 Cloud Frameworks SQL Streaming Machine Learning
More informationLecture 11 Hadoop & Spark
Lecture 11 Hadoop & Spark Dr. Wilson Rivera ICOM 6025: High Performance Computing Electrical and Computer Engineering Department University of Puerto Rico Outline Distributed File Systems Hadoop Ecosystem
More informationDistributed Geometric Data Structures. Philip Levis Stanford Platform Lab Review Feb 9, 2017
Distributed Geometric Data Structures Philip Levis Stanford Platform Lab Review Feb 9, 2017 Big Control The Physical World Big control applications collect data on, and take action in, the physical world
More informationMapReduce Spark. Some slides are adapted from those of Jeff Dean and Matei Zaharia
MapReduce Spark Some slides are adapted from those of Jeff Dean and Matei Zaharia What have we learnt so far? Distributed storage systems consistency semantics protocols for fault tolerance Paxos, Raft,
More informationPouya Kousha Fall 2018 CSE 5194 Prof. DK Panda
Pouya Kousha Fall 2018 CSE 5194 Prof. DK Panda 1 Motivation And Intro Programming Model Spark Data Transformation Model Construction Model Training Model Inference Execution Model Data Parallel Training
More informationPiccolo. Fast, Distributed Programs with Partitioned Tables. Presenter: Wu, Weiyi Yale University. Saturday, October 15,
Piccolo Fast, Distributed Programs with Partitioned Tables 1 Presenter: Wu, Weiyi Yale University Outline Background Intuition Design Evaluation Future Work 2 Outline Background Intuition Design Evaluation
More informationDecentralized and Distributed Machine Learning Model Training with Actors
Decentralized and Distributed Machine Learning Model Training with Actors Travis Addair Stanford University taddair@stanford.edu Abstract Training a machine learning model with terabytes to petabytes of
More informationA Comparative Study of High Performance Computing on the Cloud. Lots of authors, including Xin Yuan Presentation by: Carlos Sanchez
A Comparative Study of High Performance Computing on the Cloud Lots of authors, including Xin Yuan Presentation by: Carlos Sanchez What is The Cloud? The cloud is just a bunch of computers connected over
More informationMATE-EC2: A Middleware for Processing Data with Amazon Web Services
MATE-EC2: A Middleware for Processing Data with Amazon Web Services Tekin Bicer David Chiu* and Gagan Agrawal Department of Compute Science and Engineering Ohio State University * School of Engineering
More informationAnalyzing Spark Scheduling And Comparing Evaluations On Sort And Logistic Regression With Albatross
Analyzing Spark Scheduling And Comparing Evaluations On Sort And Logistic Regression With Albatross Henrique Pizzol Grando University Of Sao Paulo henrique.grando@usp.br Iman Sadooghi Illinois Institute
More informationTechniques to improve the scalability of Checkpoint-Restart
Techniques to improve the scalability of Checkpoint-Restart Bogdan Nicolae Exascale Systems Group IBM Research Ireland 1 Outline A few words about the lab and team Challenges of Exascale A case for Checkpoint-Restart
More informationIntroduction to parallel Computing
Introduction to parallel Computing VI-SEEM Training Paschalis Paschalis Korosoglou Korosoglou (pkoro@.gr) (pkoro@.gr) Outline Serial vs Parallel programming Hardware trends Why HPC matters HPC Concepts
More informationProgramming Systems for Big Data
Programming Systems for Big Data CS315B Lecture 17 Including material from Kunle Olukotun Prof. Aiken CS 315B Lecture 17 1 Big Data We ve focused on parallel programming for computational science There
More informationFLAT DATACENTER STORAGE. Paper-3 Presenter-Pratik Bhatt fx6568
FLAT DATACENTER STORAGE Paper-3 Presenter-Pratik Bhatt fx6568 FDS Main discussion points A cluster storage system Stores giant "blobs" - 128-bit ID, multi-megabyte content Clients and servers connected
More informationMapReduce, Hadoop and Spark. Bompotas Agorakis
MapReduce, Hadoop and Spark Bompotas Agorakis Big Data Processing Most of the computations are conceptually straightforward on a single machine but the volume of data is HUGE Need to use many (1.000s)
More informationDistributed Machine Learning: An Intro. Chen Huang
: An Intro. Chen Huang Feature Engineering Group, Data Mining Lab, Big Data Research Center, UESTC Contents Background Some Examples Model Parallelism & Data Parallelism Parallelization Mechanisms Synchronous
More informationApache Spark is a fast and general-purpose engine for large-scale data processing Spark aims at achieving the following goals in the Big data context
1 Apache Spark is a fast and general-purpose engine for large-scale data processing Spark aims at achieving the following goals in the Big data context Generality: diverse workloads, operators, job sizes
More information15-388/688 - Practical Data Science: Big data and MapReduce. J. Zico Kolter Carnegie Mellon University Spring 2018
15-388/688 - Practical Data Science: Big data and MapReduce J. Zico Kolter Carnegie Mellon University Spring 2018 1 Outline Big data Some context in distributed computing map + reduce MapReduce MapReduce
More informationResilient Distributed Datasets
Resilient Distributed Datasets A Fault- Tolerant Abstraction for In- Memory Cluster Computing Matei Zaharia, Mosharaf Chowdhury, Tathagata Das, Ankur Dave, Justin Ma, Murphy McCauley, Michael Franklin,
More informationUsing Existing Numerical Libraries on Spark
Using Existing Numerical Libraries on Spark Brian Spector Chicago Spark Users Meetup June 24 th, 2015 Experts in numerical algorithms and HPC services How to use existing libraries on Spark Call algorithm
More informationFaSST: Fast, Scalable, and Simple Distributed Transactions with Two-Sided (RDMA) Datagram RPCs
FaSST: Fast, Scalable, and Simple Distributed Transactions with Two-Sided (RDMA) Datagram RPCs Anuj Kalia (CMU), Michael Kaminsky (Intel Labs), David Andersen (CMU) RDMA RDMA is a network feature that
More informationIntroduction to MapReduce
Basics of Cloud Computing Lecture 4 Introduction to MapReduce Satish Srirama Some material adapted from slides by Jimmy Lin, Christophe Bisciglia, Aaron Kimball, & Sierra Michels-Slettvet, Google Distributed
More informationCloud Programming. Programming Environment Oct 29, 2015 Osamu Tatebe
Cloud Programming Programming Environment Oct 29, 2015 Osamu Tatebe Cloud Computing Only required amount of CPU and storage can be used anytime from anywhere via network Availability, throughput, reliability
More informationDistributed Computing with Spark and MapReduce
Distributed Computing with Spark and MapReduce Reza Zadeh @Reza_Zadeh http://reza-zadeh.com Traditional Network Programming Message-passing between nodes (e.g. MPI) Very difficult to do at scale:» How
More informationPutting it together. Data-Parallel Computation. Ex: Word count using partial aggregation. Big Data Processing. COS 418: Distributed Systems Lecture 21
Big Processing -Parallel Computation COS 418: Distributed Systems Lecture 21 Michael Freedman 2 Ex: Word count using partial aggregation Putting it together 1. Compute word counts from individual files
More informationShark: SQL and Rich Analytics at Scale. Michael Xueyuan Han Ronny Hajoon Ko
Shark: SQL and Rich Analytics at Scale Michael Xueyuan Han Ronny Hajoon Ko What Are The Problems? Data volumes are expanding dramatically Why Is It Hard? Needs to scale out Managing hundreds of machines
More informationMachine Learning for Large-Scale Data Analysis and Decision Making A. Distributed Machine Learning Week #9
Machine Learning for Large-Scale Data Analysis and Decision Making 80-629-17A Distributed Machine Learning Week #9 Today Distributed computing for machine learning Background MapReduce/Hadoop & Spark Theory
More informationHigh Performance Computing. Introduction to Parallel Computing
High Performance Computing Introduction to Parallel Computing Acknowledgements Content of the following presentation is borrowed from The Lawrence Livermore National Laboratory https://hpc.llnl.gov/training/tutorials
More informationThe Future of High Performance Computing
The Future of High Performance Computing Randal E. Bryant Carnegie Mellon University http://www.cs.cmu.edu/~bryant Comparing Two Large-Scale Systems Oakridge Titan Google Data Center 2 Monolithic supercomputer
More informationCS6030 Cloud Computing. Acknowledgements. Today s Topics. Intro to Cloud Computing 10/20/15. Ajay Gupta, WMU-CS. WiSe Lab
CS6030 Cloud Computing Ajay Gupta B239, CEAS Computer Science Department Western Michigan University ajay.gupta@wmich.edu 276-3104 1 Acknowledgements I have liberally borrowed these slides and material
More informationDistributed Computing with Spark
Distributed Computing with Spark Reza Zadeh Thanks to Matei Zaharia Outline Data flow vs. traditional network programming Limitations of MapReduce Spark computing engine Numerical computing on Spark Ongoing
More informationThe Google File System
October 13, 2010 Based on: S. Ghemawat, H. Gobioff, and S.-T. Leung: The Google file system, in Proceedings ACM SOSP 2003, Lake George, NY, USA, October 2003. 1 Assumptions Interface Architecture Single
More informationOutline. CS-562 Introduction to data analysis using Apache Spark
Outline Data flow vs. traditional network programming What is Apache Spark? Core things of Apache Spark RDD CS-562 Introduction to data analysis using Apache Spark Instructor: Vassilis Christophides T.A.:
More informationThe Google File System
The Google File System Sanjay Ghemawat, Howard Gobioff, and Shun-Tak Leung Google* 정학수, 최주영 1 Outline Introduction Design Overview System Interactions Master Operation Fault Tolerance and Diagnosis Conclusions
More informationFault Tolerance in K3. Ben Glickman, Amit Mehta, Josh Wheeler
Fault Tolerance in K3 Ben Glickman, Amit Mehta, Josh Wheeler Outline Background Motivation Detecting Membership Changes with Spread Modes of Fault Tolerance in K3 Demonstration Outline Background Motivation
More informationAutomatically Distributing Eulerian and Hybrid Fluid Simulations in the Cloud
Automatically Distributing Eulerian and Hybrid Fluid Simulations in the Cloud OMID MASHAYEKHI, CHINMAYEE SHAH, HANG QU, ANDREW LIM, and PHILIP LEVIS, Stanford University (a) 1523 cells, without Nimbus:
More informationSimilarities and Differences Between Parallel Systems and Distributed Systems
Similarities and Differences Between Parallel Systems and Distributed Systems Pulasthi Wickramasinghe, Geoffrey Fox School of Informatics and Computing,Indiana University, Bloomington, IN 47408, USA In
More informationUsing Alluxio to Improve the Performance and Consistency of HDFS Clusters
ARTICLE Using Alluxio to Improve the Performance and Consistency of HDFS Clusters Calvin Jia Software Engineer at Alluxio Learn how Alluxio is used in clusters with co-located compute and storage to improve
More informationPortland State University ECE 588/688. Graphics Processors
Portland State University ECE 588/688 Graphics Processors Copyright by Alaa Alameldeen 2018 Why Graphics Processors? Graphics programs have different characteristics from general purpose programs Highly
More informationLightning Talks. Platform Lab Students Stanford University
Lightning Talks Platform Lab Students Stanford University Lightning Talks 1. MC Switch: Application-Layer Load Balancing on a Switch Eyal Cidon and Sean Choi 2. ReFlex: Remote Flash == Local Flash Ana
More informationSparrow. Distributed Low-Latency Spark Scheduling. Kay Ousterhout, Patrick Wendell, Matei Zaharia, Ion Stoica
Sparrow Distributed Low-Latency Spark Scheduling Kay Ousterhout, Patrick Wendell, Matei Zaharia, Ion Stoica Outline The Spark scheduling bottleneck Sparrow s fully distributed, fault-tolerant technique
More informationResearch challenges in data-intensive computing The Stratosphere Project Apache Flink
Research challenges in data-intensive computing The Stratosphere Project Apache Flink Seif Haridi KTH/SICS haridi@kth.se e2e-clouds.org Presented by: Seif Haridi May 2014 Research Areas Data-intensive
More informationMOHA: Many-Task Computing Framework on Hadoop
Apache: Big Data North America 2017 @ Miami MOHA: Many-Task Computing Framework on Hadoop Soonwook Hwang Korea Institute of Science and Technology Information May 18, 2017 Table of Contents Introduction
More informationCS 179 Lecture 16. Logistic Regression & Parallel SGD
CS 179 Lecture 16 Logistic Regression & Parallel SGD 1 Outline logistic regression (stochastic) gradient descent parallelizing SGD for neural nets (with emphasis on Google s distributed neural net implementation)
More informationMatrix Computations and " Neural Networks in Spark
Matrix Computations and " Neural Networks in Spark Reza Zadeh Paper: http://arxiv.org/abs/1509.02256 Joint work with many folks on paper. @Reza_Zadeh http://reza-zadeh.com Training Neural Networks Datasets
More informationBig Data Platforms. Alessandro Margara
Big Data Platforms Alessandro Margara alessandro.margara@polimi.it http://home.deib.polimi.it/margara Data Science Data science is an interdisciplinary field that uses scientific methods, processes, algorithms
More informationDistributed Computation Models
Distributed Computation Models SWE 622, Spring 2017 Distributed Software Engineering Some slides ack: Jeff Dean HW4 Recap https://b.socrative.com/ Class: SWE622 2 Review Replicating state machines Case
More informationKey aspects of cloud computing. Towards fuller utilization. Two main sources of resource demand. Cluster Scheduling
Key aspects of cloud computing Cluster Scheduling 1. Illusion of infinite computing resources available on demand, eliminating need for up-front provisioning. The elimination of an up-front commitment
More informationChapter 5. The MapReduce Programming Model and Implementation
Chapter 5. The MapReduce Programming Model and Implementation - Traditional computing: data-to-computing (send data to computing) * Data stored in separate repository * Data brought into system for computing
More informationParallel Computing with MATLAB
Parallel Computing with MATLAB CSCI 4850/5850 High-Performance Computing Spring 2018 Tae-Hyuk (Ted) Ahn Department of Computer Science Program of Bioinformatics and Computational Biology Saint Louis University
More informationCHRONO::HPC DISTRIBUTED MEMORY FLUID-SOLID INTERACTION SIMULATIONS. Felipe Gutierrez, Arman Pazouki, and Dan Negrut University of Wisconsin Madison
CHRONO::HPC DISTRIBUTED MEMORY FLUID-SOLID INTERACTION SIMULATIONS Felipe Gutierrez, Arman Pazouki, and Dan Negrut University of Wisconsin Madison Support: Rapid Innovation Fund, U.S. Army TARDEC ASME
More informationDesigning Parallel Programs. This review was developed from Introduction to Parallel Computing
Designing Parallel Programs This review was developed from Introduction to Parallel Computing Author: Blaise Barney, Lawrence Livermore National Laboratory references: https://computing.llnl.gov/tutorials/parallel_comp/#whatis
More informationLinear Regression Optimization
Gradient Descent Linear Regression Optimization Goal: Find w that minimizes f(w) f(w) = Xw y 2 2 Closed form solution exists Gradient Descent is iterative (Intuition: go downhill!) n w * w Scalar objective:
More informationScalable Distributed Training with Parameter Hub: a whirlwind tour
Scalable Distributed Training with Parameter Hub: a whirlwind tour TVM Stack Optimization High-Level Differentiable IR Tensor Expression IR AutoTVM LLVM, CUDA, Metal VTA AutoVTA Edge FPGA Cloud FPGA ASIC
More informationHarp-DAAL for High Performance Big Data Computing
Harp-DAAL for High Performance Big Data Computing Large-scale data analytics is revolutionizing many business and scientific domains. Easy-touse scalable parallel techniques are necessary to process big
More informationTransparent Throughput Elas0city for IaaS Cloud Storage Using Guest- Side Block- Level Caching
Transparent Throughput Elas0city for IaaS Cloud Storage Using Guest- Side Block- Level Caching Bogdan Nicolae (IBM Research, Ireland) Pierre Riteau (University of Chicago, USA) Kate Keahey (Argonne National
More informationThe Google File System
The Google File System Sanjay Ghemawat, Howard Gobioff and Shun Tak Leung Google* Shivesh Kumar Sharma fl4164@wayne.edu Fall 2015 004395771 Overview Google file system is a scalable distributed file system
More informationVulkan: Scaling to Multiple Threads. Kevin sun Lead Developer Support Engineer, APAC PowerVR Graphics
Vulkan: Scaling to Multiple Threads Kevin sun Lead Developer Support Engineer, APAC PowerVR Graphics www.imgtec.com Introduction Who am I? Kevin Sun Working at Imagination Technologies Take responsibility
More informationMassive Online Analysis - Storm,Spark
Massive Online Analysis - Storm,Spark presentation by R. Kishore Kumar Research Scholar Department of Computer Science & Engineering Indian Institute of Technology, Kharagpur Kharagpur-721302, India (R
More informationCS 475: Parallel Programming Introduction
CS 475: Parallel Programming Introduction Wim Bohm, Sanjay Rajopadhye Colorado State University Fall 2014 Course Organization n Let s make a tour of the course website. n Main pages Home, front page. Syllabus.
More informationToward Energy-efficient and Fault-tolerant Consistent Hashing based Data Store. Wei Xie TTU CS Department Seminar, 3/7/2017
Toward Energy-efficient and Fault-tolerant Consistent Hashing based Data Store Wei Xie TTU CS Department Seminar, 3/7/2017 1 Outline General introduction Study 1: Elastic Consistent Hashing based Store
More informationParallel Programming with MPI and OpenMP
Parallel Programming with MPI and OpenMP Michael J. Quinn Chapter 6 Floyd s Algorithm Chapter Objectives Creating 2-D arrays Thinking about grain size Introducing point-to-point communications Reading
More informationEngineering Goals. Scalability Availability. Transactional behavior Security EAI... CS530 S05
Engineering Goals Scalability Availability Transactional behavior Security EAI... Scalability How much performance can you get by adding hardware ($)? Performance perfect acceptable unacceptable Processors
More informationWrite a technical report Present your results Write a workshop/conference paper (optional) Could be a real system, simulation and/or theoretical
Identify a problem Review approaches to the problem Propose a novel approach to the problem Define, design, prototype an implementation to evaluate your approach Could be a real system, simulation and/or
More informationAnti-Caching: A New Approach to Database Management System Architecture. Guide: Helly Patel ( ) Dr. Sunnie Chung Kush Patel ( )
Anti-Caching: A New Approach to Database Management System Architecture Guide: Helly Patel (2655077) Dr. Sunnie Chung Kush Patel (2641883) Abstract Earlier DBMS blocks stored on disk, with a main memory
More informationCA485 Ray Walshe Google File System
Google File System Overview Google File System is scalable, distributed file system on inexpensive commodity hardware that provides: Fault Tolerance File system runs on hundreds or thousands of storage
More informationCS 6453: Parameter Server. Soumya Basu March 7, 2017
CS 6453: Parameter Server Soumya Basu March 7, 2017 What is a Parameter Server? Server for large scale machine learning problems Machine learning tasks in a nutshell: Feature Extraction (1, 1, 1) (2, -1,
More informationUsing Numerical Libraries on Spark
Using Numerical Libraries on Spark Brian Spector London Spark Users Meetup August 18 th, 2015 Experts in numerical algorithms and HPC services How to use existing libraries on Spark Call algorithm with
More informationPoseidon: An Efficient Communication Architecture for Distributed Deep Learning on GPU Clusters
Poseidon: An Efficient Communication Architecture for Distributed Deep Learning on GPU Clusters Hao Zhang Zeyu Zheng, Shizhen Xu, Wei Dai, Qirong Ho, Xiaodan Liang, Zhiting Hu, Jianliang Wei, Pengtao Xie,
More informationDistributed Filesystem
Distributed Filesystem 1 How do we get data to the workers? NAS Compute Nodes SAN 2 Distributing Code! Don t move data to workers move workers to the data! - Store data on the local disks of nodes in the
More informationOVERHEADS ENHANCEMENT IN MUTIPLE PROCESSING SYSTEMS BY ANURAG REDDY GANKAT KARTHIK REDDY AKKATI
CMPE 655- MULTIPLE PROCESSOR SYSTEMS OVERHEADS ENHANCEMENT IN MUTIPLE PROCESSING SYSTEMS BY ANURAG REDDY GANKAT KARTHIK REDDY AKKATI What is MULTI PROCESSING?? Multiprocessing is the coordinated processing
More informationNFS, GPFS, PVFS, Lustre Batch-scheduled systems: Clusters, Grids, and Supercomputers Programming paradigm: HPC, MTC, and HTC
Segregated storage and compute NFS, GPFS, PVFS, Lustre Batch-scheduled systems: Clusters, Grids, and Supercomputers Programming paradigm: HPC, MTC, and HTC Co-located storage and compute HDFS, GFS Data
More informationParallel Computing. Parallel Algorithm Design
Parallel Computing Parallel Algorithm Design Task/Channel Model Parallel computation = set of tasks Task Program Local memory Collection of I/O ports Tasks interact by sending messages through channels
More informationClient Server & Distributed System. A Basic Introduction
Client Server & Distributed System A Basic Introduction 1 Client Server Architecture A network architecture in which each computer or process on the network is either a client or a server. Source: http://webopedia.lycos.com
More informationò mm_struct represents an address space in kernel ò task represents a thread in the kernel ò A task points to 0 or 1 mm_structs
Last time We went through the high-level theory of scheduling algorithms Scheduling Today: View into how Linux makes its scheduling decisions Don Porter CSE 306 Lecture goals Understand low-level building
More informationScheduling. Don Porter CSE 306
Scheduling Don Porter CSE 306 Last time ò We went through the high-level theory of scheduling algorithms ò Today: View into how Linux makes its scheduling decisions Lecture goals ò Understand low-level
More informationToday s content. Resilient Distributed Datasets(RDDs) Spark and its data model
Today s content Resilient Distributed Datasets(RDDs) ------ Spark and its data model Resilient Distributed Datasets: A Fault- Tolerant Abstraction for In-Memory Cluster Computing -- Spark By Matei Zaharia,
More informationTITLE: PRE-REQUISITE THEORY. 1. Introduction to Hadoop. 2. Cluster. Implement sort algorithm and run it using HADOOP
TITLE: Implement sort algorithm and run it using HADOOP PRE-REQUISITE Preliminary knowledge of clusters and overview of Hadoop and its basic functionality. THEORY 1. Introduction to Hadoop The Apache Hadoop
More informationThe Google File System
The Google File System By Ghemawat, Gobioff and Leung Outline Overview Assumption Design of GFS System Interactions Master Operations Fault Tolerance Measurements Overview GFS: Scalable distributed file
More informationHigh Performance Solid State Storage Under Linux
High Performance Solid State Storage Under Linux Eric Seppanen, Matthew T. O Keefe, David J. Lilja Electrical and Computer Engineering University of Minnesota April 20, 2010 Motivation SSDs breaking through
More informationCSE 544 Principles of Database Management Systems. Alvin Cheung Fall 2015 Lecture 10 Parallel Programming Models: Map Reduce and Spark
CSE 544 Principles of Database Management Systems Alvin Cheung Fall 2015 Lecture 10 Parallel Programming Models: Map Reduce and Spark Announcements HW2 due this Thursday AWS accounts Any success? Feel
More informationLecture 15: More Iterative Ideas
Lecture 15: More Iterative Ideas David Bindel 15 Mar 2010 Logistics HW 2 due! Some notes on HW 2. Where we are / where we re going More iterative ideas. Intro to HW 3. More HW 2 notes See solution code!
More informationApache Hadoop 3. Balazs Gaspar Sales Engineer CEE & CIS Cloudera, Inc. All rights reserved.
Apache Hadoop 3 Balazs Gaspar Sales Engineer CEE & CIS balazs@cloudera.com 1 We believe data can make what is impossible today, possible tomorrow 2 We empower people to transform complex data into clear
More informationDRIZZLE: FAST AND Adaptable STREAM PROCESSING AT SCALE
DRIZZLE: FAST AND Adaptable STREAM PROCESSING AT SCALE Shivaram Venkataraman, Aurojit Panda, Kay Ousterhout, Michael Armbrust, Ali Ghodsi, Michael Franklin, Benjamin Recht, Ion Stoica STREAMING WORKLOADS
More informationMining Distributed Frequent Itemset with Hadoop
Mining Distributed Frequent Itemset with Hadoop Ms. Poonam Modgi, PG student, Parul Institute of Technology, GTU. Prof. Dinesh Vaghela, Parul Institute of Technology, GTU. Abstract: In the current scenario
More informationHedvig as backup target for Veeam
Hedvig as backup target for Veeam Solution Whitepaper Version 1.0 April 2018 Table of contents Executive overview... 3 Introduction... 3 Solution components... 4 Hedvig... 4 Hedvig Virtual Disk (vdisk)...
More informationCS /29/18. Paul Krzyzanowski 1. Question 1 (Bigtable) Distributed Systems 2018 Pre-exam 3 review Selected questions from past exams
Question 1 (Bigtable) What is an SSTable in Bigtable? Distributed Systems 2018 Pre-exam 3 review Selected questions from past exams It is the internal file format used to store Bigtable data. It maps keys
More informationData Analytics on RAMCloud
Data Analytics on RAMCloud Jonathan Ellithorpe jdellit@stanford.edu Abstract MapReduce [1] has already become the canonical method for doing large scale data processing. However, for many algorithms including
More informationSpecialist ICT Learning
Specialist ICT Learning APPLIED DATA SCIENCE AND BIG DATA ANALYTICS GTBD7 Course Description This intensive training course provides theoretical and technical aspects of Data Science and Business Analytics.
More informationMap-Reduce. Marco Mura 2010 March, 31th
Map-Reduce Marco Mura (mura@di.unipi.it) 2010 March, 31th This paper is a note from the 2009-2010 course Strumenti di programmazione per sistemi paralleli e distribuiti and it s based by the lessons of
More informationDistributed Systems Pre-exam 3 review Selected questions from past exams. David Domingo Paul Krzyzanowski Rutgers University Fall 2018
Distributed Systems 2018 Pre-exam 3 review Selected questions from past exams David Domingo Paul Krzyzanowski Rutgers University Fall 2018 November 28, 2018 1 Question 1 (Bigtable) What is an SSTable in
More informationSparkBench: A Comprehensive Spark Benchmarking Suite Characterizing In-memory Data Analytics
SparkBench: A Comprehensive Spark Benchmarking Suite Characterizing In-memory Data Analytics Min LI,, Jian Tan, Yandong Wang, Li Zhang, Valentina Salapura, Alan Bivens IBM TJ Watson Research Center * A
More informationBistro: Scheduling Data- Parallel Batch Jobs against Live Produc:on Systems
Bistro: Scheduling - Parallel Batch Jobs against Live Produc:on Systems h=p://bistro.io Andrey Goder, Alexey Spiridonov, Yin Wang (Facebook) Big and Hadoop Facebook Store Haystack/F4 MySQL HBase Facebook
More information15.1 Data flow vs. traditional network programming
CME 323: Distributed Algorithms and Optimization, Spring 2017 http://stanford.edu/~rezab/dao. Instructor: Reza Zadeh, Matroid and Stanford. Lecture 15, 5/22/2017. Scribed by D. Penner, A. Shoemaker, and
More informationExecuting dynamic heterogeneous workloads on Blue Waters with RADICAL-Pilot
Executing dynamic heterogeneous workloads on Blue Waters with RADICAL-Pilot Research in Advanced DIstributed Cyberinfrastructure & Applications Laboratory (RADICAL) Rutgers University http://radical.rutgers.edu
More informationClustering Lecture 8: MapReduce
Clustering Lecture 8: MapReduce Jing Gao SUNY Buffalo 1 Divide and Conquer Work Partition w 1 w 2 w 3 worker worker worker r 1 r 2 r 3 Result Combine 4 Distributed Grep Very big data Split data Split data
More information2/26/2017. Originally developed at the University of California - Berkeley's AMPLab
Apache is a fast and general engine for large-scale data processing aims at achieving the following goals in the Big data context Generality: diverse workloads, operators, job sizes Low latency: sub-second
More informationEnhancing Throughput of
Enhancing Throughput of NCA 2017 Zhongmiao Li, Peter Van Roy and Paolo Romano Enhancing Throughput of Partially Replicated State Machines via NCA 2017 Zhongmiao Li, Peter Van Roy and Paolo Romano Enhancing
More informationMapReduce: A Programming Model for Large-Scale Distributed Computation
CSC 258/458 MapReduce: A Programming Model for Large-Scale Distributed Computation University of Rochester Department of Computer Science Shantonu Hossain April 18, 2011 Outline Motivation MapReduce Overview
More information