PAPP 2004 Gava1 Frédéric Gava Parallel I/O Bulk-Synchronous Parallel ML In.

Slides:



Advertisements
Similar presentations
Chapter 19 Vectors, templates, and exceptions Bjarne Stroustrup
Advertisements

Comparing Semantic and Syntactic Methods in Mechanized Proof Frameworks C.J. Bell, Robert Dockins, Aquinas Hobor, Andrew W. Appel, David Walker 1.
Le modèle BSP Bulk-Synchronous Parallel Frédéric Gava.
1 How to transform an analyzer into a verifier. 2 OUTLINE OF THE LECTURE a verification technique which combines abstract interpretation and Park’s fixpoint.
Principles of programming languages 1: Introduction (with a simple language) Isao Sasano Department of Information Science and Engineering.
Study of Hurricane and Tornado Operating Systems By Shubhanan Bakre.
Parallelism and Concurrency Koen Lindström Claessen Chalmers University Gothenburg, Sweden Ulf Norell.
Component Technologies for Embedded Systems Johan Eker.
Introduction to ML – Part 1 Kenny Zhu. Assignment 2 chive/fall07/cos441/assignments/a2.ht m
1 Operational Semantics Mooly Sagiv Tel Aviv University Textbook: Semantics with Applications.
Algorithm for Virtually Synchronous Group Communication Idit Keidar, Roger Khazan MIT Lab for Computer Science Theory of Distributed Systems Group.
3.5 Interprocess Communication
1 Outline File Systems Implementation How disks work How to organize data (files) on disks Data structures Placement of files on disk.
Programming Languages: Design, Specification, and Implementation G Rob Strom November 9, 2006.
Operational Semantics Semantics with Applications Chapter 2 H. Nielson and F. Nielson
MCSTL: The Multi-Core Standard Template Library Xiaofan Liu
Formal Verification of SpecC Programs using Predicate Abstraction Himanshu Jain Daniel Kroening Edmund Clarke Carnegie Mellon University.
FLANN Fast Library for Approximate Nearest Neighbors
MapReduce Simplified Data Processing On large Clusters Jeffery Dean and Sanjay Ghemawat.
Advanced Computer Architectures
F. Gava, HLPP 2005 Frédéric Gava A Modular Implementation of Parallel Data Structures in Bulk-Synchronous Parallel ML.
Functional Programing Referencing material from Programming Language Pragmatics – Third Edition – by Michael L. Scott Andy Balaam (Youtube.com/user/ajbalaam)
Bulk Synchronous Parallel Processing Model Jamie Perkins.
San Diego Supercomputer Center National Partnership for Advanced Computational Infrastructure San Diego Supercomputer Center National Partnership for Advanced.
Early Adopter: Integrating Concepts from Parallel and Distributed Computing into the Undergraduate Curriculum Eileen Kraemer Computer Science Department.
Sensitivity of Cluster File System Access to I/O Server Selection A. Apon, P. Wolinski, and G. Amerson University of Arkansas.
MRPGA : An Extension of MapReduce for Parallelizing Genetic Algorithm Reporter :古乃卉.
Parallel Databases 77. Introduction 4 Basic idea: use multiple disks, memory and/or processors to speed up querying. 4 Measures –Throughput – how many.
The Vesta Parallel File System Peter F. Corbett Dror G. Feithlson.
30 October Agenda for Today Introduction and purpose of the course Introduction and purpose of the course Organization of a computer system Organization.
2003 Dominic Swayne1 Microsoft Disk Operating System and PC DOS CS-550-1: Operating Systems Fall 2003 Dominic Swayne.
PMI: A Scalable Process- Management Interface for Extreme-Scale Systems Pavan Balaji, Darius Buntinas, David Goodell, William Gropp, Jayesh Krishna, Ewing.
CCGrid, 2012 Supporting User Defined Subsetting and Aggregation over Parallel NetCDF Datasets Yu Su and Gagan Agrawal Department of Computer Science and.
1 Alex Proctor and Brian Lee for CSCI 431 at UNCA, Fall 2002 ML (Meta Language) a brief introduction Alex Proctor and Brian Lee For CSCI 431 at the University.
Sun Network File System Presentation 3 Group A4 Sean Hudson, Syeda Taib, Manasi Kapadia.
Speculative Execution in a Distributed File System Ed Nightingale Peter Chen Jason Flinn University of Michigan.
Ronny Krashinsky Erik Machnicki Software Cache Coherent Shared Memory under Split-C.
Solutions for the First Quiz COSC 6360 Spring 2014.
Overview of Operating Systems Introduction to Operating Systems: Module 0.
Gedae, Inc. Gedae: Auto Coding to a Virtual Machine Authors: William I. Lundgren, Kerry B. Barnes, James W. Steed HPEC 2004.
EXT2C: Increasing Disk Reliability Brian Pellin, Chloe Schulze CS736 Presentation May 3 th, 2005.
Motivation  Parallel programming is difficult  Culprit: Non-determinism Interleaving of parallel threads But required to harness parallelism  Sequential.
PLAN: Packet Language for Active Networks Michael Hicks joint work with Jon Moore, Pankaj Kakkar, Carl Gunter, and Scott Nettles Switchware Project Computer.
A Functional Language for Departmental Metacomputing Frederic Gava & Frederic Loulergue Universite Paris Val de Marne Laboratory of Algorithms, Complexity.
MojaveFS Lookup Vlad Dascalu, 351C3 – U.P. Bucharest Jason Hickey, Cristian Ţăpuş, David Noblet California Institute of Technology.
Operational Semantics Mooly Sagiv Tel Aviv University Textbook: Semantics with Applications Chapter.
The Development Process Compilation. Compilation - Dr. Craig A. Struble 2 Programming Process Problem Solving Phase We will spend significant time on.
Semantics of Minimally Synchronous Parallel ML Myrto Arapini, Frédéric Loulergue, Frédéric Gava and Frédéric Dabrowski LACL, Paris, France.
GPFS: A Shared-Disk File System for Large Computing Clusters Frank Schmuck & Roger Haskin IBM Almaden Research Center.
Operational Semantics Mooly Sagiv Reference: Semantics with Applications Chapter 2 H. Nielson and F. Nielson
Antigone Engine.
CSS534: Parallel Programming in Grid and Cloud
Information Science and Engineering
Parallel Software Development with Intel Threading Analysis Tools
GdX - Grid eXplorer parXXL: A Fine Grained Development Environment on Coarse Grained Architectures PARA 2006 – UMEǺ Jens Gustedt - Stéphane Vialle - Amelia.
Parallel Programming By J. H. Wang May 2, 2017.
Operation System Program 4
External Memory Hashing
Approches fonctionnelles de la programmation parallèle
CSE341: Programming Languages Lecture 12 Equivalence
Outline Announcements Lab2 Distributed File Systems 1/17/2019 COP5611.
Operating Systems Lecture 1.
Frédéric Gava Bulk-Synchronous Parallel ML Implementation of the
Frédéric Gava Bulk-Synchronous Parallel ML
Outline Review of Quiz #1 Distributed File Systems 4/20/2019 COP5611.
Outline Operating System Organization Operating System Examples
Ph.D. Thesis Numerical Solution of PDEs and Their Object-oriented Parallel Implementations Xing Cai October 26, 1998.
Drew Wyborski Programming Languages
Introduction and Overview
Object Oriented Design
Presentation transcript:

PAPP 2004 Gava1 Frédéric Gava Parallel I/O Bulk-Synchronous Parallel ML In

PAPP 2004 Gava2 Outline  Introduction The BSP model The BSML language  External Memory in BSML Cost model Problems and solutions  Conclusion and Future Work

PAPP 2004 Gava3 Introduction

PAPP 2004 Gava4 Bulk Synchronous Parallelism + Functional Programming = BSML Advantages of the BSP model: 1.Portability 2.Scalability, deadlock free 3.Simple cost model  Performance prediction Advantages of functional programming: 1.High level features (higher order functions, pattern-matching, concrete types, etc…) 2.Savety of the environment 3.Programs Proofs

PAPP 2004 Gava The Caraml Project  Funds by the ACI Grid program (French National Grid program) First phase: safety Second phase: multiprogramming Third phase: extensions for Grid computing  Tools and applications  Organized in 3 phases:

6 The BSP model T(s) = (max 0  i<p w i ) + h  g + L p-1 Proc.

PAPP 2004 Gava7 The BSML language  Library for the « Objective Caml » language (called BSMLlib)  Operations on a parallel data structure called vector:  par  Operations to access to the BSP parameters :  4 Operations on a parallel vectors

8 if vec at n then … else … = if at n then e1 else e2 n Global Conditional  …trueb p-1 …b1b1 b0b0 e1

PAPP 2004 Gava9 External Memory

Model We have: M = Size of the main memory D = Number of disks B = Size of one block in a disk G = Time to read/write in parallel B blocks (D*B data)

PAPP 2004 Gava11 Problem let bug = mkpar (fun pid -> if pid=0 then open_write « toto.dat » else NOTHING) in open_read « toto.dat » « local side effects » => modification of the global environment

12 Solutions  Two file systems local files => one files system on each process global files : o a shared files system o or replicate local files on a different directory)  New primitives for the differents files  Confluence of the semantics  Compositional cost model

PAPP 2004 Gava13 Example Scan_list : scan_list (+) Read/write values in blocks using tempory files

Benchmark

PAPP 2004 Gava15 Conclusion  BSML = BSP + ML  External Memory in BSML  New cost model  New Primitives  Confluence  Compositional cost model

16 Future Work  Add to BSML :  Parallel composition  Exceptions  Pattern – matching of parallel values  Polymorphic type system for BSML with I/O  Implementation of « big » applications

PAPP 2004 Gava17